keytool 错误:java.security.KeyStoreException:未找到 BKS

Posted

技术标签:

【中文标题】keytool 错误:java.security.KeyStoreException:未找到 BKS【英文标题】:keytool error: java.security.KeyStoreException: BKS not found 【发布时间】:2011-07-28 22:17:06 【问题描述】:

如何在 java sun keytool 中创建 .bks 密钥库,我该怎么做?

C:\Program Files\Java\jdk1.6.0\jre\bin>keytool -genkey -alias server3private -ke
ystore server3.private -storetype BKS -keyalg rsa -dname "CN=Your Name, OU=Your
Organizational Unit, O=Your Organization, L=Your City, S=Your State, C=Your Coun
try" -storepass tahirpw -keypass tahirpw

它给了我错误

【问题讨论】:

***.com/questions/4065379/… 【参考方案1】:

您的错误表明keytool 尝试实例化BKS 密钥库,但没有加密服务提供者 (CSP) 能够提供这样的实现。 BKS keystore 类型是由BouncyCastle CSP 实现的类型。

因此有两种解决方案:

    使用 Java 安装此提供程序。 Oracle 与 Java 一起发布 a comprehensive documentation。

    将合适的选项传递给 keytool 以指示应使用哪个 CSP 及其位置:

-storetype BKS                                               <- keystore type
-provider org.bouncycastle.jce.provider.BouncyCastleProvider <- CSP implementation
-providerpath /path/to/bouncycastle.jar                      <- Path to the CSP jar file

【讨论】:

我在 Mac OSX 上使用带有 java 的 keytool 尝试了您的指示,并得到以下错误:“java.lang.RuntimeException: 使用错误,?providerpath 不是合法命令。”但是,当我尝试“keytool -help”时,它显示“-providerpath” -genkeypair 命令的合法命令,所以它应该可以工作......关于为什么它不起作用的任何想法为了我?谢谢! 如果其他人想知道:bouncycastle.jar 是 bouncycastle.org/latest_releases.html 上的签名 provider jar 文件,名为 bcprov-[...].jar

以上是关于keytool 错误:java.security.KeyStoreException:未找到 BKS的主要内容,如果未能解决你的问题,请参考以下文章

导入证书后出现 Java Keytool 错误,“keytool 错误:java.io.FileNotFoundException & Access Denied”

Keytool 命令中的错误

是啥导致 keytool 错误“无法解密安全内容条目”?

错误:'keytool' 不是内部或外部命令、可运行程序或批处理文件

keytool -genkey 错误:密钥库文件不存在

keytool 错误:java.lang.Exception:证书未导入,别名 mykey 已存在