OpenPGP签名是否包含签名者的用户ID?

时间:2013-01-31 12:09:36

标签: bouncycastle openpgp

我有一个签名的公钥。我想查看此OpenPGP公钥中的所有签名。

我有签名列表,当我试图获取签名者的用户ID时,不会返回任何内容。

所以我怀疑OpenPGP签名是否包含签名者的用户ID。

我使用Thunderbird查看签名,但它也显示签名时找不到用户ID,当我导入与我签名的私钥对应的公钥时,它会显示签名者的用户ID。

我的结论是OpenPGP签名不包含签名者的用户ID。它们只包含密钥ID。如果您还拥有签名者的公钥,那么它会尝试从该公钥获取用户ID并向您显示。

注意:我正在使用充气城堡API。

1 个答案:

答案 0 :(得分:2)

签署另一个密钥(相应的密钥的UID)时,密钥中包含的所有内容都是密钥ID。

Thunderbird尝试将该密钥ID解析为密钥的默认UID,但这仅在公钥位于Thunderbird的密钥环中时才有效。

如果要在自己的软件中解析UID,则必须提取密钥的ID并查找匹配的公钥。

  

所以我的结论是Pgp Signature不包含签名者的用户ID。它只包含keyid。如果您还拥有签名者的公钥,那么它会尝试从该公钥获取用户ID并向您显示。

是的,这是唯一的办法。