DevToolPal
IT

Generatore di Nano ID

Genera Nano ID: identificatori univoci brevi e sicuri per URL, con casualità crittografica, lunghezza a scelta, alfabeti predefiniti o personalizzati e una stima delle collisioni.

Eseguito in locale, mai caricato

Opzioni

126 bit per ID · circa 1,3 × 10¹⁸ ID per l’1% di probabilità di collisione

Nano ID

0 caratteri · 0 B

Cosa fa

Questo strumento genera Nano ID: identificatori brevi, casuali e sicuri per URL da usare come chiavi di database, nomi di file, slug di link brevi, codici d’invito o dati di test. Segue lo stesso metodo della libreria Nano ID, quindi gli ID hanno lo stesso aspetto e comportamento di quelli creati da nanoid() nel tuo codice.

Puoi cambiare la lunghezza, scegliere uno degli alfabeti integrati o inserirne uno tuo e generare fino a 1000 ID alla volta. Sotto le opzioni vedi l’entropia per ID e all’incirca quanti ID puoi creare prima che la probabilità di un duplicato arrivi all’1%.

Come si usa

  1. Scegli la Lunghezza. 21 è il valore predefinito di Nano ID.
  2. Scegli un Alfabeto: sicuro per URL, alfanumerico, minuscole, esadecimale, numeri, senza caratteri ambigui o personalizzato.
  3. Scegli la Quantità di ID. Vengono generati appena cambi un’impostazione.
  4. Fai clic su Genera per un nuovo lotto, poi copia o scarica l’elenco, un ID per riga.

Esempio

Gli stessi ID in JavaScript con il pacchetto nanoid:

import { nanoid, customAlphabet } from 'nanoid'

nanoid() // "V1StGXR8_Z5jdHi6B-myT"
const orderId = customAlphabet('0123456789ABCDEFGHJKLMNPQRSTUVWXYZ', 12)
orderId() // "4KQ7ZB9XH2MD"

Come scegliere l’alfabeto

L’alfabeto sicuro per URL mette più casualità in ogni carattere e non richiede escape in URL, nomi di file o JSON. L’alfanumerico toglie _ e -, utile quando gli ID si selezionano con un doppio clic. Esadecimale e numeri servono quando un sistema accetta solo quei caratteri, ma richiedono ID più lunghi per la stessa robustezza. Il set senza caratteri ambigui elimina caratteri come 0 e O oppure 1, l e I, così gli ID sono più facili da leggere e digitare a mano.

Domande frequenti

› Che cos’è un Nano ID?

Nano ID è un formato e una popolare libreria JavaScript per identificatori univoci casuali. L’ID predefinito ha 21 caratteri presi da un alfabeto sicuro per URL di 64 caratteri (A–Z, a–z, 0–9, _ e -), per 126 bit di casualità, vicino ai 122 bit di un UUID v4 in una stringa molto più corta.

› Quanto devono essere lunghi gli ID?

Dipende da quanti ID creerai. La stima sotto le opzioni indica all’incirca quanti ID danno l’1% di probabilità che due siano uguali. I 21 caratteri predefiniti sono sicuri per quasi ogni sistema; per link brevi o codici d’invito spesso bastano 10–12 caratteri, insieme a un controllo di unicità nel database.

› Sono abbastanza casuali per usi di sicurezza?

I caratteri provengono dal generatore crittografico di numeri casuali del browser, e i valori che non rientrano nell’alfabeto vengono scartati anziché ridotti con il modulo, quindi ogni carattere è ugualmente probabile. Gli ID lunghi vanno bene come token non indovinabili. Nulla viene inviato a un server.

› Posso usare caratteri miei?

Sì. Scegli Personalizzato e scrivi l’alfabeto, per esempio solo maiuscole per codici da leggere ad alta voce. Servono da 2 a 256 caratteri diversi; i caratteri ripetuti vengono rifiutati perché renderebbero alcuni caratteri più probabili di altri.