创建密钥库并向其附加证书后,密钥库格式无效

新手上路,请多包涵

我正在使用以下命令使用 OpenSSL 创建密钥库:

 openssl pkcs12 -export -in mycert.crt -inkey mykey.key \
                        -out mycert.p12 -name tomcat -CAfile myCA.crt \
                        -caname root

根据 文档

现在,当我尝试使用 keytool -list -v -keystore mycert.p12 验证密钥库时,我得到一个 Invalid Keystore Exception

这是因为我正在使用创建密钥库的 Apache 实现吗?

我还有一个限制是我不能使用 Java keytool 创建密钥库,尽管我的 Java 程序正在使用密钥库进行 FTPS 传输。

原文由 justin3250 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 551
2 个回答

-storetype pkcs12 选项与 keytool 一起使用。

 keytool -list -v -keystore mycert.p12 -storetype pkcs12

默认情况下, keytool 假定密钥库类型为 JKS 如果不是,则 keytool 失败。如果使用其他密钥库文件(在您的示例中为 .p12 ),您需要使用上述方法明确指定存储类型。

原文由 npe 发布,翻译遵循 CC BY-SA 3.0 许可协议

我用过 where keytool

看到我有两个 keytools:

 C:\Program Files\Eclipse Foundation\jdk-8.0.302.8-hotspot\bin\keytool.exe
C:\Program Files\AdoptOpenJDK\jdk-16.0.1.9-hotspot\bin\keytool.exe

在我的例子中,我通过指定后一个解决了它:

 "C:\Program Files\AdoptOpenJDK\jdk-16.0.1.9-hotspot\bin\keytool.exe" -list [...]

原文由 Daniil 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题