DER、CRT、CER、PEM格式的证书及转换

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

DER、CRT、CER、PEM格式的证书及转换
⼀、证书和编码
X.509证书,其核⼼是根据RFC 5280编码或数字签名的数字⽂档。

实际上,术语X.509证书通常指的是IETF的PKIX证书和X.509 v3证书标准的CRL ⽂件,即如RFC 5280(通常称为PKIX for Public Key Infrastructure(X.509))中规定的。

⼆、X509⽂件扩展
我们⾸先要了解的是每种类型的⽂件扩展名。

很多⼈不清楚DER,PEM,CRT和CER结尾的⽂件是什么,更有甚者错误地说是可以互换的。

在某些情况下,某些可以互换,最佳做法是识别证书的编码⽅式,然后正确标记。

正确标签的证书将更容易操纵
三、编码--决定扩展名⽅式
1).DER 扩展名
.DER = DER扩展⽤于⼆进制DER编码证书。

这些⽂件也可能承载CER或CRT扩展。

正确的说法是“我有⼀个DER编码的证书”不是“我有⼀个DER证书”。

2).PEM 扩展名
.PEM = PEM扩展⽤于不同类型的X.509v3⽂件,是以“ - BEGIN ...”前缀的ASCII(Base64)数据。

3)常见的扩展
3.1).CRT 扩展名
.CRT = CRT扩展⽤于证书。

证书可以被编码为⼆进制DER或ASCII PEM。

CER和CRT扩展⼏乎是同义
词。

最常见的于Unix 或类Unix系统。

3.2).CER扩展名
CER = .crt的替代形式(Microsoft Convention)您可以在微软系统环境下将.crt转换为.cer(.both DER编
码的.cer,或base64 [PEM]编码的.cer)。

.cer⽂件扩展名也被IE识别为⼀个运⾏MS cryptoAPI命令的命令(特别是rundll32.exe
cryptext.dll,CryptExtOpenCER),该命令显⽰⽤于导⼊和/或查看证书内容的对话框。

3.3).KEY 扩展名
.KEY = KEY扩展名⽤于公钥和私钥PKCS#8。

键可以被编码为⼆进制DER或ASCII PEM。

四、常见的OpenSSL证书操作
证书操作有四种基本类型。

查看,转换,组合和提取。

1)查看证书
即使PEM编码的证书是ASCII,它们是不可读的。

这⾥有⼀些命令可以让你以可读的形式输出证书的内容;
1.1)查看PEM编码证书
openssl x509 -in cert.pem -text –noout
openssl x509 -in cert.cer -text –noout
openssl x509 -in cert.crt -text –noout
如果您遇到这个错误,这意味着您正在尝试查看DER编码的证书,并需要使⽤“查看DER编码证书”中的命令。

unable to load certificate
12626:error:0906D06C:PEMroutines:PEM_read_bio:no start line:pem_lib.c:647:Expecting:
TRUSTEDCERTIFICATE
1.2)查看DER编码证书
openssl x509 -in certificate.der -inform der -text -noout
如果您遇到以下错误,则表⽰您尝试使⽤DER编码证书的命令查看PEM编码证书。

在“查看PEM编码的证书”中使⽤命令
unable to load certificate
13978:error:0D0680A8:asn1 encodingroutines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1306:
13978:error:0D07803A:asn1 encodingroutines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:380:Type=X509 2)转换证书格式
转换可以将⼀种类型的编码证书存⼊另⼀种。

(即PEM到DER转换)
PEM到DER
openssl x509 -in cert.crt -outform der-out cert.der
DER到PEM
openssl x509 -in cert.crt -inform der -outform pem -out cert.pem
3)组合证书
在某些情况下,将多个X.509基础设施组合到单个⽂件中是有利的。

⼀个常见的例⼦是将私钥和公钥两者结合到相同的证书中。

组合密钥和链的最简单的⽅法是将每个⽂件转换为PEM编码的证书,然后将每个⽂件的内容简单地复制到⼀个新⽂件中。

这适⽤于组合⽂件以在Apache中使⽤的应⽤程序。

4)证书提取
⼀些证书将以组合形式出现。

⼀个⽂件可以包含以下任何⼀个:证书,私钥,公钥,签名证书,证书颁发机构(CA)和/或权限链。

五、原⽂链接。

相关文档
最新文档