案例:我正在维护一个使用 BouncyCastle 库bcpkix-jdk15on-149.jar和bcprov-jdk15on-149.jar的 Java 小程序。
问题是当小程序在支持 JRE 版本 7_u40 的浏览器上运行时。
该行为已从版本 7_u25 更改为它始终提示一个模式窗口,例如“使用自签名证书的应用程序的安全提示”(不能再永久隐藏),只是为了信任bcprov。
https://www.java.com/en/download/help/appsecuritydialogs.xml
据我所知,这是因为 BC 库使用由“JCE 代码签名 CA”颁发的 BouncyCastle 证书进行签名。因此,该库可以执行和充当密码提供者。
但是:JRE 无法建立证书链来信任签名。它显示“提供者:未知”
我知道我可以删除该签名并自己签名(我拥有 Thawte 代码签名证书):
- 它适用于 bcpkix 库
- 它不适用于bcprov,因为它不会被视为有效的密码学提供程序(JRE 不会信任它)。
我对吗?我能做些什么?
PS:我搜索了很多以找到 JCA 根证书(将其放入 JRE 信任库),但没有成功……有没有办法获取该根 CA?