我有一个受信任的证书链,一个由该链发布的证书以及该证书的私钥文件。
我要为此创建一个P12 / PFX,因此可以将其作为Windows商店中的客户端证书:
OpenSsl Pkcs12 -export -nokeys
-certfile mytrustedCertifcates.pem^
-inkey myPrivateKey.Key^
-in myCertificate.crt^
-out myCertificate.P12
,,结果文件包含所有trustedCertificates。如果我在Windows证书存储区中导入了P12,则我将导入完整的证书链,尽管它们已在证书存储区中。
我还尝试了以下选项:(来自OpenSsl command line utilities,也在-help中)
-nocerts不输出证书。
-clcerts仅输出客户端证书。
las,P12仍然包含完整的证书链,并且导入P12会再次导入完整的证书链。
最佳答案
BartonJs在评论中给出了答案(谢谢BartonJs!):
忽略--certfile参数:
OpenSsl Pkcs12 -export -nokeys
-name some friendly name
-inkey myPrivateKey.Key^
-in myCertificate.crt^
-out myCertificate.P12
nokeys:忽略PEM密码
name:友好名称,将出现在winstore的列友好名称中
inkey和in是带有其私钥的输入证书
out是要生成的文件的名称。
将其导入到windstore中(命令:certlm.msc)后,它正确地说:
发给:
由...发出:
截止日期
目的
友好名称:
关于ssl - OpenSsl:如何创建不包含CA文件的PFX/P12?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55026867/