无法将 .CER 文件转换为 .PEM [重复]

Posted

技术标签:

【中文标题】无法将 .CER 文件转换为 .PEM [重复]【英文标题】:Unable to convert .CER file to .PEM [duplicate] 【发布时间】:2018-11-13 06:25:28 【问题描述】:

我从 ssl 购买中下载了文件,并从中获得了以下文件:

ServerCertificate.cer CACertificate-ROOT-2.cer CACertificate-INTERMEDIATE-1.cer PKCS7.p7b

一个客户端需要 2 个 crt.pem 文件。其中一个需要来自 ServerCertificate.cer,另一个来自应该提供的所谓 PFC 文件。这显然是证书和密钥的组合。

我尝试过使用: openssl x509 -inform der -in certificate.cer -out certificate.pem 转换第一个文件,但是我收到“无法加载证书”错误。

我做错了什么?

PS 请不要将我链接到https://www.sslshopper.com/ssl-converter.html,因为这也不起作用。

【问题讨论】:

扩展无关紧要。您的 *.cer 文件很可能已经是 PEM 格式,如果您想要文件名 *.pem 但不转换,您只需重命名这些文件。用一些编辑器查看内容:如果是二进制,则可能是 DER 编码,如果以 -----BEGIN CERTIFICATE----- 之类的开头,则为 PEM 编码。 【参考方案1】:

如果您所说的 PFC 实际上是指 PFX,那么您可以使用 openssl 将 p7b 转换为 pfx(PKCS#7 到 PKCS#12)。

ServerCertificate.cer 很可能是 PEM。关注Steffen's comment:

扩展无关紧要。您的 *.cer 文件可能已经是 PEM 格式,如果您想要文件名 *.pem 但不转换,您只需重命名这些文件。使用编辑器查看内容:如果是二进制,则可能是 DER 编码,如果以 -----BEGIN CERTIFICATE----- 之类的开头,则为 PEM 编码。

如果不是PEM,那么就是二进制,openssl可以转换成PEM。

通常您需要两个文件:私钥 (ServerCertificate.key) 和证书 (ServerCertificate.cer)。有时您还需要根证书和中间证书,具体取决于颁发证书的人(您没有说)。

您列出的文件都不是私钥。这是创建您发送给 ssl 供应商的 CSR(证书签名请求)的第一步。 PFX 可以选择在其文件格式中包含私钥。

如果您在 Windows (IIS) 上创建了 CSR,那么您不会向客户发送任何内容,而是在创建 CSR 的计算机上完成 CSR。然后就可以导出证书包了。

【讨论】:

以上是关于无法将 .CER 文件转换为 .PEM [重复]的主要内容,如果未能解决你的问题,请参考以下文章

证书类文件转换pem转换为cer

sh 将.cer转换为.pem

我在文本文件中有私钥。如何生成 .pem 文件或 .cer 文件

导出证书Cer文件为Pem格式的步骤

DER,CRT,CER,PEM证书以及如何转换它们

如何将 pem 转换为 pfx 文件?