Satunnaislukugeneraattori
Asetukset
Tuloste
Tekniset tiedot
Miten satunnaislukugeneraattori toimii
Mitä työkalu tekee
Satunnaislukugeneraattori tuottaa kryptografisesti vahvoja satunnaisia kokonaislukuja tai liukulukuja Web Crypto API:n (crypto.getRandomValues) avulla. Se käyttää hylkäysotantaa modulo-vääristymän poistamiseksi ja varmistaa tasaisen jakauman millä tahansa määritetyllä välillä. Voit luoda yksittäisiä arvoja tai satunnaislukujen eriä, joissa minimi-, maksimi- ja tarkkuusasetukset ovat määritettävissä.
Yleiset kehittäjien käyttötapaukset
Kehittäjät käyttävät kryptografisia satunnaislukugeneraattoreita tietoturvakriittisiin tehtäviin, kuten arvaamattomien istuntotunnisteiden, nonce-arvojen, lottovalintojen tai satunnaisotannan tuottamiseen aineistoista. Pelikehittäjät käyttävät niitä noppien heittoihin ja proseduraaliseen generointiin, kun reiluus on tärkeää. QA-insinöörit luovat satunnaisia testisyötteitä fuzz-testaukseen, ja data-analyytikot käyttävät niitä satunnaisotantaan, kun toistettavuutta ei vaadita.
Tietomuodot, tyypit tai variantit
Työkalu tukee kokonaislukujen generointia mielivaltaisella välillä (rajat mukaan lukien) sekä liukulukujen generointia määritettävällä desimaalitarkkuudella. Hylkäysotanta hylkää arvot, jotka aiheuttaisivat modulo-vääristymää, kun väli ei jaa satunnaislähteen tulostusavaruutta tasan. Taustalla oleva entropia tulee käyttöjärjestelmän CSPRNG:stä (CryptGenRandom Windowsissa, /dev/urandom Unixissa), joka välitetään selaimen Web Crypto API:n kautta.
Yleiset sudenkuopat ja reunatapaukset
Kryptografinen satunnaisuus on hitaampaa kuin Math.random() ja tarpeetonta ei-tietoturvakäytöissä, kuten soittolistan sekoittamisessa. Hylkäysotanta voi teoriassa kiertää monta kertaa patologisilla väleillä, mutta käytännössä tämä on merkityksetöntä. Selaimessa luotuja satunnaislukuja ei voi siementää toistettavuutta varten — jos tarvitset deterministisiä jaksoja testaukseen, käytä sen sijaan siemenellistä PRNG:tä. Suurin turvallinen kokonaislukuväli on rajattu JavaScriptin Number.MAX_SAFE_INTEGER:iin (2^53 - 1).
Milloin käyttää tätä työkalua vs. koodia
Käytä tätä selaintyökalua, kun tarvitset nopeasti puolueettoman satunnaisluvun kertaluonteiseen päätökseen, manuaaliseen testaukseen tai varmistaaksesi, että oma toteutuksesi tuottaa arvoja odotetuilla alueilla. Tuotantokäytössä kutsu crypto.getRandomValues() suoraan koodissasi tai käytä kielen omia CSPRNG-funktioita (secrets-moduuli Pythonissa, SecureRandom Javassa), jotka integroituvat sovelluksesi virheenkäsittelyyn ja lokitukseen.