为什么 SSH 公钥(和私钥)的部分重叠?

Mor*_*gan 43 ssh sshd ssh-keygen

具体来说,为什么 ssh Ed25519 公钥的前 25 个字符总是相同的?

例如,如果我用 制作 5 个键ssh-keygen -o -a 100 -t ed25519,前 25 个字符总是AAAAC3NzaC1lZDI1NTE5AAAAI.

我认为这是某种序言或标题,但我很想知道实际答案。

Joh*_*éen 68

该字符串是 base64 编码的。解码后,它会生成字符串\0\0\0\vssh-ed25519\0。这标识了密钥的类型。在本例中为EdDSA密钥。

  • `\0\0\0\v` 部分是 11,写成 32 位数字,表示字符串 `ssh-ed25519` 的长度。 (18认同)