PGP TarBall文件签名密钥验证失败,没有找到有效的OpenPGP数据。

16

这是我第一次意识到我最好检查我想要安装的绑定软件的密钥。因此,我下载了我认为是一个OpenPGP密钥...

$ wget ftp://ftp.isc.org/isc/bind9/9.9.4/bind-9.9.4.tar.gz.sha1.asc

...然后我尝试像这样“导入”这个密钥...

$ gpg --import bind-9.9.4.tar.gz.sha1.asc

......但是我收到了这个错误信息:

gpg: no valid OpenPGP data found.
gpg: Total number processed: 0

我做错了什么?

谢谢!

2个回答

8
命令语法为gpg bind-9.9.4.tar.gz.sha1.asc。当然,这会出现找不到公钥的错误。您可以从pgpkeys.mit.edu下载公钥。 本文逐步解释了该过程。

7
有时候,你会看到这样的文字:“使用以下命令验证已下载文件的完整性,使用PGP或MD5签名是必要的[…]”。read
gpg --import KEYS
gpg --verify <software-bundle>.asc

你知道自己应该做什么。但是如果没有阅读全部内容,你可能会认为:两个命令,一个用于附加签名文件,另一个用于验证已下载的软件。但事实并非如此。KEYS不是指已下载的asc文件,而是指您需要单独下载的一个名为KEYS的特殊文件。请参见步骤“下载KEYS”。链接并不指向您可能认为的asc文件,它指向其他内容。这些KEYS用于检查asc文件本身的完整性。第二个命令似乎同时执行了这两个检查。它使用导入的密钥验证给定的asc文件参数,但如果您尝试在独立的asc文件上运行它,则会显示:
gpg: no signed data
gpg: can't hash datafile: No data

所以我认为它也验证了软件的完整性,期望在相同目录下有一个与文件名相同但尾部不同的.asc文件。(但是到目前为止我没有找到证明这是真实的。)

ASC文件必须与要验证的文件同名,除了后缀名.asc(对我来说,如果名称不同,则无法工作)。 - jth_92

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接