将pfx格式转换为p12

时间:2011-07-25 16:07:54

标签: certificate ssl-certificate

我需要将.pfx格式证书(从windows mmc)导出到.p12以在另一个应用程序中使用。我找不到办法做到这一点。有谁能建议一种方法?

5 个答案:

答案 0 :(得分:162)

.p12.pfx都是PKCS#12文件。我错过了什么吗?

您是否尝试重命名导出的.pfx文件以获得.p12分机?

答案 1 :(得分:7)

我在使用openconnect的.pfx文件时遇到了麻烦。重命名并没有解决问题。我使用keytool将它转换为.p12并且它有效。

SetValue('window.location', "")

在我的情况下,新文件的密码(new.p12)必须与.pfx文件的密码相同。

答案 2 :(得分:2)

这更像是jglouie回应的延续。

如果您使用openssl将PKCS#12证书转换为公共/私有PEM密钥,则无需重命名该文件。假设该文件名为cert.pfx,以下三个命令将创建一个公共pem密钥和一个加密的私有密钥:

openssl pkcs12 -in cert.pfx     -out cert.pem     -nodes -nokeys
openssl pkcs12 -in cert.pfx     -out cert_key.pem -nodes -nocerts
openssl rsa    -in cert_key.pem -out cert_key.pem -des3

前两个命令可能会提示输入密码。这将是随PKCS#12文件提供的密码。

第三个命令将允许您指定证书的加密密码。这是您在使用证书时输入的内容。

答案 3 :(得分:2)

如果您正在寻找使用UI的快速手动过程。我总是使用Mozilla Firefox将PFX转换为P12。首先将证书导入Firefox浏览器(“选项”>“隐私和安全性”>“查看证书...”>“导入...”)。安装后,通过从证书管理器中选择证书名称执行导出以创建P12文件,然后单击“备份...”,然后输入文件名,然后输入密码。

答案 4 :(得分:0)

运行此命令将.p12文件更改为openssl pkcs12 -export -out server.p12 -inkey server.key -in server.crt

server.key

其中server.cert是服务器密钥,{{1}}是CA颁发证书或自签名证书文件。