我们存储使用加密的数据库备份PGP 命令行 9.7.0. 文件看起来像2009.bak.pgp
以下是用于备份这些文件的命令行:
pgp --encrypt F:\2009.bak --recipient [email protected] --encrypt-to-self --input-cleanup off --temp-dir F:\TEMP\ -v
所有这些备份都可以用这个命令恢复
pgp --decrypt F:\2009.bak.pgp --passphrase "18_characters_password" --temp-dir F:\Temp -v --output F:\2009.bak
除一个之外,其余均因以下错误而失败:
Decoding file F:\2009.bak.pgp... 32% (2.1GB) F:\2009.bak.pgp:decrypt (3090:operation failed, error decompressing data)
Wiping file F:\Temp\pgp-5532-0.tmp... 1%
我还尝试使用以下命令在 Linux 机器上解密此文件:
gpg -v <2009.bak.pgp> 2009.bak
但它也会失败并出现以下错误:
gpg: Fatal: zlib inflate problem: invalid block type
是否有可能恢复此文件?也许使用 HEX 编辑器或类似的东西?我们确实需要恢复此文件!
我非常感谢任何建议!
答案1
解压发生在解密之后,因此理论上可以让 GPG 写出压缩数据流。我不确定是否有现成的选项可以做到这一点——你可能不得不在源代码中进行修改。
一旦你得到了损坏的数据流,我不确定你是否会抱有很大的希望获取数据。我看到 zlib 输出全冲洗点可以部分恢复,但我不了解 PGP 中如何使用 zlib 压缩的技术细节。如果让我猜的话,我会说你运气不好。
如果这是我的数据,我会尝试破解 GPG 来写出压缩流,然后熟悉 zlib 的文档,看看我能解决什么问题。
听起来你在备份时没有验证你的备份是否可以恢复。至少,你正在学习一个宝贵的教训,即在实际恢复之前测试恢复需要他们。
答案2
联系一家数据恢复公司,我通过 www.ESSDataRecovery.com (1.800.237.4200) 取得了很大的成功,他们提供免费估价。如果您仍有备份文件所在的媒体,他们可能能够恢复备份文件或原始数据。他们以前可能处理过损坏的 PGP 文件。
另外,请与赛门铁克 (他们现在拥有 PGP) 取得联系,他们可能要求您购买最新的许可证/支持合同,然后才能至少帮助解密文件。