安全

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

2020-11-09  本文已影响0人  DDDDAIPING
证书和编码

X.509证书的核心是根据RFC 5280进行编码或数字签名的数字文档。

实际上,术语X.509证书通常是指RFC 5280中规定的IETF的X.509 v3证书标准的PKIX证书和CRL配置文件,通常被称为公钥基础结构(X.509)。

X509文件扩展

我们首先要了解的是每种文件扩展名是什么。关于DER,PEM,CRT和CER是什么,存在很多困惑,并且许多人错误地表示它们都是可互换的。
尽管在某些情况下可以互换某些最佳做法,但最好的做法是确定证书的编码方式,然后正确地对其进行标记,正确标记的证书将更容易操作。

编码(也用作扩展名)
通用扩展

CRT和CER唯一可以安全互换的时间是编码类型可以相同时。 (即PEM编码的CRT = PEM编码的CER)

常见的OpenSSL证书操作

证书操作有四种基本类型。查看,转换,组合和导出

1. 证书查看

即使PEM编码的证书是ASCII,也不是人类可读的证书。以下是一些命令,可让您以易于阅读的形式输出证书的内容。

查看PEM编码的证书 使用具有证书扩展名的命令,将cert.xxx替换为证书名称

如果收到以下错误,则表示您正在尝试查看DER编码的证书,并且需要使用以下``查看DER编码的证书''中的命令

unable to load certificate
12626:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:647:Expecting: TRUSTED CERTIFICATE

查看DER编码的证书

如果收到以下错误,则表示您正在尝试使用用于DER编码证书的命令查看PEM编码证书。使用“上面的查看PEM编码的证书”中的命令

unable to load certificate
13978:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1306:
13978:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:380:Type=X509

2. 证书转换

PEM to DER

DER to PEM

3. 证书组合

在某些情况下,将多个X.509基础结构组合到一个文件中是有利的。一个常见的示例是将私钥和公钥都组合到同一证书中。
组合证书密钥和链的最简单方法是将每个密钥转换为PEM编码的证书,然后将每个文件的内容简单地复制到新文件中。这适合于组合文件以在Apache的应用程序中使用

4. 证书导出

一些证书将以组合形式出现。其中一个文件可以包含以下任意一项:证书,私钥,公钥,签名证书,证书颁发机构(CA)或颁发机构链。

[转载]

上一篇 下一篇

猜你喜欢

热点阅读