GPG 为什么我的可信密钥没有经过可信签名认证?

信息安全 密码学 pgp gnupg
2021-08-18 02:10:24

当我跑

gpg --verify ~/file.asc ~/file

我收到以下信息:

gpg: Signature made Tue 10 Dec 2016 05:10:10 AM EST using RSA key ID abcdefgh
gpg: Good signature from "Alias (signing key) <john@alias.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: (a fingerprint)
     Subkey fingerprint: (a fingerprint)

主指纹与gpg --fingerprints 在我的钥匙圈中的输出相匹配,我有:

pub   4096R/abcdefgh 2014-12-12 [expires: 2020-08-02]
      Key fingerprint = (A public finger print)
uid                  Alias (signing key) <john@alias.org>
sub   4096R/xcdertyu 2014-12-11 [expires: 2017-08-11]

我想用公钥指纹验证文件的真实性。注意信任级别为4级(完全信任)

我相信这是因为:

:~$ gpg --edit-key abcdefgh
gpg (GnuPG) 1.4.18; Copyright (C) 2014 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.


pub  4096R/abcdefgh  created: 2014-12-12  expires: 2020-08-02  usage: C   
                     trust: full          validity: unknown

应该有理由担心吗?感谢您在我了解有关加密的更多信息时的耐心等待!

1个回答

需要验证密钥。如果您相信某人的公钥确实属于该个人并且他们在您的密钥环中,您可以使用您的私钥来签署您的通信者的公钥并对其进行验证。

所以你是 Bob,你相信 Alice 的公钥确实属于 Alice,所以你用你的私钥签名。所以 Alice 的密钥对你是信任的。此外,Alice 信任的任何密钥,比如一个叫 Chris 的人也将在您的信任网络中。所以你也可以信任 Chris,因为 Alice 信任。因此 Chris 的密钥将通过可信签名进行认证。

现在,如果 Alice 相信您的密钥确实属于您,那么她可以通过使用她的私钥签名来验证您的公钥,因此您的密钥现在将包含在同一个信任网络中。

提供了验证您的通讯员公钥的程序:通过亲自检查他的密钥指纹然后用您的私钥签署他的公钥来验证通讯员的密钥。通过亲自检查指纹,您可以确定密钥确实属于他,并且由于您已经签署了他们的密钥,您可以确保在将来检测到任何篡改。不幸的是,当您必须验证大量密钥或与您不认识的人交流时,此过程很尴尬。

GnuPG 使用一种广为人知的信任网络机制解决了这个问题。在信任网络模型中,验证公钥的责任委托给您信任的人。例如,假设

Alice 已经签署了 Blake 的密钥,并且

Blake 已经签署了 Chloe 的密钥和 Dharma 的密钥。

如果 Alice 信任 Blake 能够正确验证他签署的密钥,那么 Alice 可以推断 Chloe 和 Dharma 的密钥是有效的,而无需亲自检查它们。她只是使用她经过验证的 Blake 公钥副本来检查 Blake 在 Chloe 和 Dharma 上的签名是否正确。一般来说,假设 Alice 完全信任每个人都能正确验证他们签名的密钥,那么任何由有效密钥签名的密钥也被认为是有效的。根是 Alice 的密钥,公理上假定它是有效的。信任密钥的所有者

在实践中,信任是主观的。例如,Blake 的密钥在 Alice 签名后对 Alice 有效,但她可能不相信 Blake 能够正确验证他签名的密钥。在那种情况下,她不会仅根据 Blake 的签名就认为 Chloe 和 Dharma 的密钥是有效的。信任网络模型通过与密钥环上的每个公钥相关联来说明您对密钥所有者的信任程度。

有四个信任级别

未知

对所有者在密钥签名中的判断一无所知。您最初不拥有的公钥环上的密钥具有此信任级别。

没有任何

众所周知,所有者对其他密钥进行了不正确的签名。

边缘

所有者了解密钥签名的含义,并在签名之前正确验证密钥。

满的

所有者对密钥签名非常了解,并且他在密钥上的签名与您自己的签名一样好。

密钥的信任级别是您单独分配给密钥的东西,它被视为私人信息。导出时未与密钥打包;它甚至与您的密钥环分开存储在单独的数据库中。GnuPG 密钥编辑器可用于调整您对密钥所有者的信任。

在这里阅读更多

还可以从 Server Fault 中查看这个 awnser