證書轉換整理: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 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章