Ga naar hoofdinhoud
LibraTool logoLibraTool

Gratis Willekeurige getallengenerator

Genereer willekeurige getallen in elk bereik, maak unieke getallenlijsten of rol dobbelstenen. Gebruikt cryptografisch veilige willekeur.

Werkt offline na het laden

🔒 Elk getal maakt gebruik van de cryptografisch veilige willekeurigheid van de browser (crypto.getRandomValues) — echt willekeurig, niet het voorspelbare Math.random(). Er wordt niets verzonden. Gebruik deze getallen desondanks niet voor cryptografische sleutelgeneratie, beveiligingstokens of gereguleerde loterij-/goktoepassingen, waarvoor gecertificeerde, hardware-gebaseerde willekeurigheidsbronnen vereist zijn.

Wil je een winnaar uit een lijst met namen kiezen, of een munt opgooien? Gebruik de tool Munt opgooien, Rad draaien en Lijstkiezer →

Veelvoorkomend gebruik

  • Genereer LoterijnummersKies willekeurige loterijnummers voor Powerball, Mega Millions, EuroMillions en andere loterijkansen.
  • Kies Willekeurige Winnaar voor GiveawaysKies eerlijk een willekeurige winnaar uit een genummerde inzendinglijst voor wedstrijden en giveaways.
  • Gooi Dobbelstenen voor BordspellenGooi elke dobbelsteencombinatie - d4, d6, d8, d10, d12, d20, d100 - voor D&D en tafelrollenspelen.
  • Willekeurige Steekproefname voor OnderzoekGenereer willekeurige steekproeven, wijs willekeurige ID's toe of selecteer een willekeurige subset uit een genummerde dataset.
  • Genereer Willekeurige Getallen TestgegevensMaak grote lijsten met willekeurige getallen voor het testen van algoritmen, het vullen van databases en het stresstest van systemen.

Hoe het werkt

Elk getal dat deze tool genereert komt van crypto.getRandomValues — de cryptografisch veilige bron van willekeur van de browser, dezelfde die voor het genereren van TLS-sleutels wordt gebruikt. Daarbovenop zit een zelfgeschreven algoritme voor rejection sampling om de modulovertekening te elimineren waar eenvoudige implementaties met Math.random() % bereik last van hebben, ook voor bereiken groter dan 2^32 via BigInt-rekenkunde.

  1. 1
    Stel je bereik en modus in
    Kies tussen één getal, een lijst (tot 1000) of veelvlakdobbelstenen (d4 tot en met d100). Bij lijsten kun je ook unieke waarden vereisen en de uitvoer optioneel oplopend sorteren.
  2. 2
    crypto.getRandomValues levert ruwe entropie
    Elk getal komt uit een Uint32Array (of BigUint64Array voor bereiken groter dan 2^32), gevuld door de cryptografische RNG van de browser — niet Math.random(). Rejection sampling verwerpt daarna waarden die de verdeling zouden scheeftrekken, zodat elk geheel getal in je bereik precies even waarschijnlijk is.
  3. 3
    De modus unieke waarden gebruikt Fisher-Yates of het bijhouden van verworpen waarden
    Als de unieke modus aan staat en het bereik in het geheugen past (tot 100.000 waarden), maakt de tool de volledige pool aan en schudt die met Fisher-Yates. Bij heel grote bereiken trekt hij in plaats daarvan één voor één waarden en slaat herhalingen over — zo wordt het geheugengebruik van een array met miljarden items vermeden.
  4. 4
    Resultaten verschijnen met animatie en blijven in de sessiegeschiedenis
    De uiteindelijke waarden verschijnen geanimeerd (een gokkastrol voor getallen, rollende dobbelstenen in de dobbelsteenmodus) via requestAnimationFrame, en komen daarna in een scrollbare geschiedenis die je op elk moment kunt kopiëren. Er verlaat niets je browser.

Gerelateerde tools

Veelgestelde vragen