遅い SecureRandom ジェネレーターのパフォーマンスの改善
Java の SecureRandom クラスは、暗号的に安全な乱数の信頼できるソースですが、そのパフォーマンスは特に Linux システムで /dev/random を使用する場合に妨げとなります。この遅延は、ランダム性を生成するために十分なエントロピーを蓄積するプロセスに起因します。
パフォーマンスを向上させるソリューション
1. /dev/urandom の使用:
パフォーマンスの問題の解決策は、より高速な代替手段を提供する Linux 上の /dev/urandom に切り替えることです。これを有効にするには、次のシステム プロパティを設定します:
-Djava.security.egd=file:/dev/urandom
2. Java 5 以降の回避策 (Java バグ 6202721):
前述の /dev/urandom プロパティは、バグのため Java 5 以降では機能しません。これに対処するには、代わりに次のプロパティを使用します。
-Djava.security.egd=file:/dev/./urandom
追加の考慮事項:
/dev/urandom は /dev/random より高速ですが、次のことが重要です。安全性が若干低いことに注意してください。したがって、決定を下す前にアプリケーションのセキュリティ要件を評価してください。
Uncommon Maths と JDK 6:
この記事では、問題の解決策として Uncommon Maths については言及されていません。この問題。さらに、SecureRandom のパフォーマンスの問題は、JDK 6 を含む後続のバージョンの JDK で解決されました。
以上がJava の SecureRandom パフォーマンスを高速化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。