为什么要使用无密码保护的私钥?

在云产品使用数字证书过程中需要用户提供私钥,如果用户的私钥是加载密码保护的,那么在云产品reload时将无法使用,导致证书解密失败,https失效,所以我们需要您提供无密码保护的私钥以及用此私钥生成的CSR文件。


在生成私钥时需要去掉密码保护,具体请参考:什么是公钥和私钥?


如果您的密钥已经有密码保护,可以通过如下方式去掉密码:

openssl rsa -in encryedprivate.key -out unencryed.key

encryedprivate.key是带密码保护的私钥,unencryed.key是去掉了密码的私钥,扩展名为key或者pem均可。


如果一个私钥文件是如下样式(用文本编辑器打开后) ,则说明是带有密码的:

PKCS#8 私钥加密格式

-----BEGIN ENCRYPTED PRIVATE KEY-----
BASE64私钥内容......
-----END ENCRYPTED PRIVATE KEY-----

Openssl ASN格式

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info:DES-EDE3-CBC,4D5D1AF13367D726
BASE64私钥内容......
-----END RSA PRIVATE KEY-----


用keytool生成的密钥都是带有密码的,可以通过两步转换成无密码的密钥,转换方式见:主流数字证书都有哪些格式?中的第一步和第四步。


相关文章