p12(或者pfx)文件里一般存放有CA的根证书,用户证书和用户的私钥
假设我们有一个test.p12文件
在安装了openssl的linux服务器上执行以下命令:
提取用户证书:
opensslpkcs12-intest.p12-clcerts-nokeys-outcert.pem//pem格式opensslpkcs12-intest.p12-clcerts-nokeys-outcert.crt//crt格式
如果需要携带秘钥,则去掉-nokeys
opensslpkcs12-intest.p12-clcerts-outcert.pem//pem格式opensslpkcs12-intest.p12-clcerts-outcert.crt//crt格式
提取私钥:
opensslpkcs12-intest.p12-nocerts-outkey.pem
清除秘钥中的密码(在把秘钥部署到某些服务器上时可能需要清除密码)
opensslrsa-inkey.pem-outnewkey.pem
在java中pkcs12和jks的相互转换:
P12→JKS
keytool-importkeystore-srckeystorekeystore.p12-srcstoretypePKCS12-deststoretypeJKS-destkeystorekeystore.jks