【问题标题】:Using a p12 file without a password in Java在 Java 中使用没有密码的 p12 文件
【发布时间】:2014-01-03 13:21:22
【问题描述】:

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

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

我所有的谷歌搜索都表明 sun 实现不允许空密码,当然 keytool 不会让您在没有密码的情况下导入任何证书。

【问题讨论】:

标签: java ssl-certificate


【解决方案1】:

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

另见this related question

【讨论】:

  • 我已经复制了你的命令并花了大约 15 分钟试图弄清楚为什么它不起作用,直到我发现所有的缺点看起来很奇怪并替换它们......
  • 很好 - 由于某种原因,它们似乎变成了破折号(U+2013)。现在希望已修复。
猜你喜欢
  • 2015-07-10
  • 2016-04-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-26
  • 1970-01-01
  • 2018-05-22
  • 1970-01-01
相关资源
最近更新 更多