【问题标题】:Certificate problems after updating to version Bouncycastle Version 1.56更新到 Bouncycastle 版本 1.56 后的证书问题
【发布时间】:2018-06-20 21:30:01
【问题描述】:

我们已将 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 公钥验证?

【问题讨论】:

  • 请贴出引发此异常的代码。
  • 尝试导出证书并使用 openssl.or KeystoreExplorer 重新导入
  • 我通过 KeystoreExplorer 测试了重新导入,但结果是一样的。

标签: java certificate bouncycastle public-key


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-29
    • 1970-01-01
    • 2021-08-22
    • 1970-01-01
    • 2020-11-24
    • 2021-05-01
    • 2021-07-20
    相关资源
    最近更新 更多