JAVA中使用jks做为证书管理
文章目录
- 前言
- 一、转换
- 二、ssl/tls会话流程
- 总结
前言
如果想开启ssl/tls服务,必须要要有证书才可以,然而java使用的证书格式默认是jks(java key store),所以通常需要将证书格式进行转化。不知道为什么不能直接使用openssl生成的格式
一、转换
#!/bin/sh# password=mypassword# convert pem to pkcs12
if [ ! -n "$1" ]; then echo "pelease input pem file" exit
fi
if [ ! -n "$2" ]; then echo "pelease input private key file" exit
fiMYPEM=$1
MYKEY=$2openssl pkcs12 -export -in ${MYPEM} \
-inkey ${MYKEY} -out MYSERVER.p12 \
-name MYSERVER -passin pass:mypassword -passout pass:mypassword# convert pkcs12 to jkskeytool -importkeystore -srckeystore MYSERVER.p12 -srcstoretype PKCS12 \
-srcstorepass mypassword -alias MYSERVER -deststorepass mypassword \
-destkeypass mypassword -destkeystore MYSERVER.jksrm -rf MYSERVER.p12echo ""
echo "*************************************************"
echo "* generate jks file success ===> MYSERVER.jks *"
echo "*************************************************"
echo ""
拿到jks后就可以使用了,如何使用网上有很多案例,此处不在列举
二、ssl/tls会话流程

客户端生成对称秘钥后,发给服务端,此后两者通信就使用该对称秘钥
总结
java不能直接使用pem格式感觉很奇怪,给开发带来不便
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
