OpenSSL 1.0.1e 2013 年 2 月 11 日
生成自签名证书:
openssl req -x509 -newkey rsa:1024 -keyout key.pem -out cert.pem -days 365
在此过程中PEM 密码请求:
输入 PEM 密码:
验证 - 输入 PEM 密码:
成功完成后,有 2 个结果文件质子交换膜格式:
密钥.pem、证书.pem
私钥(密钥文件)位于PKCS#8格式,起始行为:
-----开始加密私钥-----
现在我尝试将证书以及相关的私钥组合成PKCS#12密钥库并使用密码。注意 - 据我所知,这应该有效地执行请求密码在读取访问期间,以及密码对于相应条目的私钥:
openssl pkcs12 -export -inkey key.pem -in cert.pem -out keystore.p12
执行后,我被要求回答以下问题:
输入 key.pem 的密码:
输入导出密码:
验证 - 输入导出密码:
然而,据我了解,密码应该保持完整私钥现在存储在密钥库.p12文件。下面是我尝试读取密钥库内容的方法:
openssl pkcs12 -节点-信息-在密钥库.p12
我得到的输出(仅与使用密码):
输入导入密码:
并以 PEM 格式列出证书以及私钥,而无需请求密码后者。这基本上就是问题所在。PEM 密码不再存在私钥。我做错了什么或者我该如何解决这个问题?谢谢。
答案1
没什么不对。PKCS12 就是这样工作的。PKCS12 是一种在令牌之间安全传输证书链和私钥的格式。私钥的保护/加密是通过您在被要求“输入导出密码”时输入的密码来完成的。与两次加密的密钥不同。
编辑:省略-nodes
选项。这将关闭私钥加密。