数字证书之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
相关文章