19

ケース: 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 を取得する方法はありますか?

4

2 に答える 2

0

他のスタックオーバーフローの投稿と私を助けた答えを含めることもできます:

次の行を入れます: Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());

例外を取り除くのに役立ちました。

ソース: jce はプロバイダー bc を認証できません

于 2015-12-03T16:53:27.500 に答える