GPG无法检查签名


10

我试图从我的裸服务器上的oneiric重新编译并重建libevent2源,但gpg出现一个小错误,无法检查签名

# dpkg-source -x libevent_2.0.12-stable-1.dsc
gpgv: Signature made Fri Jun 17 07:12:50 2011 PDT using DSA key ID 7ADF9466
gpgv: Can't check signature: public key not found
dpkg-source: warning: failed to verify signature on ./libevent_2.0.12-stable-1.dsc

任何想法如何解决此警告?

Answers:


10

我相信常规的解决方案是安装Debian Developers软件包的GnuPG密钥

sudo apt-get install debian-keyring

是的,@ enzotib和@Flint在此处建议的gpg命令在Ubuntu 14.04上对我不起作用,至少是在运行时启用验证apt-get source。但是debian-keyring按照@ændrük的建议安装软件包是可行的。
fjarlq,2014年

10

首先,您应该按照@enzotib的指示将密钥导入本地密钥环:

gpg --keyserver keyserver.ubuntu.com --recv-keys 7ADF9466

然后将密钥导出到本地的受信任密钥以使其受信任:

gpg --no-default-keyring -a --export 7ADF9466 | gpg --no-default-keyring --keyring ~/.gnupg/trustedkeys.gpg --import -

这可以在~/.gnupg/trustedkeys.gpg不存在的Ubuntu 16.04中使用。
斯特凡纳·古里科

6

您应该使用以下命令将密钥导入本地密钥环:

gpg --keyserver keyserver.ubuntu.com --recv-keys 7ADF9466

然后,重试该命令。


1
谢谢,但是它仍然无法验证签名
Flint

1
@Flint:您以root身份运行,因此此命令也应以root身份运行,以转到root密钥环。你这样做了吗?
enzotib

5
有官方资料证明这种方法是安全的吗?7ADF9466如果密钥环包中不存在正确的签名密钥,我怎么知道呢?是什么阻止了中间人提供dsc使用不同密钥签名的文件(甚至可能是具有相同32位哈希的另一个密钥)。
kasperd 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.