安装openssl生成的p12密钥时,Windows会要求输入密码

Dav*_*ley 3 windows openssl pkcs#12 x509

如果我使用openssl生成p12证书:

openssl pkcs12 -export -in myprivatecert.pem -nokeys -out mycert.p12
Run Code Online (Sandbox Code Playgroud)

即使我要求openssl不导出私钥,为什么Windows在安装证书时仍然需要私钥密码.

我想我错过了什么.

Jim*_*ood 5

密码用于PKCS12文件本身,而不是私钥.您可以通过添加"-password pass:"来指定空白密码,如下所示:

$ openssl pkcs12 -password pass: -export -in myprivatecert.pem -nokeys -out mycert.p12
Run Code Online (Sandbox Code Playgroud)

Windows仍会提示您输入密码,但您可以将其保留为空,导入工作正常.

如果您在Windows上导入的所有内容都是证书而没有密钥,那么您也可以使用DER格式,如下所示:

$ openssl x509 -in myprivatecert.pem -outform DER -out mycert.der
Run Code Online (Sandbox Code Playgroud)

这样做的一个好处是,当您在Windows上双击此文件时,它会识别der扩展,您可以在导入之前查看证书详细信息.此外,将没有密码提示.