Generatore UUID
Genera UUID v4 e v7 direttamente nel browser, senza inviare nulla a un server.
Premi «Genera» per creare gli UUID.
Cos'è un UUID
Un UUID (Universally Unique Identifier) è un identificatore a 128 bit usato per distinguere in modo univoco entità — record di database, file, messaggi, sessioni — senza bisogno di un'autorità centrale che assegni i numeri. Si rappresenta come 32 cifre esadecimali divise in cinque gruppi separati da trattini, per esempio 550e8400-e29b-41d4-a716-446655440000. Lo standard è definito dalla RFC 9562, che aggiorna la storica RFC 4122.
La versione 4 è completamente casuale: 122 dei 128 bit sono prodotti da un generatore di numeri casuali crittografico. La probabilità di collisione è così bassa da essere trascurabile nella pratica, il che rende gli UUID v4 perfetti come chiavi che non rivelano alcuna informazione sull'ordine di creazione o sul contenuto.
La versione 7 inserisce nei primi 48 bit un timestamp Unix in millisecondi, seguito da bit casuali. Il risultato è un identificatore ordinabile nel tempo: due UUID v7 generati in momenti diversi mantengono l'ordine cronologico anche confrontati come semplici stringhe. Per questo sono ideali come chiavi primarie nei database, dove migliorano la località degli indici rispetto agli UUID puramente casuali. Questo strumento genera entrambe le versioni interamente nel tuo browser tramite l'API Web Crypto: nessun valore viene mai inviato a un server.
In pratica gli UUID si usano ovunque serva un identificatore univoco generato in modo distribuito, senza dover coordinare più sistemi o istanze: chiavi primarie di database, ID di richieste per il tracciamento nei log, chiavi di idempotenza per le API di pagamento, identificatori di sessione, nomi di file caricati dagli utenti. A differenza di un contatore auto-incrementante, un UUID può essere generato lato client, offline, o in parallelo da migliaia di server senza rischio di collisioni e senza dover interrogare un database per ottenere il valore successivo.
Una scelta comune è tra UUID v4 e chiavi auto-incrementanti: queste ultime sono più compatte e velocissime da indicizzare, ma rivelano quante righe esistono e in che ordine sono state create, e richiedono un unico punto di generazione. Gli UUID v4 risolvono questi problemi ma, essendo casuali, degradano le prestazioni degli indici B-tree nelle tabelle molto grandi, perché ogni inserimento finisce in una posizione casuale dell'albero. Gli UUID v7 nascono proprio per questo: mantenendo l'ordinamento temporale, gli inserimenti restano vicini nell'indice, offrendo il meglio di entrambi i mondi. Esistono anche le versioni 1, 3 e 5 (basate su MAC address o hash), ma sono meno usate oggi: questo strumento si concentra su v4 e v7, le scelte più comuni per le applicazioni moderne. Vale la pena conoscere anche lo speciale UUID «nil», tutto a zeri (00000000-0000-0000-0000-000000000000), definito dallo stesso standard e a volte usato come valore sentinella per indicare «nessun ID» anziché un vero identificatore.
Domande frequenti
- Gli UUID vengono generati su un server?
- No. La generazione avviene interamente nel tuo browser tramite l'API crypto.getRandomValues. Nessun UUID viene trasmesso o salvato: dopo il primo caricamento della pagina puoi usare lo strumento anche offline.
- Qual è la differenza tra UUID v4 e v7?
- Gli UUID v4 sono completamente casuali e non contengono informazioni sul momento di creazione. Gli UUID v7 incorporano un timestamp in millisecondi all'inizio, quindi sono ordinabili cronologicamente e più efficienti come chiavi primarie di database.
- Gli UUID sono garantiti unici?
- Non in senso matematico assoluto, ma la probabilità di generare due UUID identici è così bassa da essere trascurabile: servirebbero miliardi di UUID al secondo per moltissimi anni prima di avere una possibilità concreta di collisione.