https://superuser.com/a/931814/说
下面是使用 GnuPG 包的
gpg
命令接收-recv-keys
带有指纹的密钥 ( ) 的示例命令7CE8FC69BE118222
:$ gpg --recv-keys 7CE8FC69BE118222
钥匙和指纹是不同的概念吗?
来自以下的联机帮助页apt-key
:
apt-key export <keyid>
将密钥输出
keyid
到标准输出。
key和它keyid
有不同的概念吗?
keyid
钥匙和指纹是同一个概念吗?
例如,我们可以首先检索密钥
gpg --keyserver keyserver.ubuntu.com --recv-key E298A3A825C0D65DFD57CBB651716619E084DAB9
然后将其apt-key
喂给
gpg -a --export E298A3A825C0D65DFD57CBB651716619E084DAB9 | sudo apt-key add -
是E298A3A825C0D65DFD57CBB651716619E084DAB9
钥匙、keyid
钥匙的指纹还是钥匙的指纹?
E298A3A825C0D65DFD57CBB651716619E084DAB9
为什么我替换为 后它仍然有效51716619E084DAB9
?
答案1
的答案GnuPG:密钥 ID 和指纹的表示解释密钥 ID 和指纹之间的区别。密钥 ID 和指纹是密钥(的一部分)散列,因此它们与密钥不同。
让我们以我的一个公钥为例;二进制格式的最小导出长度不到 4KiB,这就是整个密钥(不带签名)。这相当笨重,所以我的密钥是通过指纹来识别的:
7196 E081 94D5 3FCB FD15 D960 FA6C 71F9 A73D BE0B
这是我的密钥的可靠标识符。
密钥 ID 更短; “长”密钥 ID 是
0xFA6C71F9A73DBE0B
(指纹的最后八个字节),“短”密钥 ID 是
0xA73DBE0B
如今,这些都不应该用于密钥识别——可以创建具有匹配密钥 id 的密钥(这已经通过短密钥 id 进行了演示)。