一般来说,主流的 Web 服务软件,通常都基于 OpenSSL 和 Java 两种基础密码库。
判断证书文件是文本格式还是二进制格式
也可以使用记事本直接打开证书文件。如果显示的是规则的数字字母,例如:
那么,该证书文件是文本格式的。
|
1
|
keytool -importkeystore -srckeystore D:\server.jks -destkeystore D:\server.pfx -srcstoretype JKS -deststoretype PKCS12
|
2. 将 PFX 格式证书转换为 JKS 格式
使用 JDK 中自带的 Keytool 工具,将 PFX 格式证书文件转换成 JKS 格式。
例如,可以执行以下命令将 server.pfx 证书文件转换成 server.jks 证书文件:
1
|
keytool -importkeystore -srckeystore D:\server.pfx -destkeystore D:\server.jks -srcstoretype PKCS12 -deststoretype JKS
|
3. 将 PEM/KEY/CRT 格式证书转换为 PFX 格式
可以使用 OpenSSL工具,将 KEY 格式密钥文件和 CRT 格式公钥文件转换成 PFX 格式证书文件。
例如,将 KEY 格式密钥文件(server.key)和 CRT 格式公钥文件(server.crt)拷贝至 OpenSSL 工具安装目录,使用 OpenSSL 工具执行以下命令将证书转换成 server.pfx证书文件:
1
|
openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt
|
4. 将PFX转换为PEM/KEY/CRT
可以使用 OpenSSL工具,将 PFX 格式证书文件转化为 KEY 格式密钥文件和 CRT 格式公钥文件。
例如,将 PFX 格式证书文件拷贝至 OpenSSL 安装目录,使用 OpenSSL 工具执行以下命令将证书转换成 server.pem 证书文件、KEY 格式密钥文件(server.key)和 CRT 格式公钥文件(server.crt):
1
2
3
|
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 格式证书公钥的情况下分离私钥。在实际部署数字证书时,请使用通过此转换步骤分离出来的私钥和申请得到的公钥证书匹配进行部署。
(责任编辑:IT)