“ssh-keygen”- 创建 ssh 密钥对,但默认跳过加密公钥。为什么?

“ssh-keygen”- 创建 ssh 密钥对,但默认跳过加密公钥。为什么?

例如 ssh-keygen -t rsa -b 4096 -C "test" -f test -N "1234567890" 创建以以下内容开头的公钥

-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNz....

代替

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,....

直到最近,我才能够毫无问题地创建加密密钥(如示例所示)。

我已经拥有之前生成的加密密钥,如果我使用ssh-add添加密钥,它会提示我输入密码并正确解密并添加它。

可能是什么问题呢?

答案1

它是加密的 - 只是没有显示在标题中。

可以使用 进行验证ssh-keygen -yf file。如果密钥已加密,系统将提示您输入密码。如果未加密,则在将公钥打印到标准输出之前不会提示您输入密码。

-y为 中的相应私钥创建公钥file。这里它仅用于验证密钥是否加密,并且不会file以任何方式使用私钥修改 。

相关内容