PGP TarBall File Signature Keys Verification fails with no valid OpenPGP data found

Red*_*ket 16 openpgp

This is the first time I figured I had better check the keys of the bind software I want to install. So I downloaded what I think is a OpenPGP key ...

$ wget ftp://ftp.isc.org/isc/bind9/9.9.4/bind-9.9.4.tar.gz.sha1.asc
Run Code Online (Sandbox Code Playgroud)

... then I tried to "import" this key like this ...

$ gpg --import bind-9.9.4.tar.gz.sha1.asc
Run Code Online (Sandbox Code Playgroud)

... but I get this error message:

gpg: no valid OpenPGP data found.
gpg: Total number processed: 0
Run Code Online (Sandbox Code Playgroud)

What am I doing wrong?

Thanks!

And*_*ice 8

命令语法是gpg bind-9.9.4.tar.gz.sha1.asc.当然,这会产生一个错误,即没有找到公钥.您可以从pgpkeys.mit.edu下载公钥.

本文将逐步说明该过程.


Mat*_*nge 7

有时,您会阅读以下单词:"使用以下命令[...]"使用PGP或MD5签名验证下载文件的完整性至关重要.

gpg --import KEYS
gpg --verify <software-bundle>.asc
Run Code Online (Sandbox Code Playgroud)

你知道你应该这样做.如果不阅读所有内容,您可能会想到:两个命令,一个用于附加签名文件,另一个用于验证下载的软件.它不是.

KEYS不是指下载的asc文件,而是KEYS指需要单独下载的名为的特殊文件.请参阅"下载密钥"步骤.您可能认为该链接未指向asc文件.它指向别的东西.需要这些KEYS来检查asc文件本身的完整性.第二个命令似乎执行两个检查.它验证作为参数给出的asc文件(使用导入的密钥),但如果您尝试在独立的asc文件上运行它,它会说:

gpg: no signed data
gpg: can't hash datafile: No data
Run Code Online (Sandbox Code Playgroud)

所以我认为它也验证了软件的完整性,除了.asc在同一目录中的拖尾之外,它应该是一个具有相同名称的文件.(但我现在没有找到证明这一点的证据.)