主流证书类型格式相互转换操作

2020-07-29 0 By admin

主流数字证书有哪些格式


根据上文,我们知道数字证书有多个类型,并且不同类型证书使用的场景是不一样的。在必要的时候,我们就需要将证书的类型转换一下,使它适合我们当前的使用场景。

证书文件转换过程图
证书文件转换过程图

三、证书文件的格式转换

3.1、将JKS格式证书转换成PFX格式

您可以使用JDK中自带的Keytool工具,将JKS格式证书文件转换成PFX格式。
例如,您可以执行以下命令将 server.jks证书文件转换成 server.pfx证书文件:
keytool -importkeystore -srckeystore D:\server.jks -destkeystore D:\server.pfx -srcstoretype JKS -deststoretype PKCS12

3.2、将PFX格式证书转换为JKS格式

您可以使用JDK中自带的Keytool工具,将PFX格式证书文件转换成JKS格式。
例如,您可以执行以下命令将 server.pfx证书文件转换成 server.jks证书文件:
keytool -importkeystore -srckeystore D:\server.pfx -destkeystore D:\server.jks -srcstoretype PKCS12 -deststoretype JKS

3.3、将PEM/KEY/CRT格式证书转换为PFX格式

您可以使用 OpenSSL工具,将KEY格式密钥文件和CRT格式公钥文件转换成PFX格式证书文件。
例如,将您的KEY格式密钥文件(server.key)和CRT格式公钥文件(server.crt)拷贝至OpenSSL工具安装目录,使用OpenSSL工具执行以下命令将证书转换成 server.pfx证书文件:
openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt

3.4、将PFX转换为PEM/KEY/CRT

您可以使用 OpenSSL工具,将PFX格式证书文件转化为KEY格式密钥文件和CRT格式公钥文件。
例如,将您的PFX格式证书文件拷贝至OpenSSL安装目录,使用OpenSSL工具执行以下命令将证书转换成server.pem证书文件KEY格式密钥文件(server.key)和CRT格式公钥文件(server.crt):
openssl pkcs12 -in server.pfx -nodes -out server.pem
openssl rsa -in server.pem -out server.key
openssl x509 -in server.pem -out server.crt

说明 此转换步骤是专用于通过Keytool工具生成私钥和CSR申请证书文件的,并且通过此方法您可以在获取到PEM格式证书公钥的情况下分离私钥。
在您实际部署数字证书时,请使用通过此转换步骤分离出来的私钥和您申请得到的公钥证书匹配进行部署。