Hoe echt willekeurige getallen ontstaan: TRNG, PRNG en CSPRNG uitgelegd

A simple 3-step pipeline: Physical Source -> Sensor/Digitizer -> Binary Output.

Echte willekeurige-getallengeneratie werkt door fysieke entropie te oogsten — thermische ruis, atmosferische storing, kwantumverval — en deze chaotische analoge signalen om te zetten in digitale bits. In tegenstelling tot op algoritmes gebaseerde generatoren meten hardwaregestuurde systemen niet-deterministische omgevingsvariabelen om reeksen te produceren die wiskundig onvoorspelbaar en vrij van patronen zijn.

Hier lees je hoe de technologie werkt, waar hij faalt en hoe je de juiste aanpak kiest voor jouw toepassing.

Hoe een TRNG werkt: van fysieke chaos naar digitale bits

Een True Random Number Generator (TRNG) — ook wel Hardware Random Number Generator (HRNG) genoemd — volgt geen formule. Hij verbindt de onvoorspelbare fysieke wereld met de starre logica van digitale systemen door een externe entropiebron vast te leggen en het analoge signaal om te zetten in een binaire stroom.

Zoals John von Neumann in 1951 waarschuwde: “Anyone who considers arithmetical methods of producing random digits is, of course, in a state of sin.”

Drie veelgebruikte entropiebronnen

Bron Wat hij meet Voorbeeldapparaat
Thermische ruis Spanningsschommelingen door elektronenbeweging in circuits Secure Enclaves in smartphones (Apple A-series, Google Tensor)
Atmosferische ruis Radiostoring door natuurlijke verschijnselen zoals bliksem Specifieke RNG-servers
Kwantumfenomenen Radioactief verval, vacuümschommelingen ANU Quantum RNG, enterprise-servers

Een eenvoudige pijplijn in 3 stappen: Fysieke bron -> Sensor/Digitalisator -> Binaire uitvoer.

De pijplijn is eenvoudig: Fysieke bron → Sensor/Digitalisator → Binaire uitvoer. Aan de ene kant gaat ruwe entropie in; aan de andere kant komen schone willekeurige bits uit.

TRNG versus PRNG: de deterministische kloof

De kernsplitsing in willekeurige-getallengeneratie ligt tussen fysieke entropie en algoritmische logica.

Eigenschap TRNG (hardware) PRNG (algoritmisch) CSPRNG (hybride)
Bron Fysieke entropie Wiskundige formule Hardware-seed + algoritme
Voorspelbaar? Nee Ja — als de seed bekend is Zeer moeilijk
Snelheid Langzamer (blokkerend) Zeer snel Snel
Reproduceerbaar? Nee Ja (zelfde seed = dezelfde uitvoer) Nee
Toepassing Encryptiesleutels, beveiligingstokens Simulaties, games Productiebeveiligingssystemen

Waar PRNG’s falen: het Hot Lotto-fraude

Een PRNG gebruikt een seed-waarde als startpunt voor een wiskundige formule. De uitvoer lijkt willekeurig, maar is volledig deterministisch. Wie de seed en de formule kent, kan elk getal voorspellen.

Dit is geen theorie. Bij het Hot Lotto-fraudeschandaal installeerde een insider malware die de PRNG tijdens onderhoud dwong een voorspelbare seed te gebruiken — waarmee een jackpot van $16,5 miljoen werd gemanipuleerd.

Een heldere vergelijking tussen PRNG \(Deterministisch/Snel\) en TRNG \(Niet-deterministisch/Veilig\).

Waar PRNG’s de juiste keuze zijn

PRNG’s zijn juist beter voor taken waarbij snelheid en reproduceerbaarheid belangrijk zijn. In Monte Carlo-simulaties moeten wetenschappers dezelfde reeks herhaaldelijk draaien om resultaten te verifiëren. Omdat je dezelfde seed kunt hergebruiken, blijft de simulatie consistent — iets wat een blokkerende TRNG niet kan.

De hybride oplossing: CSPRNG

De meeste moderne systemen gebruiken een Cryptographically Secure Pseudorandom Number Generator (CSPRNG) — een hybride die een kleine hoeveelheid echte hardware-entropie haalt om een snel algoritme te seeden. Dit levert de onvoorspelbaarheid van een TRNG met de snelheid van een PRNG.

