HTTPS – SSL证书格式

SSL证书本质上是一个X.509证书。X.509是定义证书数据结构的标准,它定义了应该包含在SSL证书中的数据字段。X.509使用一种称为抽象语法 (ASN.1)的正式语言来表示证书的数据结构。

X.509标准下,有各种编码格式的证书,如PEM、DER、PKCS#7和PKCS#12。PEM和PKCS#7格式使用Base64 ASCII编码,而DER和PKCS#12使用二进制编码。根据使用的格式和编码,证书文件具有不同的扩展名。

下图展示了X.509证书的编码格式和文件扩展名。

SSL证书格式

PEM格式

大多数ca(证书颁发机构)提供PEM格式的证书,保存在Base64 ASCII编码的文件中。证书文件类型可以是.pem.crt.cer.key。pem文件可以在单个文件中包含服务器证书、中间证书和私钥。服务器证书和中间证书也可以放在单独的.crt.cer文件中,私钥可以放在.key文件中。

PEM文件使用ASCII编码,所以你可以使用任何文本编辑器打开它们。PEM文件中的每个证书都包含在---- BEGIN CERTIFICATE--------END CERTIFICATE---- 语句之间。私钥包含在---- BEGIN RSA PRIVATE KEY----------END RSA PRIVATE KEY-----语句之间。CSR包含在-----BEGIN CERTIFICATE REQUEST----------END CERTIFICATE REQUEST-----语句之间。

PKCS#7格式

PKCS#7格式是一种“加密消息语法标准”。PKCS#7证书使用Base64 ASCII编码,文件扩展名为.p7b.p7c,这种格式只能存储证书,不能存储私钥。P7B证书包含在-----BEGIN PKCS7----------END PKCS7-----语句之间。

DER格式

DER证书采用二进制格式,文件扩展名为.DER.cer。这些证书主要用于java web服务器。

PKCS#12格式

PKCS#12证书采用二进制格式,文件扩展名为.pfx.p12

PKCS#12可以将服务器证书、中间证书和私钥存储在一个具有密码保护的.pfx文件中,这种证书主要用于Windows平台。



浙ICP备17015664号 浙公网安备 33011002012336号 联系我们 网站地图  
@2019 qikegu.com 版权所有,禁止转载