Slumpgenerator - En pseudoslumpgenerator
En slumpmässig nummergenerator (RNG) är en pseudoslumpmässig nummergenerator. Det är ett verktyg som används för att generera en sekvens av nummer som har egenskapen slumpmässighet, dvs. varje nummer i sekvensen är oberoende av de andra och därmed också från de föregående och efterföljande numren. En sådan sekvens är lämplig för generering av en stor mängd slumpmässiga nummer i praktiken.
För att ha en bra chans att få ett slumpmässigt nummer bör RNG vara oförutsägbart och inte upprepningsbart. Det bör inte vara förutsägbart. Dock är den sekvens som genereras av RNG inte nödvändigtvis en serie slumpmässiga nummer. Därför är det viktigt att ha ett sätt att skilja en verkligt slumpmässig sekvens från en serie som inte är verkligt slumpmässig. En slumpmässig nummergenerator baserad på fysiska fenomen kallas en verklig slumpmässig nummergenerator, eller TRNG. En sådan generator är baserad på fenomen som inte är föremål för mänsklig kontroll och därmed är sekvensen som genereras av en sådan generator verkligt slumpmässig.
Genereringen av slumpmässiga nummer i verkliga scenarier är inte en enkel uppgift. Till exempel behöver du en fysisk objekt för att generera de slumpmässiga numren för att göra tärningskastare. Om du använder en dator kan du använda en TRNG, som genererar sekvensen av nummer med hjälp av egenskaperna hos ett fysiskt fenomen som termiskt brus eller andra kvantfenomen. En TRNG bör inte förväxlas med en pseudoslumpmässig nummergenerator. Den förra genererar inte nummer från ett begränsat antal möjligheter medan den senare gör det. En pseudoslumpmässig nummergenerator är baserad på matematiska egenskaper och är därmed lättare att generera en sekvens av nummer.