ケース: 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 Code Signing CA」によって発行された BouncyCastle 証明書で署名されているためです。そのため、lib は暗号化プロバイダーとして実行および機能できます。
しかし: JRE は証明書チェーンを構築して署名を信頼することはできません。「プロバイダー:UNKNOWN」と表示されます
私はその署名を削除して自分で署名できることを知っています (私は Thawte コード署名証明書を所有しています):
- bcpkix libで動作します
- bcprovは有効な暗号化プロバイダーと見なされない (JRE によって信頼されない) ため、 bcprovでは機能しません。
私は正しいですか?私に何ができる?
PS: JCA ルート証明書を見つけるために (JRE トラストストアに入れるために) よくグーグル検索しましたが、成功しませんでした... そのルート CA を取得する方法はありますか?