java - 无法导入 .p12 keystore

标签 java ssl keytool private-key jks

我使用来自 pkcs8 keystore 的 openssl 创建了一个 .p12 keystore 。现在我正在尝试使用 java Keytool 将私钥导入新的 JKS keystore 。我试过命令:

keytool -importkeystore -srckeystore newKS.p12 -srcstoretype pkcs12 -srcstorepass pass -destkeystore exportedJks.jks -deststoretype jks -deststorepass pass

但是我收到以下错误信息:

keytool error: java.security.UnrecoverableKeyException: Get Key failed: EC KeyFactory not available

如何解决此错误,以便将此 key 导入新的 JKS keystore ?

最佳答案

该错误消息表示 Java 运行时无法找到 ECC(椭圆曲线加密)算法的加密提供程序。

Java 6 仅包含对 ECC 的基本支持:它知道大多数 EC 算法的 OID,因此知道它必须找到一个“EC KeyFactory”。但是,默认情况下没有安装可以处理这些算法的提供程序。

SunEC provider Java 7 中添加了完整的 ECC 支持,因此解决此问题的最简单方法是使用 Java 7 或 8 运行时中的 keytool。

关于java - 无法导入 .p12 keystore ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27649176/

相关文章:

google-chrome - 忘记 Chrome 将哪个客户端证书用于 URL

iis - DNN : Whole site with HTTPS (SSL)

java - Android keystore 已损坏

Tomcat 服务器/客户端自签名 SSL 证书

java - 将证书导入 keystore ,证书链为空

java - java中获取磁盘的唯一标识符

java - 文本区域中的上下移动按钮

java - Mockito Capture 在捕获时不维护捕获列表

ssl - NiFi 绕过 SSL 上下文服务中的主机名验证

java - Dojo 1.7 eclipse错误