我们的一个流程已经运行了近 3 年,直到上周才出现问题。
我们尝试生成一个加密文件并且成功了,但是在解密时却出现了这个错误:
无法解密此消息,因为您的密钥环不包含与上述任何公钥相对应的可用私钥。
我该如何解决这个问题?
此外,出现此错误后,我们现在尝试为加密文件添加一些完整性检查,那么,我可以用 pgp 的 .exe 文件来执行任何操作吗?或者我还应该对我的代码做些什么才能使这个东西正常工作?
答案1
OpenPGP 使用公钥加密。这意味着您正在分发您的公钥(因此称为公共密钥)以供其他人加密针对您的信息,并且只有私钥持有者(此处:您)可以解密。
错误信息很清楚:您使用公钥加密了文件你还没有私钥在您的密钥环中。您需要导入它;如果您没有(再也没有)它,您就无法解密该文件。
如果你使用的是 Symantec PGP,你可以使用
pgp --import <keyname.asc>
对于 GnuPG,只需将 替换pgp
为gpg
。
您的加密文件可能没问题,PGP 可以读取它,否则它会显示另一条错误消息。