文档首页/ 云证书管理服务 CCM/ 常见问题/ 证书咨询/ 为什么要使用无密码保护的私钥?
更新时间:2022-10-28 GMT+08:00

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

因为私钥是加载密码保护的,且华为云其他云产品在使用数字证书的过程中需要使用您提供的私钥,所以如果您的私钥是加载密码保护的,那么其它云产品在加载您的数字证书时将无法使用您的私钥,可能导致数字证书解密失败,HTTPS服务失效。因此,需要您提供无密码保护的私钥。

在您生成私钥时,请去掉密码保护后再进行上传。

如何去除私钥密码保护

如果您的密钥已经加载密码保护,可以通过OpenSSL工具运行以下命令去掉密码保护:

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

其中,“encryedprivate.key”是带密码保护的私钥文件;“unencryed.key”是去掉了密码保护的私钥文件,扩展名为key或pem均可。

如果您的证书使用的是除密码保护的私钥,当需要将该证书部署给CDN时,需要检查证书文件的格式。因为CDN要求证书文件必须是RSA加密的,即私钥是以“-----BEGIN RSA PRIVATE KEY-----”开头并以“-----END RSA PRIVATE KEY-----”结尾的格式。如果证书文件不是此格式,则需要使用工具转换证书的格式。具体转换方式,请参考主流数字证书有哪些格式?

什么样的私钥是有密码保护的

使用文本编辑器打开您的私钥文件,如果私钥文件是如下样式,则说明您的私钥是已加载密码保护的:

  • 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工具生成的密钥都是带有密码保护的,您可以转换成无密码的密钥文件。关于具体转换方式,请参考主流数字证书有哪些格式?