Maison >Java >javaDidacticiel >Comment puis-je optimiser les performances de SecureRandom en Java ?

Comment puis-je optimiser les performances de SecureRandom en Java ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-01 08:23:14511parcourir

How Can I Optimize SecureRandom Performance in Java?

Optimisation des performances de SecureRandom

SecureRandom, essentiel pour générer des nombres aléatoires cryptographiquement forts en Java, souffre souvent de performances médiocres, en particulier lorsqu'il s'appuie sur / dev/random sous Linux. Cette pénalité de performances peut être attribuée à son comportement bloquant lors de la collecte d'entropie.

Résoudre le problème de performances

Pour atténuer ce problème, on peut rediriger SecureRandom vers le /dev le plus rapide. /urandom en utilisant la propriété suivante :

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

Cependant, cette solution est incompatible avec Java 5 et versions ultérieures en raison d'un bug Java 6202721. Pour contourner ce problème, la modification suivante est recommandée :

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

En introduisant le préfixe "/./" supplémentaire, SecureRandom peut utiliser /dev/urandom efficacement sans sacrifier les performances. Il a été prouvé que cette solution atténue les goulots d'étranglement de performances associés à /dev/random.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn