证书转换
1 pem格式转jks格式
证书转换命令:
-
原因 : Java无法读取pem格式的证书,Java自身的证书读取格式为keystore(JKS),所以需要将证书进行一个集成和转换
-
步骤
a) 原有的证书有两个文件
i. CLIENT_certs.pem : 证书文件
ii. CLIENT_privkey.pem : 客户端私钥文件
b) 需要将私钥证书文件中的内容复制到证书文件的最后,把两个文件集合成一个文件,例子如下
完成集合后的文件
c) 将集合后的pem文件转换为jks文件
在windows的命令提示符下输入以下命令,进入jdk bin目录,使用keytool工具
keytool -import -trustcacerts -alias test(1) -file CLIENT_certs.pem(2) -keystore CLIENT_certs.jks(3)
-
test: keystore的别名,可以按实际要求设置
-
CLIENT_certs.pem : 集合后的证书文件
-
CLIENT_certs.jks : 转换后的keystore文件,程序实际调用的证书文件
过程中会要求输入证书的密码,默认为“123456”,建议不改,因为此密码在代码中是写死的。
3,查看jks证书信息命令:
在windows的命令提示符下输入以下命令,进入jdk bin目录,使用keytool工具
keytool -list -v -keystore C:\box-cert\APP\truststore.jks -storepass 123456
C:\box-cert\APP\truststore.jks --> 证书路劲,不能有空格
2 pem格式转p12格式
方法一:
在windows通过openssl来实现证书转换
Step1: 检查openssl是否安装成功,进入cmd,使用openssl version 命令查看
>openssl version
>OpenSSL 3.0.5 5 Jul 2022 (Library: OpenSSL 3.0.5 5 Jul 2022)
能正常显示版本,即表示openssl安装是成功的
Step2: 进入pem文件目录,使用命令转换证书
Openssl pkcs12 -export -in 文件1.pem -inkey 文件2.pem -out 文件2.p12
Sample:
openssl pkcs12 -export -in client.pem -inkey MOS-PK.pem -out CLIENT_certs1.p12
注意:文件1是客户端证书,文件2是客户端私钥,文件3是生成的p12格式证书。开头的openssl一定不能省略,windows下直接输入openssl进入不了对应环境。
方法二:
借助于centos虚拟机,将文件通过scp命令传到虚拟机。
Sample:
Step1:上传到虚拟机 client 和 mos-pk文件:
scp client.pem MOS-PK.pem [email protected]:/data
step2: 在虚拟机上使用openssl,密码123456
[root@localhost data]# openssl
OpenSSL> pkcs12 -export -in client.pem -inkey MOS-PK.pem -out CLIENT_certs.p12
Enter Export Password:
Verifying - Enter Export Password:
OpenSSL> exit
Step3:从虚拟机下载到本地当前目录:需要输入虚拟机密码
scp [email protected]:/data/CLIENT_certs.p12 ./
标签:文件,转换,证书,openssl,pem,CLIENT,certs From: https://www.cnblogs.com/orange2016/p/16649795.html