De industriestandaard is NIST SP 800-90A, die definieert hoe deze generatoren gebouwd moeten worden voor overheidsond en industrieel gebruik.

Ontwikkelaarshandleiding: welke library kiezen

Taal Onveilig (PRNG) Veilig (CSPRNG)
Python random (Mersenne Twister) secrets (leest uit /dev/urandom)
JavaScript Math.random() crypto.getRandomValues()
Go math/rand crypto/rand
Java java.util.Random java.security.SecureRandom

De regel: gebruik secrets / crypto / SecureRandom voor alles wat met beveiliging te maken heeft. Gebruik random / Math.random() alleen voor games en simulaties.

TRNG’s in consumentenhardware in 2026

Tegen 2026 is hardware-entropie verhuisd van enterprise-servers naar alledaagse apparaten. Moderne smartphone-chips bevatten speciale TRNG’s in hun Secure Enclaves, die direct thermische ruis uit de processor oogsten om encryptiesleutels te genereren voor FaceID, digitale wallets en beveiligde berichtenuitwisseling.

Voor enterprise-beveiliging ligt de grens bij Quantum Random Number Generation. Systemen zoals die van de Australian National University genereren getallen uit kwantum-vacuümschommelingen — een mate van willekeur die zelfs toekomstige kwantumcomputers waarschijnlijk niet kunnen kraken.

Whitening: van ruwe ruis naar schone data

Ruwe entropie is zelden uniform. Een thermische sensor produceert door een temperatuursdrift misschien iets meer enen dan nullen. Om deze bias te corrigeren gaat de data door whitening — meestal een XOR-bewerking of een cryptografische hash — om patronen glad te strijken en een gelijkmatige verdeling te garanderen.

Deze nabewerkingsstap wordt voorgeschreven door NIST SP 800-90B voor elke entropiebron die in een gecertificeerd systeem wordt gebruikt.

Een korte geschiedenis van het oogsten van chaos

  • 1927: L.H.C. Tippett publiceerde een tabel van 41.600 cijfers die handmatig uit volkstellingsgegevens werden overgenomen.
  • 1955: De RAND Corporation publiceerde A Million Random Digits met behulp van een elektronische pulsmachine.
  • 2013: Het Dual_EC_DRBG-schandaal onthulde dat de NSA een achterdeur had geplaatst in een NIST-gecertificeerde generator, waardoor ze SSL-verbindingen konden kraken. Dit incident dreef de sector naar entropiemenging met meerdere bronnen — geen enkel storingspunt meer.

Conclusie

Echt willekeurige getallen vormen de basis van digitaal vertrouwen. Ze vereisen fysieke hardware om voorspelbare code te verbinden met chaotische realiteit. Of het nu gaat om thermische ruis in je telefoon of kwantumschommelingen in een serverruimte, de verschuiving van pseudo-willekeur naar hardware-geverifieerde entropie is essentieel voor beveiliging in 2026.

Voor ontwikkelaars: gebruik secrets (Python) of crypto.getRandomValues() (JavaScript), nooit random of Math.random() voor beveiliging. Voor organisaties: hardware-TRNG’s zijn niet langer optioneel — ze vormen een basisvereiste voor encryptie.

FAQ

Is de interne klok van mijn computer een bron van echte willekeur?

Nee. De klok is voorspelbaar en wordt juist vaak als PRNG-seed gebruikt omdat hij verandert. Maar als een aanvaller ongeveer weet wanneer een getal is gegenereerd, kan hij de mogelijkheden beperken. Echte willekeur vereist het timen van niet-deterministische gebeurtenissen — toetsaanslag-intervallen, thermische ruis — gevolgd door statistische whitening.

Kan een mens een echt willekeurige reeks genereren?

Mensen zijn slecht in willekeur. We vermijden clusters (zoals “1, 1, 1”) zelfs al komen ze van nature voor in willekeurige verzamelingen, en we wisselen te vaak tussen opties. Statistische tests detecteren deze patronen gemakkelijk, waardoor menselijke input acceptabel is voor seeding maar onvoldoende voor beveiligingskritieke taken.

Welke statistische tests verifiëren echte willekeur?

De NIST Statistical Test Suite (STS) is de gouden standaard. Andere frameworks zijn de Dieharder-tests en de AIS 31-standaard. Deze tests speuren naar herhalende patronen, lange reeksen identieke bits en andere anomalieën die wijzen op bias of voorspelbaarheid.

Reacties

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *