我正在尝试验证 SHA512 校验和Debian 10.5-amd-netinst.iso
是否正确在官方 Debian CD 映像网站上。
我遇到以下错误:
gpg --no-default-keyring --keyring Debian\ CD\ signing\ key\ \(6294BE9B\)\ –\ Public.asc --verify SHA512SUMS.sign
gpg: assuming signed data in 'SHA512SUMS'
gpg: Signature made Sat 1 Aug 22:01:33 2020 EDT
gpg: using RSA key DF9B9C49EAA9298432589D76DA87E80D6294BE9B
gpg: key DA87E80D6294BE9B: new key but contains no user ID - skipped
gpg: Total number processed: 1
gpg: w/o user IDs: 1
gpg: Can't check signature: No public key
浏览网络和其他帖子,一些人建议使用不同的密钥环服务器来检索密钥,因为其中一些服务器具有所有者批准系统,该系统将删除所有用户 ID,除非相应电子邮件地址的所有者允许发布它们。我已经尝试了十几个不同的密钥服务器,但似乎都没有解决问题。
关于问题可能是什么或者我如何解决它有什么想法吗?
答案1
GnuPG--keyring
参数不接受 ASCII-armored 文件作为输入。验证这一点的最简单方法是执行以下操作:
$ gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys DF9B9C49EAA9298432589D76DA87E80D6294BE9B
$ gpg --no-armor -o keyring.gpg --export DF9B9C49EAA9298432589D76DA87E80D6294BE9B
$ gpg --no-default-keyring --keyring keyring.gpg --keyserver-options none --verify SHA512SUMS.sign
gpgv
请注意,如果您希望将验证限制在一组特定的密钥环上,并且如果密钥丢失则不从密钥服务器获取密钥,那么您也可以使用 来验证数据。如果您正在考虑在程序中执行此操作并且需要的不仅仅是退出状态,--status-fd
那么您的朋友。