Vad är NanoID?

NanoID är en liten, URL-säker unik ID-generator för JavaScript. Den producerar kompakta slumpmässiga strängar som är statistiskt unika — liknar UUID v4, men kortare som standard (21 tecken mot 36) och utformad för att vara URL-vänlig utan någon kodning. Varje tecken väljs från ett noggrant balanserat alfabet så att varje möjligt ID är lika sannolikt, vilket eliminerar bias i fördelningen.

NanoID använder en kryptografiskt stark slumptalsgenerator (crypto.getRandomValues i webbläsare, crypto.randomFill i Node.js), vilket gör de genererade ID:na lämpliga för säkerhetskänsliga sammanhang såsom sessionstokens och engångslänkar. Standardlängden på 21 tecken ger ungefär 2,1 × 10³⁰ möjliga kombinationer — jämförbar med UUID v4 — medan det kompakta formatet sparar bandbredd och lagringsutrymme.

Verktygsbeskrivning

Denna online-NanoID-generator låter dig skapa en eller flera NanoID:n direkt i din webbläsare utan installation. Du kan kontrollera ID-längden, hur många ID:n som ska genereras och vilket alfabet som används — från den säkra standarden till hex, alfanumerisk, endast siffror eller en helt anpassad teckenuppsättning.

Exempel

Standardalfabet, storlek 21:

V1StGXR8_Z5jdHi6B-myT
useandom-26T198340PX7
bfghjklqvwyzrictV1StG

Hex-alfabet, storlek 16:

3f9a1c2b4e7d0f85
a0c4e8f23b6d917c

Endast siffror, storlek 8:

04817263
93571048

Anpassat alfabet (abc123), storlek 12:

b2ca31b1ca2b
3a1c2b3c1ab2

Funktioner

  • Justerbar längd: Ställ in ID-storleken från 1 till 64 tecken (standard 21)
  • Massgeneration: Generera upp till 1 000 ID:n på en gång
  • Alfabetförinställningar: Välj mellan Standard, Siffror, Gemener, Versaler, Alfanumerisk, Hex, Versaler Hex, Ingen-Look-Alikes eller en helt anpassad teckenuppsättning
  • Ingen-Look-Alikes-förinställning: Tar bort tecken som är visuellt tvetydiga (t.ex. 0, O, I, l) för läsbara ID:n
  • Ladda ned som fil: Spara alla genererade ID:n till nanoids.txt med ett klick

Användningsfall

  • Applikationsutveckling: Använd NanoID:n som primärnycklar i databaser eller som postidentifierare i API:er där en kort, URL-säker sträng föredras framför ett fullständigt UUID.
  • Tokengenerering: Generera korta slumpmässiga tokens för lösenordsåterställningslänkar, inbjudningskoder eller referralsluggar där läsbarhet och URL-säkerhet är viktiga.
  • Testning och mockdata: Producera snabbt en batch med realistiska unika identifierare för att fylla testfixtures eller prototypdata.

Alternativ förklarade

Alternativ Beskrivning
Storlek Antal tecken i varje genererat ID (1–64). Standarden på 21 ger ~126 bitar entropi, motsvarande UUID v4.
Kvantitet Hur många ID:n som ska genereras i en batch (1–1 000).
Alfabet Teckenpoolen att välja från. Större, mer varierade alfabet ökar entropin per tecken.
Anpassat alfabet Synligt när Anpassad är vald. Ange valfria tecken; dubbletter tas bort automatiskt för att förhindra en skev fördelning.

Hur det fungerar

NanoID väljer varje tecken genom att generera en slumpmässig byte, maskera den för att passa alfabetstorleken och försöka igen om resultatet faller utanför det giltiga intervallet — en teknik som kallas rejection sampling. Detta säkerställer en perfekt platt fördelning över alla alfabettecken oavsett om alfabetstorleken är en potens av två. Standardalfabetet (useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict) är URL-säkert (ingen +, / eller =) och har 64 tecken, vilket gör att varje tecken bär exakt 6 bitar entropi.