如何快速识别SSH私钥文件格式?

时间:2019-12-24 13:27:43

标签: ssh private-key pem pkcs#1 pkcs#8

今天由Remote Desktop Manager,触发,其SSH密钥生成器提供了以 OpenSSH 格式保存私钥,但随后将其存储为 PKCS#1 / OpenSSL 格式,同时为所提供的两种格式使用相同的随机*.pri文件扩展名。

save as

我只是想连接到一个AWS EC2实例,但是WinSCP,FileZilla和PuTTY都使用不同的私钥格式。

随时提供更多见解,这只是我目前的不完全了解。

1 个答案:

答案 0 :(得分:0)

文件扩展名通常是随机的,或者不足以识别格式。

广泛类别:

  • PEM个文件,其中包含ASN.1个数据,并用DER编码
  • 具有以其他某种格式编码的数据的PEM文件
  • 非PEM格式

PEM文件在-----BEGIN----------END-----“标签”之间包裹Base64。它们也通常用于同时包含私钥和SSL证书(链)。使用online ASN.1 decoder检查PEM文件的Base64内容。

PEM文件

PKCS#1 / OpenSSL :id_rsa,*。pem,*。der,*。key,...

-----BEGIN RSA PRIVATE KEY-----

PuTTY密钥生成器将其称为“ OpenSSH SSH-2私钥(旧PEM格式)”(?)。根据{{​​3}},为“ SSLeay”或“传统”格式。 Base64以MII...开头。 this answerASN.1 content

More info :* .pem,*。der,*。key,...

-----BEGIN PRIVATE KEY----------BEGIN ENCRYPTED PRIVATE KEY-----

未加密版本的Base64以MII...IBADAN开头。 ASN.1内容,基本上是PKCS#1加上版本信息。 PKCS#8

More info :*。??? (不知道典型的文件扩展名是什么)

-----BEGIN OPENSSH PRIVATE KEY-----

PEM在外部,但非ASN.1内容。显然是OpenSSH

非PEM文件

somewhat undocumented format :* .ppk

内容还包含易于识别的单词,将其标识为腻子专用密钥。

PuTTY Private Key :* .p12,*。pfx

PFX是一种Microsoft格式,后来以清理形式作为PKCS#12发布。内容是二进制的,不仅可以包含私钥,还可以包含SSL证书(链)。