keytool错误:java.lang.IllegalArgumentException:publicKey不是X.509,而是OpenJDK 1.8.162中的X509

时间:2018-09-19 04:09:46

标签: java x509 keytool public-key

我正在尝试使用命令

生成密钥
keytool -genkey -dname CN=<>, OU=AB, O=AB, L=AB, ST=AB, C=US -alias myalias -keypass pwd -keystore C:/tmp_1.54/serverKeystore -storepass pwd -storetype PKCS12 -providername JsafeJCE -keyalg RSA -keysize 2048 -validity 360

但是在运行keytool时出现以下错误。我正在使用OpenJDK 1.8.162。

Error : keytool error: java.lang.IllegalArgumentException: publicKey's is not X.
509, but X509
java.lang.IllegalArgumentException: publicKey's is not X.509, but X509
        at sun.security.tools.keytool.CertAndKeyGen.generate(CertAndKeyGen.java:
162)
        at sun.security.tools.keytool.Main.doGenKeyPair(Main.java:1739)
        at sun.security.tools.keytool.Main.doCommands(Main.java:1007)
        at sun.security.tools.keytool.Main.run(Main.java:366)
        at sun.security.tools.keytool.Main.main(Main.java:359)

需要帮助解决此问题。

1 个答案:

答案 0 :(得分:1)

此问题已解决。我试图首先在OpenJDK 1.8中启用FIPS(使用RSA Bsafe),然后尝试在引发此错误的产品中启用SSL。后来我更改了顺序,首先使用SSL,然后启用了无缝工作的FIPS。在启用SSL之前,我发现的问题是OpenJDK 1.8不支持RSA Bsafe库。