Mikä on NanoID?

NanoID on pieni, URL-turvallinen uniikki tunnustenmuodostin JavaScriptille. Se tuottaa kompakteja satunnaisia merkkijonoja, jotka ovat tilastollisesti ainutlaatuisia - samankaltaisia kuin UUID v4, mutta oletuksena lyhyempiä (21 merkkiä vs 36) ja suunniteltu olemaan URL-ystävällisiä ilman koodausta. Jokainen merkki valitaan huolellisesti tasapainotetusta aakkosista, joten jokainen mahdollinen tunnus on yhtä todennäköinen, mikä eliminoi vinoutumisen jakaumassa.

NanoID käyttää kryptografisesti vahvaa satunnaislukugeneraattoria (crypto.getRandomValues selaimissa, crypto.randomFill Node.js:ssä), mikä tekee generoiduista tunnisteista sopivia turvallisuuskriittisissä yhteyksissä, kuten istuntotunnuksissa ja kertakäyttöisissä linkeissä. Oletuksena 21 merkin pituus antaa noin 2,1 × 10³⁰ mahdollista yhdistelmää - verrattavissa UUID v4:ään - kun taas kompakti muoto säästää kaistanleveyttä ja tallennustilaa.

Työkalun kuvaus

Tämä online-NanoID-muodostin antaa sinun luoda yhden tai useamman NanoID:n välittömästi selaimessasi ilman asennusta. Voit hallita tunnuksen pituutta, kuinka monta tunnusta luoda ja mitä aakkosista käytetään - turvallisesta oletuksesta heksadesimaalisiin, aakkosnumeerisiin, vain numeroihin tai täysin mukautettuun merkkiryhmään.

Esimerkit

Oletusaakkoset, koko 21:

V1StGXR8_Z5jdHi6B-myT
useandom-26T198340PX7
bfghjklqvwyzrictV1StG

Heksadesimaaliset aakkoset, koko 16:

3f9a1c2b4e7d0f85
a0c4e8f23b6d917c

Vain numerot, koko 8:

04817263
93571048

Mukautetut aakkoset (abc123), koko 12:

b2ca31b1ca2b
3a1c2b3c1ab2

Ominaisuudet

  • Säädettävä pituus: Aseta tunnuksen koko 1-64 merkkiin (oletuksena 21)
  • Joukkoluonti: Luo jopa 1 000 tunnusta kerralla
  • Aakkosesiasetukset: Valitse oletuksesta, numeroista, pieninä kirjaimina, suurina kirjaimina, aakkosnumeerisista, heksadesimaalisista, suurista heksadesimaalisista, ei-samankaltaisista tai täysin mukautetusta merkkiryhmästä

Vaihtoehdot selitettynä

Vaihtoehto Kuvaus
Koko Merkkien määrä kussakin generoidussa tunnisteessa (1-64). Oletuksena 21 antaa ~126 bittiä entropiaa, vastaa UUID v4:ää.
Määrä Kuinka monta tunnusta luoda yhdessä erässä (1-1 000).
Aakkoset Merkkiryhmä, josta valita. Suuremmat, monipuolisemmat aakkoset lisäävät entropiaa merkkiä kohti.
Mukautetut aakkoset Näkyvissä kun Mukautettu on valittu. Kirjoita mitkä tahansa merkit; duplikaatit poistetaan automaattisesti vinoutuneen jakauman estämiseksi.

Kuinka se toimii

NanoID valitsee jokaisen merkin generoimalla satunnaisen tavun, maskaamalla sen aakkoskoon mukaan ja yrittämällä uudelleen, jos tulos putoaa kelvollisen alueen ulkopuolelle - tekniikka nimeltään hylkäysnäytteistö. Tämä varmistaa täysin tasaisen jakauman kaikissa aakkosmerkeissä riippumatta siitä, onko aakkoskoko kahden potenssi. Oletusaakkoset (useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict) ovat URL-turvallisia (ei +, / tai =) ja sisältävät 64 merkkiä, joten jokainen merkki kantaa tarkalleen 6 bittiä entropiaa.