我怎么能把pem转换成pfx文件?

时间:2016-09-19 17:01:57

标签: windows openssl certificate ssl-certificate pfx

This has me confused

Convert pfx to PEM:
openssl pkcs12 -in certificatename.pfx -out certificatename.pem

这会转储单个纯文本文件。

现在如何将此纯文本pem转换回pfx?

我看到转换为pfx的唯一命令需要在单独的文件中使用cer和私钥:

Convert CER and Private Key to PFX:    
openssl pkcs12 -export -in certificatename.cer -inkey privateKey.key -out certificatename.pfx -certfile  cacert.cer

2 个答案:

答案 0 :(得分:1)

虽然我同意这不是真正的编程并且可以说是offtopic,但关于(加密)密钥和证书的命令行工具(openssl,keytool,certutil等)的许多类似的Q显然被社区接受(upvoted) - 但是没有我和#39;我们直接看到了这一点。

openssl pkcs12 -export上的不同选项允许您提供不同文件中的部分,但这不是必需的。如果您在一个PEM文件中拥有私钥证书链,默认情况下由pkcs12 [not -export]输出,您可以从该文件中读取所有内容

 openssl pkcs12 -export -in file -out p12
 # or ONLY IF the privatekey is first in the file
 openssl pkcs12 -export <file -out p12

你甚至可以将这些作品组合在一起&#39;只要你把私钥放在第一位:

 cat privkey.pem mycert.pem chain.pem | openssl pkcs12 -export -out p12

答案 1 :(得分:1)

您可以使用以下命令将PEM(.pem,.crt,.cer)转换为PFX:

openssl pkcs12 -export -out **<your_new_file_name>**.pfx -inkey **<private_key_of_your_existing_certificate>**.key -in **<your_existing_certificate_file>**.crt

这对于上述所有文件都是非常通用的。