如何分离p12(或pfx)文件中的证书和私钥?

p12(或者pfx)文件里一般存放有CA的根证书,用户证书和用户的私钥

假设我们有一个test.p12文件

在安装了openssl的linux服务器上执行以下命令:

提取用户证书:

openssl pkcs12 -in test.p12 -clcerts -nokeys -out cert.pem //pem格式 openssl pkcs12 -in test.p12 -clcerts -nokeys -out cert.crt //crt格式

如果需要携带秘钥,则去掉 -nokeys

openssl pkcs12 -in test.p12 -clcerts -out cert.pem //pem格式openssl pkcs12 -in test.p12 -clcerts -out cert.crt //crt格式

提取私钥:

openssl pkcs12 -in test.p12 -nocerts -out key.pem

清除秘钥中的密码(在把秘钥部署到某些服务器上时可能需要清除密码)

openssl rsa -in key.pem -out newkey.pem

在java中pkcs12 和jks的相互转换:

JKS → P12 keytool -importkeystore -srckeystore keystore.jks -srcstoretype JKS -deststoretype PKCS12 -destkeystore keystore.p12

P12 → JKS

keytool -importkeystore -srckeystore keystore.p12 -srcstoretype PKCS12 -deststoretype JKS -destkeystore keystore.jks

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注