加密证书格式(DER、CRT、CER、PEM)
总得来说这些文件都与X.509证书和密钥文件有关,X.509证书,其核心是根据RFC 5280编码或数字签名的数字文档。实际上,术语X.509证书通常指的是IETF的PKIX证书和X.509 v3证书标准的CRL 文件,即如RFC 5280(通常称为PKIX for Public Key Infrastructure(X.509))中规定的。
从文件编码上分,只有两大类:
PEM格式:使用Base64 ASCII进行编码的纯文本格式
DER格式:二机制格式
而CRT, CER,KEY这几种证书和密钥文件,它们都有自己的schema,在存储为物理文件时,既可以是PEM格式,也可以DER格式。
CER:一般用于windows的证书文件格式
CRT:一般用于Linux的证书,包含公钥和主体信息
KEY:一般用于密钥,特别是私钥
1).DER 扩展名
.DER = DER扩展用于二进制DER编码证书。这些文件也可能承载CER或CRT扩展。 正确的说法是“我有一个DER编码的证书”不是“我有一个DER证书”。
2).PEM 扩展名
.PEM = PEM扩展用于不同类型的X.509v3文件,是以“ - BEGIN ...”前缀的ASCII(Base64)数据。
3).CRT 扩展名
.CRT = CRT扩展用于证书。 证书可以被编码为二进制DER或ASCII PEM。 CER和CRT扩展几乎是同义词。 最常见的于Unix 或类Unix系统。
4).CER扩展名
CER = .crt的替代形式(Microsoft Convention)您可以在微软系统环境下将.crt转换为.cer(.both DER编码的.cer,或base64 [PEM]编码的.cer)。
5).KEY 扩展名
.KEY = KEY扩展名用于公钥和私钥PKCS#8。 键可以被编码为二进制DER或ASCII PEM。
常规证书之间转化方式
CRT 转成 DER
openssl x509 -in cert.crt -outform der -out cert.der
KEY转成DER
opensslec-inSS.key-outSS_key.der-outformder
使用Linux命令xdd将二进制文件转换为16进制文件查看其der格式:
xxi-iSS.der