我刚刚在我的服务器上配置了 WKD,并且
gpg -v --auto-key-locate clear,wkd,nodefault --locate-key [email protected]
我的大多数 uid/key 组合都按预期工作,除了一个地址 ([email protected]) 链接到当前和撤销的密钥。上述命令的输出如下所示:
gpg: Note: RFC4880bis features are enabled.
gpg: using pgp trust model
gpg: pub rsa4096/68FD03F8C6AB1DE4 2016-06-15 Old User <[email protected]>
gpg: Note: signature key 68FD03F8C6AB1DE4 expired Mon Jun 14 18:12:44 2021 CEST
gpg: key 68FD03F8C6AB1DE4: "Old Nickname <[email protected]>" not changed
gpg: pub ed25519/7CD4656792B3A1F9 2022-06-06 Old User <[email protected]>
gpg: key 7CD4656792B3A1F9: "Old User <[email protected]>" not changed
gpg: Total number processed: 2
gpg: unchanged: 2
gpg: auto-key-locate found fingerprint xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
gpg: Note: signature key 68FD03F8C6AB1DE4 expired Mon Jun 14 18:12:44 2021 CEST
gpg: automatically retrieved '[email protected]' via WKD
pub rsa4096 2016-06-15 [SC] [revoked: 2022-06-07]
51585E1318770F501D3CBDE968FD03F8C6AB1DE4
uid [ revoked] Old Nickname <[email protected]>
uid [ revoked] Old User <[email protected]>
uid [ revoked] Old Nickname2 <[email protected]>
sub rsa4096 2016-06-15 [E] [revoked: 2022-06-07]
即使 [email protected] 是新密钥的主要 uid,gpg 也会显示此密钥的另一个 uid ([email protected])。这很奇怪,但无关紧要。但随后 gpg 继续选择可通过 WKD 以某种方式获得的已撤销密钥。
https://metacode.biz/openpgp/web-key-directory上的 WKD 测试提供了类似的结果,但它显示了当前密钥和撤销密钥的指纹。
两个问题:
- 哪个 WKD 服务器托管我已撤销的密钥,使其优先于我在 domain.com 上的 WKD 服务器?
- 为什么 gpg 会选择过期和撤销的密钥而不是有效密钥?
谢谢,扬
问题已解决:我按照 https://shibumi.dev/posts/how-to-setup-your-own-wkd-server/的说明操作,无意中导出了地址的所有密钥(gpg --no-armor -- export $uid) 而不是指定密钥 id。
现在我只导出/发布了有效密钥(gpg --no-armor --export $keyid),一切都很好。