java - 更新到 BouncycaSTLe 版本 1.56 后出现证书问题

标签 java certificate bouncycastle public-key

我们已将 BouncycaSTLe 版本从 1.55 更新至 1.56。此后,我们的其中一份证书就出现了问题。现在有人知道为什么会出现这个问题吗?

caused by: java.lang.IllegalArgumentException: invalid info structure in RSA public key                                    
at org.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey.populateFromPublicKeyInfo(Unknown Source)               
at org.bouncycastle.jcajce.provider.asymmetric.rsa.BCRSAPublicKey.<init>(Unknown Source)                                  
at org.bouncycastle.jcajce.provider.asymmetric.rsa.KeyFactorySpi.generatePublic(Unknown Source)                            
at org.bouncycastle.jce.provider.BouncyCastleProvider.getPublicKey(Unknown Source)                                        
at org.bouncycastle.jcajce.provider.asymmetric.x509.X509CertificateObject.getPublicKey(Unknown Source)                     
at org.bouncycastle.jcajce.provider.keystore.pkcs12.PKCS12KeyStoreSpi.engineLoad(Unknown Source)                          
at java.security.KeyStore.load(KeyStore.java:1456)`

(已更新)

使用提供程序 BouncycaSTLe 加载 KeyStore 时会出现问题。

  keyStore = KeyStore.getInstance("PKCS12", new BouncyCastleProvider());
        keyStore.load(inputStream, "test".toCharArray());

测试的东西:

使用 KeyStoreExplorer 5.3.0 重新导入证书 -> 相同问题,5.1.1 -> 成功导入

RSA 公钥有新的验证吗?

最佳答案

我发现了问题。问题是 BouncycaSTLe 1.56 使用 Java 8,因此不再接受 key 大小小于 1024 的证书。

关于java - 更新到 BouncycaSTLe 版本 1.56 后出现证书问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48208979/

相关文章:

java - VisualVM 分析正在污染结果

windows - 无法通过 PowerShell 设置证书友好名称(访问被拒绝)

java - 使用 append 时,StringBuilder 使用更多内存

java - ANTLR 通配符运算符不消耗预期输入

IOS 应用程序更新有 2 个 iOS 分布式证书,但未安装其私钥

windows-phone-7 - Windows Phone : How to Sign an App

java - 未使用 goDaddy 证书验证 HTTPS 主机名

java - 从公钥获取证书详细信息?

java - X500Principal Distinguished Name 命令

java - 编写一个java数组并得到太多输出