Heim >Java >javaLernprogramm >Wie kann ich die SecureRandom-Leistung von Java beschleunigen?

Wie kann ich die SecureRandom-Leistung von Java beschleunigen?

Barbara Streisand
Barbara StreisandOriginal
2024-12-02 17:37:11998Durchsuche

How Can I Speed Up Java's SecureRandom Performance?

Verbesserung der Leistung eines langsamen SecureRandom-Generators

Die SecureRandom-Klasse von Java ist eine zuverlässige Quelle für kryptografisch sichere Zufallszahlen, aber ihre Leistung kann sein Dies wird insbesondere bei der Verwendung von /dev/random auf Linux-Systemen behindert. Diese Verzögerung ist auf den Prozess zurückzuführen, bei dem ausreichend Entropie für die Zufallserzeugung angesammelt wird.

Lösungen zur Leistungssteigerung

1. Verwendung von /dev/urandom:

Eine Lösung für das Leistungsproblem besteht darin, unter Linux zu /dev/urandom zu wechseln, was eine schnellere Alternative darstellt. Um dies zu aktivieren, legen Sie die folgende Systemeigenschaft fest:

-Djava.security.egd=file:/dev/urandom

2. Problemumgehung für Java 5 und höher (Java Bug 6202721):

Die oben genannte /dev/urandom-Eigenschaft funktioniert aufgrund eines Fehlers nicht in Java 5 und höher. Um dieses Problem zu beheben, verwenden Sie stattdessen die folgende Eigenschaft:

-Djava.security.egd=file:/dev/./urandom

Zusätzliche Überlegungen:

Während /dev/urandom schneller als /dev/random ist, ist es wichtig, dies zu tun Beachten Sie, dass es etwas weniger sicher ist. Bewerten Sie daher die Sicherheitsanforderungen Ihrer Anwendung, bevor Sie eine Entscheidung treffen.

Uncommon Maths und JDK 6:

Der Artikel erwähnt Uncommon Maths nicht als Lösung für dieses Problem. Darüber hinaus wurde das Leistungsproblem mit SecureRandom in nachfolgenden Versionen von JDK, einschließlich JDK 6, behoben.

Das obige ist der detaillierte Inhalt vonWie kann ich die SecureRandom-Leistung von Java beschleunigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn