エラー: SSL ハンドシェイク中に「DH キーペアを生成できませんでした」
問題:
特定の IRC サーバーとの SSL 接続を確立すると、開発者は次のような問題に遭遇します。例外:
java.lang.RuntimeException: Could not generate DH keypair ... java.security.InvalidAlgorithmParameterException: Prime size must be multiple of 64, and can only range from 512 to 1024 (inclusive)
回答:
この問題の根本原因は、Diffie-Hellman (DH) 鍵交換アルゴリズムで使用される「プライム サイズ」です。 Java のデフォルトの SSL 実装では、素数サイズが最大 1024 ビットに制限されています (JDK-6521495 を参照)。
回避策:
この問題を解決するには、Java 開発者は次のことを検討できます。代替ツールキットを使用するか、回避策を実装します。推奨される解決策は次のとおりです:
それ以降の Java バージョン:
注それ以降の Java バージョンでは、DH キー交換の最大プライム サイズ制限が引き上げられています。概要は次のとおりです:
を使用している場合古い Java バージョンの場合は、増加したプライム サイズ制限を利用するためにアップグレードすることをお勧めします。
以上がSSL ハンドシェイク中に「DH キーペアを生成できませんでした」というエラーが表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。