JKS转PEM,JKS转BKS

来源:互联网 发布:mac开盖自动开机 编辑:程序博客网 时间:2024/05/22 01:58

最近做一个及时通讯系统,服务端用Python3 Socket实现,客户端包括Android和桌面版,功能都实现了以后考虑到加密问题.

python3 Socket要用pem证书,Android javawebSocket要用bks证书,WTF!

Android的bks可以由jks转换来,上网查了一下,jks可以转成pem,这就好办了

首先把jks转成pem

一,生成JKS

keytool-genkey -keyalg RSA -keysize 1024 -validity 3650 -dname "CN=spdb, OU=spdb,O=spdb, L=shanghai, ST=shanghai, C=CN" -alias default  -keypass 123456 -keystore csii.jks -storepass 123456
要用RSA加密方式,要用RSA加密方式,要用RSA加密方式,重要事情说三遍

二,JKS转pkcs12

keytool -importkeystore -srckeystore csii.jks -destkeystore csii.p12 -srcstoretype jks -deststoretype pkcs12
三,pkcs12转pem
openssl pkcs12 -nodes -in csii.p12 -out csii.pem
生成的pem中包含了私钥和证书
需要把-----BEGIN CERTIFICATE-----和-----END CERTIFICATE-----部分的内容复制到cert.pem中
把-----BEGIN PRIVATE KEY-----和-----END PRIVATE KEY-----部分的内容复制到key.pem中即可.
至此JKS转pem完成,接下来要把JKS转成bks
四,JKS转cer
keytool -export -alias default -keystore csii.jks -rfc -file csii.cer
五,cer转bks 这里需要用到bcprov-jdk15on-155.jar这个jar包,放到一个目录里即可
keytool -importcert -v -trustcacerts -file "keystore.cer" -alias defualt -keystore "keystore.bks" -provider org.bouncycastle.jce.provider.BouncyCastleProvider -providerpath "bcprov-jdk15on-155.jar" -storetype BKS -storepass storepassword123
这样就生成了bks

1 0
原创粉丝点击