在Java中使用没有密码的p12文件

时间:2014-01-03 13:21:23

标签: java ssl-certificate

尽我所能,我无法弄清楚如何在Java中使用没有密码的 .p12 文件。我尝试将javax.net.ssl.keyStorePassword设置为"",但无论我做什么,我都会收到以下SSL错误:

  

HTTP传输错误:javax.net.ssl.SSLHandshakeException:握手期间远程主机关闭连接

我所有的Google搜索都会建议sun实现不允许空密码,当然keytool不会让你导入没有商店密码的任何证书。

1 个答案:

答案 0 :(得分:5)

Sun API似乎需要密码,因此您需要在.p12文件中添加密码。

This page表示您可以openssl.p12转换为.pem,然后转换回.p12(但我有open­ssl pkcs12 -in cert.p12 -out temp.pem -passin pass: -passout pass:temppassword open­ssl pkcs12 -export -in temp.pem -out cert-final.p12 -passin pass:temppassword -passout pass:newpa­ssword rm -f temp.pem 没试过):

{{1}}

另见this related question