Man sollte einen kryptographisch sicheren Zufallszahlengenerator (CSPRNG) verwenden. Z. B. SecureRandom in Java, secrets in Python oder Crypto in JavaScript. Ein CSPRNG weist u. a. folgende Eigenschaften auf:
- Nicht vorhersagbar, auch wenn bereits einige Zufallszahlen bekannt sind
- Vorhergehende Zufallszahlen können ebenfalls nicht bestimmt werden
- Erzeugt Zufallsfolgen mit statistisch gleichvielen Nullen und Einsen
Normale PRNGs erfüllen nur die dritte Eigenschaft. Sind also einige Zufallszahlen bekannt, könnte man vorherige und nachfolgende Zufallszahlen bestimmen.
Laut ChatGPT: