/random

Tilfeldig tallgenerator: Generer tall online

Generer tilfeldige hele tall eller desimaltall innenfor et egendefinert område lokalt i nettleseren.

Hvordan tallgeneratoren fungerer

Dette verktøyet bruker en pseudotilfeldig tallgenerator i nettleseren for å generere tall innenfor det gitte intervallet:

  • Intervallet [Min, Maks]: Generatoren inkluderer både minimums- og maksimumsverdien du oppgir som mulige utfall.
  • Unike tall: Når du velger unike tall, vil generatoren sikre at det samme tallet ikke dukker opp flere ganger i listen. Dette krever at det er nok mulige tall i intervallet til å dekke antallet du ber om.
  • Heltall vs Desimaltall: Hele tall (integers) avrundes nedover til nærmeste heltal. Desimaltall (decimals) genereres som flyttall, der du selv kan bestemme hvor mange siffer du ønsker bak desimaltegnet.

Er dette kryptografisk sikkert?

Nei, dette verktøyet bruker standard Math.random() i JavaScript for rask klientside-generering. Dette er utmerket for uformelle trekkinger, spill, statistiske simuleringer eller enkle valg, men bør ikke brukes til sikkerhetskritiske formål som passord eller kryptografi.

Om dette verktøyet

Tilfeldige tall trengs oftere enn folk tror: du skal trekke en vinner i julekalenderen, generere test-IDer, plukke rekkefølge på foredragsholdere, eller lage sikre nøkler til API-er. Dette verktøyet gir deg tall, tekststrenger, UUID-er, terningkast, kortkort og navn ut fra flere kilder, alt kjørt i nettleseren. For enkle behov brukes Math.random(), for sikkerhetskritiske ting brukes crypto.getRandomValues() som gir kryptografisk styrke. Du kan lage et enkelt tall mellom to grenser, eller trekke uten tilbakelegging fra en liste du limer inn.

Slik bruker du det

  1. Velg type (heltall, desimaltall, streng, UUID, terning, kort osv.).
  2. Sett grenser eller lengder etter behov.
  3. Aktiver «kryptografisk sikker» hvis resultatet skal brukes til passord, tokens eller lignende.
  4. Trykk «Generer», kopier eller last ned resultatet.

Eksempler

Tilfeldig heltall 1–100
Ut73
Trekke en vinner fra liste
InnAnna Bjarne Cato Dorthe Erik
UtCato
Kryptografisk streng
Utk3F9pQ7wL2xN8vRz
Genereres med crypto.getRandomValues() og gir minst 128 bit entropi ved 16 tegn fra alfanumerisk sett.

Vanlige bruksområder

  • Trekke vinnere i konkurranser og trekninger.
  • Generere test-IDer og seed-data for utviklerdemoer.
  • Bestemme rekkefølge i møter, foredrag eller sport.
  • Lage engangs-tokens for magiske innloggingslenker.
  • Kaste virtuelle terninger i brettspill uten fysiske terninger.

Ofte stilte spørsmål

Er Math.random() sikkert nok for passord?
Nei. Math.random() bruker en pseudorandom generator som lekker tilstand og kan gjettes. Til alt sikkerhetskritisk må du bruke crypto.getRandomValues() (nettleser) eller crypto.randomBytes() (Node), som verktøyet støtter.
Hvor mange bit entropi trenger jeg?
Til sessions-tokens: 128 bit. Til API-nøkler: 256 bit. Til CSRF-tokens: 128 bit. Til en engangskode i SMS: 20–30 bit (6–8 siffer) siden den utløper raskt. Verktøyet viser entropi i footeren.
Hva er «uten tilbakelegging»?
At samme element ikke kan trekkes to ganger, som når du tar fra en lukket urne. Nyttig når du skal trekke flere unike vinnere fra samme liste.
Kan jeg reprodusere samme sekvens senere?
Ja, hvis du oppgir et seed. Aktiver «seed» i innstillingene og noter tallet, samme seed gir samme sekvens hver gang. Kryptografisk sikre generatorer støtter ikke seed, kun pseudorandom.

Teknisk bakgrunn

Datamaskiner er deterministiske, så «tilfeldighet» må enten hentes fra fysiske kilder (termisk støy, tastetrykk-timing, mus-bevegelser, radioaktivt henfall) eller simuleres deterministisk fra et seed. Nettleseren og Node har to APIer: Math.random() gir en 32-bit XorShift-lignende pseudorandom-tallstrøm som er rask men predikerbar, mens crypto.getRandomValues() (WebCrypto) trekker fra operativsystemets sikre pool (/dev/urandom på Linux, BCryptGenRandom på Windows, SecRandomCopyBytes på macOS). Passord, tokens, engangskoder og krypteringsnøkler må alltid komme fra den sikre kilden. Entropi måles i bit, der 128 bit anses som «umulig å brute-force i praksis» og 256 bit gir margin selv mot kvantefiendtlige angrep. Ved trekning fra et alfabet blir entropien log2(alfabetstørrelse) · lengde, så 16 tegn fra alfanumerisk (62 tegn) gir 16·log2(62) ≈ 95 bit, mens 24 tegn gir 143 bit.