Random Number Generator

Random Number Generator

Free client-side developer and designer tool.

Zahlenformat-Standard (EU / Intl)
Stichprobengröße (N)0
Arithmetisches Mittel (x̄)0.00
Chi-Quadrat p-Wertp = 1
Shannon-Entropiedichte0 bits
Generator-Konfiguration & Parameter
CSPRNG
Untergrenze (Min)
Obergrenze (Max)
10
Ohne Zurücklegen (Keine Duplikate)Jeder Wert wird maximal einmal gezogen (eindeutige Stichprobe)
Dezimalstellen (Genauigkeit)Anzahl der Nachkommastellen (0 für ganze Zahlen)
Generierte Zahlenfolge(0 Beobachtungen (Stichprobe))
Technische Referenz & Architektur-Leitfaden

Zufallsgenerator & Echter RNG — Referenzhandbuch

Hochleistungsfähiger kryptografischer und seed-basierter Zufallszahlengenerator. Erzeugen Sie echte Zufallszahlen, Dezimalwerte, Normalverteilungen und Ziehungen mit Echtzeit-Chi-Quadrat-Gleichverteilungsanalyse und Sofortexport.

Zufallsgenerator & Echter RNG — Referenzhandbuch — Client-seitige In-Memory-Architektur und Datenfluss
Zufallsgenerator & Echter RNG — Referenzhandbuch — Client-seitige In-Memory-Architektur und Datenfluss

Wichtige Parameter & Einstellungen

Wertebereich (Min & Max)integer | float

Geschlossenes Intervall [a, b] für alle generierten Werte. Unterstützt sichere 64-Bit-Ganzzahlen bis ±9.007.199.254.740.991.

Standard: 1 bis 100
Stichprobengröße (Anzahl N)integer

Gesamtanzahl der pro Durchlauf generierten Zufallswerte. Unterstützt 1 bis 10.000 Werte ohne Blockieren des Browser-Hauptthreads.

Standard: 1
Entropie-Engine & QuelleCSPRNG | Mulberry32 PRNG

Wahl zwischen kryptografisch unvorhersehbarer Hardware-Entropie (window.crypto) und deterministischer, seed-reproduzierbarer Pseudozufälligkeit.

Standard: CSPRNG (Web Crypto)
VerteilungsalgorithmusUniform | Gaussian | Exponential

Steuert die Wahrscheinlichkeitsdichte: Gleichverteilung für identische Chancen, Gaußsche Normalverteilung via Box-Muller-Transformation oder Exponentialverteilung für Poisson-Ereignisabstände.

Standard: Gleichverteilung (Uniform)
Ziehungsmodus (Zurücklegen)Allow Duplicates | Unique (Without Replacement)

Im Modus ohne Zurücklegen (Unique) garantiert das Fisher-Yates-Sampling absolute Duplikatfreiheit (erfordert Anzahl N <= Max - Min + 1).

Standard: Mit Zurücklegen (Duplikate erlaubt)

Profi-Tipps & Best Practices

Modulo-Bias: Warum der Divisionsrest echte Zufälligkeit verfälscht

Standardimplementierungen berechnen Bereiche oft über Math.floor(rng() * (max - min + 1)) oder Modulo-Operationen (random % range). Ist der Entropiebereich kein ganzzahliges Vielfaches des Zielintervalls, erhalten kleinere Zahlen eine statistisch unfaire Mehrwahrscheinlichkeit (Modulo-Bias). Dieses Werkzeug erzwingt Rejection Sampling auf 32-Bit-Ganzzahlen ohne Vorzeichen (uint32), um eine mathematisch exakte Gleichverteilung jedes Werts zu garantieren.

Vorhersehbarkeit von Math.random() vs. CSPRNG-Hardware-Entropie

V8 und moderne JavaScript-Engines nutzen für Math.random() den Algorithmus xorshift128+, der auf Ausführungsgeschwindigkeit statt kryptografische Sicherheit optimiert ist. Nach nur 2 bis 3 aufeinanderfolgenden 64-Bit-Gleitkommazahlen kann der interne 128-Bit-Zustand per Z3-SMT-Solver vollständig rekonstruiert und künftige Werte exakt vorhergesagt werden. Verwenden Sie für Verlosungen, Token-Generierung, Kryptografie und Gewinnspiele stets die CSPRNG-Engine.

Box-Muller-Transformation für fehlerfreie Gauß-Normalverteilung

Zur Erzeugung kontinuierlicher Glockenkurven transformiert das System zwei unabhängige, standard-gleichverteilte Zufallsvariablen U1, U2 in (0, 1) in standardnormalverteilte Größen: Z0 = sqrt(-2 * ln(U1)) * cos(2 * pi * U2). Unsere Engine führt diese Berechnung mit doppelter Genauigkeit durch und skaliert linear über mu + Z0 * sigma – anstelle ungenauer 12-Würfel-Näherungen des zentralen Grenzwertsatzes.

