0

BouncyCastle bcprov-jdk14-124.jar (ooooold) から bcprov-jdk14-143.jar にアップグレードしようとしています。古い jar を新しい jar に置き換えてすべてをビルドすると、ソフトウェアは SSL 接続を確立しなくなり、javax.net.ssl.SSLException: Received fatal alert: illegal_parameter. 「 」をグーグル検索するbouncycastle javax.net.ssl.SSLException illegal_parameterと、なんと 4 つの結果が得られます。

これのデバッグを開始する場所に関する提案はありますか?

追加のコンテキスト:

  • クライアントは WinXP です
  • Oracle Application Server を使用した CentOS 上のサーバー
  • クライアントは、AXIS2 POST の SSL 接続を確立しようとしています。
  • サーバーが bcprov-jdk14-143 を使用し、クライアントが bcprov-jdk14-124 を使用する場合、POST は成功しますが、クライアントを 143 にアップグレードすると、このエラーが発生します
4

1 に答える 1

1

私はあなたの設定について少し混乱しています。エラーは JSSE によるものですが、BC は JSSE を提供していません。エラーは、SunJSSE を使用するサーバーからのものであると想定しています。おそらく、クライアントから BC の TLS API を使用して TLS 接続を確立します (TlsProtocolHandler があるかどうかを確認してください)。

この場合、Java 1.4 ですべてが機能することはすでに奇跡であり、私は何もアップグレードしません。Java 5 より前では、Sun の JSSE は SunJCE に部分的に接続されているため、実際にはサーバー上で同時に 2 つの JCE を使用しています。私は以前に BC の TLS で遊んだことがありましたが、一度も機能しなかったので、あなたは私よりずっと先を行っています :)

BC をアップグレードする必要があるのはなぜですか? 私の意見では、Java 1.4 以降を使用している場合、BC を使用する理由はまったくありません。ただし、TlsProtocolHandler を使用する場合は、コードを変更して削除する必要があります。

特定のエラーは、サーバーが圧縮方法のリストを送信することによって発生します。それを回避する方法はありません。誰も圧縮をサポートしていませんが、それらはすべて Null メソッドのみでリストを送信します。

于 2009-08-16T00:12:03.660 に答える