Zufallswerte (Zufallszahlen)
Kurz: Zufallswerte sind Zahlen, die nicht vorhersehbar sein sollen. Computer erzeugen sie meist nur scheinbar zufällig mit einem Rechenverfahren.
Genauer: Ein Computer rechnet deterministisch: Gleiche Eingabe, gleiches Ergebnis. Echten Zufall liefert er nur aus der Umwelt (Rauschen, Mausbewegungen, Zeitpunkte, Hardware-Zufallsgeneratoren). Programmiersprachen bieten deshalb Pseudozufall.
Im Detail
- Pseudozufallsgenerator (PRNG): Berechnet aus einem Startwert (Seed) eine Zahlenfolge, die zufällig aussieht. Gleicher Seed ergibt die gleiche Folge. Das ist nützlich für Spiele, Simulationen und reproduzierbare Tests.
- Für Sicherheit ungeeignet: Für Passwörter, Tokens und Schlüssel braucht man einen kryptografisch sicheren Generator (CSPRNG, z. B.
crypto.getRandomValuesim Browser odersecretsin Python). NormaleMath.random()-Werte sind vorhersagbar. - Zufallszahl im Bereich: Meist erzeugt man einen Wert zwischen 0 und 1 und rechnet auf den Bereich um. Vorsicht bei Rundung und Verzerrung.
- Anwendungen: Würfel, Mischen von Karten, Lostrommel, Tests, Verschlüsselung (Verschlüsselung), Hash-Salz (Hashing).
- Rückblick im Alphabet-Thema: „Z“ steht hier für Zufallswerte.
Siehe auch: Algorithmen, Datum und Zeit