ssh-keygen .pub 格式如何处理 .pem 文件?

Jez*_*Jez 19 ssl encryption

ssh-keygen命令生成的.pub文件被描述为“公钥文件”,但它们与我通常看到的大多数“公钥文件”完全不同,它们采用 PEM 格式。该ssh-keygen风格的文件看起来是这样的:

ssh-rsa AAAAB3NzaC1... user@host
Run Code Online (Sandbox Code Playgroud)

...而 PEM 文件如下所示:

-----BEGIN CERTIFICATE-----
MIIGZjCCBU6gAwIBAgIDCIrNMA0GCSqGSIb3DQEBBQUAMIGMMQsw...
-----END CERTIFICATE-----
Run Code Online (Sandbox Code Playgroud)

这两种格式是否可以互换,或者它们是否执行根本不同的目的?我遇到这个问题是因为我想获取 PEM 编码的公钥文件的 RSA2 密钥指纹,但通常建议这样做的方法 ( ssh-keygen -l) 说我的 PEM 编码文件“不是公钥文件”。

顺便说一下,我知道这个答案,但它不包括由 .pub 生成的 .pub 文件ssh-keygen

Chr*_*s S 9

OpenSSH 密钥对不是 PEM 或任何其他 x500 标准。新版本的 OpenSSH 可以使用 X.509 PEM 密钥,但这是与 ssh-keygen 分离的另一个蜡球,必须明确配置。据我所知,没有任何 SSH 的主要实现使用与其他任何完全相同的密钥格式。

正如Zoredache 指出的那样,如果您使用的是 OpenSSH (deus iuvo vos) 以外的其他东西,那么它可能几乎是任何东西。