java密钥库无法恢复密钥

时间:2018-06-12 18:39:09

标签: keystore jks recover

当推荐不起作用时,论坛中关于此主题的答案都没有充分解决这个问题。即我有一个处理PKI证书的应用程序。这个应用程序一直工作正常,直到我的证书到期,我不得不获得一个新的。我按如下方式更换了证书:

  

keytool -v -importkeystore -srckeystore cert.p12 -srcstoretype PKCS12 - srcalias [alias name] -destkeystore keystore.jks -deststoretype JKS -deststorepass changeit -destalias [alias name]

当我尝试运行app时,我得到了"无法恢复密钥"异常,这是我以前从未有过的。所以我找到了要运行的建议:

  

keytool -keypasswd -alias [alias name] -keystore keystore.jks

我根据提示给了它商店密码和证书密码,但仍然收到了同样的例外。怎么办?我整个下午都在试验,似乎没有什么能解决这个例外。并且堆栈跟踪不再提供调试的线索。

1 个答案:

答案 0 :(得分:0)

我发现运行以下命令时(使用jdk 1.8):

keytool -importkeystore -srckeystore pkcs12 -destkeystore jks -srcstoretype PKCS12

JKS中新创建的条目的密码将默认为用于保护源PKCS12密钥库的密码。必须用"keytool -keypasswd"替换输入密码,因为我的应用程序期望JKS“全局”密码和输入密码相同。