证书转换整理:crt key jks pkcs12

1.crt、key和jks之间的转换 

##.crt和.key转换.jks (tomcat server.xml)
openssl pkcs12 -export -in  server.crt -inkey  server.key > server.p12
[mykey]
keytool -importkeystore -keyalg EC -srckeystore server.p12 -destkeystore server.jks -srcstoretype pkcs12
[mykey]
##.jks转换.crt和.key
1. 从JKS转换到PKCS12keytool
keytool -importkeystore -srckeystore D:\server.jks -destkeystore D:\keystore.p12 -srcstoretype JKS -deststoretype PKCS12 -srcstorepass [mykey] -deststorepass [mykey] -srcalias 1 -destalias 1 -srckeypass [mykey] -destkeypass [mykey] –noprompt
 
2.从PKCS12转换成PEM格式openssl pkcs12 (openssl要在linux上使用)
openssl pkcs12 -in D:\keystore.p12 -out D:\server.pem -passin pass:[mykey] -passout pass:[mykey]
 
3. 提取证书
openssl pkcs12 -in keystore.p12 -nokeys -clcerts -out server-ssl.crt
openssl pkcs12 -in keystore.p12 -nokeys -cacerts -out gs_intermediate_ca.crt
Enter Import Password:[mykey]
server-ssl.crt是SSL证书,gs_intermediate_ca.crt是中级证书,两个合并到一起才是nginx服务器所需要的证书
合并证书: cat server-ssl.crt gs_intermediate_ca.crt >server.crt
此时server.crt是一个完成的证书。

4. 提取私钥
openssl pkcs12 -in keystore.p12 -nocerts -nodes -out server.key
Enter Import Password:[mykey]

 2.crt、key和p12之间的转换 

##.crt和.key合成.p12
1.先将证书链文件放到证书文件后面:
cat server-ssl.crt gs_intermediate_ca.crt >server.crt
2.用合成后的crt和key转换成PFX格式(.p12)的证书文件
openssl pkcs12 -export -in  server.crt -inkey  server.key  > server.p12
key  [mykey]


#验证:测试解开后的文件和合成前的文件一一对应:
##.p12解开成.crt和.key

##分离出普通PRIVATE KEY
1.分离出ssl证书
openssl pkcs12 -in server.p12 -nokeys -clcerts -out server-ssl.crt
2.分离出证书链
openssl pkcs12 -in server.p12 -nokeys -cacerts -out gs_intermediate_ca.crt
3.分离出.key
openssl pkcs12 -in server.p12 -nocerts -nodes -out server.key 

##分离出RSA PRIVATE KEY
1.先转换成pem(里面包含证书、证书链和PRIVATE KEY)
openssl pkcs12 -in server.p12 -nodes -out server.pem
2.pem分离出证书
openssl x509 -in server.pem -out server.crt
3.pem分离出RSA key
openssl rsa -in server.pem -out server.key
writing RSA key

md5验证:得出的字符串相同则crt和key是配对的
openssl x509 -noout -modulus -in server.crt | openssl md5
openssl rsa -noout -modulus -in server.key | openssl md5 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值