ssl证书格式有哪些
SSL证书是数字证书的一种,因为配置在服务器上,也称为SSL服务器证书。
SSL 证书遵守 SSL协议,由受信任的数字证书颁发机构CA,在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。
SSL证书通过在客户端浏览器和Web服务器之间建立一条SSL安全通道.
该安全协议主要用来提供对用户和服务器的认证;对传送的数据进行加密和隐藏;确保数据在传送中不被改变,即数据的完整性,现已成为该领域中全球化的标准。
由于SSL技术已建立到所有主要的浏览器和WEB服务器程序中,因此,仅需安装服务器证书就可以激活该功能,
SSL证书编码格式与后缀
编码格式
按照标准X.509定义,有PEM 和 DER格式
DER: 二进制编码的证书(相当于PEM格式的二进制版本),证书后缀有: .DER .CER .CRT,主要用于Java、Windows。
PEM: Base64编码的证书,是将二进制版本Base64编码后,证书后缀有: .PEM .CER .CRT,主要用于Apache、Nginx。
文件后缀
按照标准PKCS定义,有PKCS#7 、PKCS#12、Tomcat专用的JKS
PKCS#12:PKCS(Public-Key Cryptography Standards)标准中的PKCS#12(Personal Information Exchange Syntax Standard)。它包含私钥,证书链,用户证书,并设置了密码。证书后缀有: .P12 .PFX,主要用于Windows Server。
PKCS#7: PKCS(Public-Key Cryptography Standards)标准中的PKCS#7(Cryptographic Message Syntax Standard)。它不包含私钥,并将证书链和用户证书单独存放。证书后缀有: .P7B .P7C .SPC,主要用于Tomcat和Windows Server。
JKS: JavaKeyStore的缩写,它包含私钥,证书链,用户证书,并设置了密码。证书后缀是.jks。主要用于Tomcat。
证书转换
.pem 转 .pfx
openssl pkcs12 -export -in 'test.pem' -inkey 'test.key' -out 'test.p12' -passout pass:123456
.pfx 转 .pem
openssl pkcs12 -in test.p12 -passin pass:123456 -out test3.pem -nodes
.pfx转 .crt 和 .key
openssl pkcs12 -in example.cn.ssl.pfx -clcerts -nokeys -out example.crt
openssl pkcs12 -in example.cn.ssl.pfx -nocerts -nodes -out example.key
.crt 和 .key 合并为 .pfx
openssl pkcs12 -export -in certificate.crt -inkey privateKey.key -out certificate.pfx
本作品采用《CC 协议》,转载必须注明作者和本文链接