【问题标题】:How to compare a primary key fingerprint after verifying a signature with gpg?用gpg验证签名后如何比较主键指纹?
【发布时间】:2014-12-03 08:16:28
【问题描述】:

我是密码学的新手,我对主键指纹有疑问:

我已经下载了 Apache Maven,正如他们在下载页面中所说,我已经使用 gpg 验证了公钥的签名:

user$ gpg --verify apache-maven-3.2.3-bin.tar.gz.asc apache-maven-3.2.3-bin.tar.gz
gpg: Signature made Tue Aug 12 00:59:35 2014 MSK using DSA key ID BB617866
gpg: Good signature from "Someone <email@maven.org>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: FB11 D4BB 7B24 4678 337A  AD8B C7BF 26D0 BB61 7866

现在,我从http://www.apache.org/dev/release-signing#fingerprint 读到,主键指纹是键的摘要,更易于阅读和比较,但我的问题是:

我应该如何比较它?我的意思是,我应该在哪里找到我应该比较指纹“FB11 D4BB 7B24 4678 337A AD8B C7BF 26D0 BB61 7866”的对应对象?

【问题讨论】:

    标签: maven cryptography gnupg


    【解决方案1】:

    public keys of the Maven developers 链接在 download page 之上。

    它只包含简短的 ID,不足以验证密钥,但可以帮助您查找使用了哪个密钥。为此,请删除此密钥(它可能已在验证签名期间从密钥服务器获取):

    gpg --delete-keys [keyid]
    

    现在准备导入此密钥,方法是将与上面给出的密钥 ID 匹配的公钥块复制到您选择的文件中。该文件随后应包含:

    -----BEGIN PGP PUBLIC KEY BLOCK-----
    [snip]
    -----END PGP PUBLIC KEY BLOCK-----
    

    现在使用gpg --import [file] 导入。现在运行gpg --fingerprint [keyid],它应该打印在签名验证输出中给出的相同指纹。

    【讨论】:

    • 对不起,[keyid]不是指纹FB11 D4BB 7B24 4678 337A AD8B C7BF 26D0 BB61 7866吧?我应该放什么?
    • 您可以使用整个指纹,但要删除空格。否则,(短)密钥 ID 也会打印在您问题的输出中,并且等于指纹的最后 8 位数字。
    • 谢谢!两种方法都有效,只是另一个问题,我应该如何解释输出?
    • 好吧,如果您相信网页提供了正确的密钥,那么您可以确定不仅获取的文件与网页上提供的相同,而且是由密钥持有者颁发的。更好的是在 OpenPGP 信任网络中找到一条从您到密钥所有者的信任路径,这甚至可以让您验证 颁发者是谁。但这是另一回事了。
    猜你喜欢
    • 2015-10-06
    • 2018-02-27
    • 1970-01-01
    • 2020-02-12
    • 1970-01-01
    • 2010-11-08
    • 1970-01-01
    • 2019-01-03
    • 1970-01-01
    相关资源
    最近更新 更多