将 .cer 转换为 .pem 错误

将 .cer 转换为 .pem 错误

我意识到有多个关于将 .cer 转换为 .pem 的帖子,但实际上没有一个提到有关转换的问题。我有一个名为 Cert.cer(我知道是原始的)的证书,我正在尝试使用以下命令将其转换为 Cert_PEM.pem:

openssl x509 -inform der -in Cert.cer -out Cert_PEM.pem

在这样做时我遇到了这个错误:

13892:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1316:
13892:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:380:Type=X509

我对证书、SSL 和加密有一些了解,但这超出了当前的范围。

编辑:以下是该证书的前 4 行:

-----BEGIN CERTIFICATE-----
MIIC6DCCAdACAQMwDQYJKoZIhvcNAQEFBQAwgYQxCzAJBgNVBAYTAlVTMQ4wDAYD
VQQIEwVUZXhhczEPMA0GA1UEBxMGQXVzdGluMS4wLAYDVQQLEyVNb3RpdmUgU2Vy
dmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MQ8wDQYDVQQKEwZNb3RpdmUxEzAR

任何帮助都将非常有帮助!

答案1

你得到的是 PEM 编码的 .cer 文件。转换可能很简单更改文件扩展名SSL 文件格式多种多样而 der-encoding 实际上并不那么常见。

一般经验法则是:

  • 如果看起来像 base64 编码,则它可能是 PEM 编码。
  • 如果它看起来像是二进制文件,那么它可能是 DER 编码的。

相关内容