如果我使用 openssl 生成一个 p12 证书:
openssl pkcs12 -export -in myprivatecert.pem -nokeys -out mycert.p12
虽然我要求openssl不要导出私钥,但为什么windows在安装证书的时候还是需要私钥密码
我想我错过了什么。
最佳答案
密码用于 PKCS12 文件本身,而不用于私钥。您可以通过添加“-password pass:”来指定空白密码,如下所示:
$ openssl pkcs12 -password pass: -export -in myprivatecert.pem -nokeys -out mycert.p12
Windows 仍会提示您输入密码,但您可以将其留空,导入会正常进行。
如果你在 Windows 上导入的只是证书,没有 key ,你也可以像这样使用 DER 格式:
$ openssl x509 -in myprivatecert.pem -outform DER -out mycert.der
这样做的一个好处是,当您在 Windows 上双击此文件时,它会识别 der 扩展名,并且您可以在导入之前查看证书详细信息。此外,不会有密码提示。
关于Windows 在安装由 openssl 生成的 p12 key 时要求输入 p12 密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2452301/