为什么gpg 的secret 和public key 有相同的keyid?

Mon*_*nke 2 pgp public-key-encryption gnupg

在我运行 Cygwin 的 Windows 机器上,当我运行时

gpg --list-keys --keyid-format LONG
gpg --list-secret-keys --keyid-format LONG
Run Code Online (Sandbox Code Playgroud)

pub 和 sec 密钥具有相同的值。sub 和 ssb 具有相同的值。这是预期的行为吗?

fuz*_*ngs 6

是的。这是预期的行为。

密钥 ID(实际上是密钥指纹的缩写)仅使用公钥材料计算,因此只能引用公钥。

密钥没有单独的“密钥 ID”,gpg 仅显示与密钥配对的“公钥 ID”。

看起来它可能会令人困惑。例如:如果你导入一个Secret Key,gpg 怎么知道它与哪个Public Key 配对?但这不是问题,因为无论何时导出密钥,导出的(随后导入的)“密钥包”也将始终包含公钥。