尽管我自己签署了密钥,但有效性未知

尽管我自己签署了密钥,但有效性未知

该密钥目前的有效性未知:

$ gpg --edit-key some.user

pub  rsa4096/FAC6C35BDFF9359A
     created: 2020-03-01  expires: 2022-03-01  usage: SC  
     trust: full          validity: unknown
sub  rsa4096/CDA6BEA851FFCE2E
     created: 2020-03-01  expires: 2022-03-01  usage: E   
[ unknown] (1). Some User <[email protected]>

根据签名计算有效性。 “至少一个完全信任的密钥必须签署另一个密钥才能使密钥有效。”由于我最终信任自己的密钥,这意味着如果我签署某个用户的密钥,它也应该变得有效。

我已经签署了该用户的密钥:

$ gpg --list-signatures some.user
pub   rsa4096 2020-03-01 [SC] [expires: 2022-03-01]
      E9E7BDF5FB135FF9858ABAAAB007FDB2
uid           [ unknown] Some User <[email protected]>
sig 3        FAC6C35BDFF9359A 2020-03-01  Some User <[email protected]>
sig          12CA169A2B5A5CFC 2020-03-15  Luc <[email protected]>
sig 3        FAC6C35BDFF9359A 2021-03-01  Some User <[email protected]>
sub   rsa4096 2020-03-01 [E] [expires: 2022-03-01]
sig          FAC6C35BDFF9359A 2020-03-01  Some User <[email protected]>
sig          FAC6C35BDFF9359A 2021-03-01  Some User <[email protected]>

密钥的过期时间最近通过命令(由某些用户自己)延长了gpg --edit-keyexpire但我无法重新签名(而且我无法判断这是否有必要,没有资源对此有任何说明,所以我猜不是):

$ gpg --edit-key some.user
gpg> sign
"Some User <[email protected]>" was already signed by key 12CA169A2B5A5CFC
Nothing to sign with key 12CA169A2B5A5CFC

检查签名,我没有发现任何异常:

$ gpg --check-sigs some.user
pub   rsa4096 2020-03-01 [SC] [expires: 2022-03-01]
      E9E7BDF5FB135FF9858ABAAAB007FDB2
uid           [ unknown] Some User <[email protected]>
sig!3        FAC6C35BDFF9359A 2020-03-01  Some User <[email protected]>
sig!         12CA169A2B5A5CFC 2020-03-03  Luc <[email protected]>
sig!3        FAC6C35BDFF9359A 2021-03-01  Some User <[email protected]>
sub   rsa4096 2020-03-01 [E] [expires: 2022-03-01]
sig!         FAC6C35BDFF9359A 2020-03-01  Some User <[email protected]>
sig!         FAC6C35BDFF9359A 2021-03-01  Some User <[email protected]>

gpg: 5 good signatures

为什么该密钥无效?
我是否需要以某种方式重新签名,也许首先撤销我的旧签名?

答案1

有效性未知意味着 GnuPG 尚未计算该密钥的信任网,因此它不知道该密钥是否有效。对于新添加的密钥总是如此,但对于更新的密钥也可能发生这种情况(因为签名的更改可能会影响您与密钥的连接)。即使在微不足道的情况下,信任重新计算也不一定会自动发生,因为它们可能很昂贵并且可能需要用户输入。

更新信任数据库应该可以解决这个问题;您可以运行最小更新

gpg --check-trustdb

或更完整的更新(可能涉及回答有关您对密钥所有者的信任程度的问题)

gpg --update-trustdb

(文档中说--check-trustdb,“通常,GnuPG 会计算何时需要此操作,并自动执行此操作,除非--no-auto-check-trustdb已设置。”但我不知道计算是什么。)

相关内容