Häufige Fehlerquellen & Fehlerbehebung

⚠️Fehler beim Ziehen ohne Wiederholung: Stichprobengröße übersteigt Wertebereich

Bei der Ziehung ohne Zurücklegen (Unique) greift das mathematische Schubfachprinzip (Dirichlet-Prinzip): Die Anzahl N darf die Gesamtmenge der Werte im Intervall (Max - Min + 1) nicht überschreiten. Aus dem Bereich 1 bis 50 können mathematisch unmöglich 60 eindeutige Zahlen gezogen werden. Erweitern Sie das Intervall [Min, Max], verringern Sie die Anzahl oder aktivieren Sie das Zurücklegen von Duplikaten.

⚠️Chi-Quadrat-Anpassungstest zeigt bei kleinen Stichproben hohe Varianz oder p-Wert-Abweichungen

Der Pearson-Chi-Quadrat-Test folgt der theoretischen Chi-Quadrat-Verteilung asymptotisch nur dann zuverlässig, wenn die erwartete Häufigkeit pro Klassenintervall (Bin) E_i >= 5 beträgt. Bei sehr kleinen Stichproben (z. B. N = 20 auf 10 Bins mit E_i = 2) erzeugt die natürliche Poisson-Varianz zwangsläufig extreme p-Werte. Für statistisch belastbare Gleichverteilungsprüfungen sollten mindestens 500 bis 1.000 Zufallszahlen generiert werden.

Häufig gestellte Fragen (FAQ)

Wie generiert man echte Zufallszahlen ohne Duplikate?▼

Zur Ziehung ohne Wiederholung verwendet der Generator den Fisher-Yates-Shuffle-Algorithmus. Ausgehend von einem Werte-Array von Min bis Max wählt das Verfahren iterativ kryptografisch sichere Zufallsindizes und tauscht diese mit der aktuellen Position. Dadurch werden N eindeutige Werte in linearer O(N)-Laufzeit ermittelt, wobei jede Permutation exakt dieselbe mathematische Auftrittswahrscheinlichkeit besitzt.

Was unterscheidet CSPRNG von einfachen Pseudozufallsgeneratoren?▼

Ein Pseudozufallsgenerator (PRNG) berechnet Zahlenfolgen deterministisch anhand einer mathematischen Rekursionsformel ausgehend von einem Initial-Seed. Ist der Startwert bekannt, ist die gesamte Sequenz vorhersehbar. Ein kryptografisch sicherer Zufallsgenerator (CSPRNG) wie window.crypto.getRandomValues greift auf unvorhersehbare physikalische Entropie des Betriebssystems zu (z. B. thermisches Rauschen und Hardware-Interrupts) und besteht den Next-Bit-Test, sodass kein Polynomialzeit-Algorithmus Folgebits erraten kann.

Wie werden normalverteilte Zufallszahlen nach Gauß generiert?▼

Der Generator wendet die Box-Muller-Transformation an, um zwei unabhängige, gleichverteilte Zufallsvariablen in zwei standardnormalverteilte Zufallsgrößen mit Erwartungswert 0 und Standardabweichung 1 umzurechnen. Das Ergebnis wird anschließend über X = mu + Z * sigma skaliert, wodurch sich reale Prozesse wie Messabweichungen, IQ-Verteilungen, Finanzmarktrenditen oder biometrische Daten realitätsgetreu abbilden lassen.

Wie weist der Chi-Quadrat-Test die Gleichverteilung der Zahlen nach?▼

Der Chi-Quadrat-Anpassungstest unterteilt das Intervall [Min, Max] in k gleich große Intervalle (Bins) und berechnet die Prüfgröße chi2 = sum((Beobachtet - Erwartet)^2 / Erwartet) mit Erwartet = N / k. Durch Abgleich mit der Chi-Quadrat-Verteilung bei k - 1 Freiheitsgraden wird der p-Wert bestimmt: Ein Wert zwischen 0,05 und 0,95 bestätigt mit hoher statistischer Zuverlässigkeit, dass die beobachtete Verteilung einer echten theoretischen Gleichverteilung entspricht.

Warum ist JavaScripts Math.random() für Kryptografie oder Lotterien ungeeignet?▼

Math.random() ist in modernen Web-Browsern weder kryptografisch sicher noch deterministisch seed-bar. Die verwendeten PRNG-Algorithmen (wie xorshift128+ in Google Chrome/V8 oder PCG in Apple Safari/WebKit) besitzen einen vergleichsweise kleinen Zustandsraum. Durch die Analyse weniger aufeinanderfolgender Werte lässt sich der interne Zustand vollständig rekonstruieren, was die Funktion für Gewinnspiele, Auslosungen, Token-Erstellung oder kryptografische Zwecke unsicher macht.

Verwandte Tools & Hilfsprogramme

Alle Tools →