我正在尝试创建私钥并遇到问题。
当我使用ssh-keygen -t rsa -b 4096 -C "[email protected]"
,我得到以下格式的私钥。
-----BEGIN OPENSSH PRIVATE KEY-----
uTo43HGophPo5awKC8hoOz4KseENpgHDLxe5UX+amx8YrWvZCvsYRh4/wnwxijYx
...
-----END OPENSSH PRIVATE KEY-----
我正在尝试使用的应用程序不接受此操作。
我期望使用以下RSA格式的密钥。
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,25737CC2C70BFABADB1B4598BD8AB9E9
uTo43HGophPo5awKC8hoOz4KseENpgHDLxe5UX+amx8YrWvZCvsYRh4/wnwxijYx
...
-----END RSA PRIVATE KEY-----
如何创建正确的格式?这很奇怪,因为我遇到的所有其他Mac都会创建正确的格式,但我遇到问题的格式除外。
我在全新安装的Mac OS Mojave上
我最近遇到了同样的问题(升级到mojave 10.14.1后),这里有2个可能的解决方案。
[〜#〜]或[〜#〜]
-m PEM
放入您的ssh-keygen命令。例如,您可以运行ssh-keygen -m PEM -t rsa -b 4096 -C "[email protected]"
强制ssh-keygen以PEM
格式导出。看起来在当前mojave的ssh-keygen版本中,默认导出格式为RFC4716
如所提到 此处
可以使用ssh-keygen实用程序将具有OpenSSH私钥格式的新密钥转换为旧的PEM格式。
ssh-keygen -p -m PEM -f ~/.ssh/id_rsa
不必为了达到此结果而降级到较旧的OpenSSH。