Generatore UUID
UUID versione 4 casuali, da uno a cento alla volta, da copiare come elenco. Provengono dal generatore di numeri casuali crittograficamente sicuro del browser, e un verificatore indica la versione e la variante di qualsiasi UUID incollato.
0 caratteri · 0 parole · 0 righe
Funziona interamente in questa scheda del browser. Il testo non viene mai caricato né salvato.
Versioni UUID
La versione è la prima cifra del terzo gruppo; la variante è codificata nella prima cifra del quarto gruppo (8, 9, a o b per gli UUID RFC). Gli esempi sono i vettori di test della RFC 9562.
| Versione | Basato su | Esempio |
|---|---|---|
| v1 | Timestamp gregoriano + ID del nodo (MAC) | c232ab00-9414-11ec-b3c8-9f6bdeced846 |
| v3 | Hash MD5 di namespace + nome | 5df41881-3aed-3515-88a7-2f4a814cf09e |
| v4 | 122 bit casuali | 919108f7-52d1-4320-9bac-f847db4148a8 |
| v5 | Hash SHA-1 di namespace + nome | 2ed6657d-e927-568b-95e1-2665a8aea6a2 |
| v6 | Timestamp v1 riordinato per ordinare gli ID cronologicamente | 1ec9414c-232a-6b00-b3c8-9f6bdeced846 |
| v7 | Millisecondi Unix + bit casuali, ordinabile | 017f22e2-79b0-7cc3-98c4-dc0c0c07398f |
| v8 | Struttura personalizzata definita dall'applicazione | 2489e9ad-2ee2-8e00-8ec9-32d5f69181c0 |
Che cos'è un UUID e come si legge
Un UUID (universally unique identifier, chiamato GUID nei software Microsoft) è un numero a 128 bit scritto come 32 cifre esadecimali in gruppi 8-4-4-4-12, per esempio f47ac10b-58cc-4372-a567-0e02b2c3d479. È stato standardizzato nel 2005 con la RFC 4122; a maggio 2024 quel documento è stato sostituito dalla RFC 9562, che mantiene le versioni precedenti e ne aggiunge tre nuove. Due posizioni sono fisse: la prima cifra del terzo gruppo indica la versione (il 4 in 4372), mentre la prima cifra del quarto gruppo indica la variante, che è 8, 9, a o b per ogni UUID conforme alla RFC.
La versione 4 riempie gli altri 122 bit con dati casuali. Lo spazio è così vasto che servirebbe generarne circa 2,7 trilioni di miliardi (2,7 × 10¹⁸) per avere il 50% di probabilità di un solo duplicato: per questo i sistemi creano ID v4 in modo indipendente su molte macchine, senza coordinarsi. Questa pagina usa crypto.randomUUID, oppure crypto.getRandomValues quando non è disponibile, e mai Math.random, il cui risultato non è progettato per essere imprevedibile. Le opzioni Maiuscole e Senza trattini cambiano solo la formattazione: il valore resta lo stesso e la maggior parte dei parser accetta entrambe le forme.
v4, v7 e le altre versioni
Le versioni 1 e 6 sono costruite da un timestamp e da un ID del nodo, in origine l'indirizzo MAC del computer, che rivela dove e quando è stato creato l'ID. Le versioni 3 e 5 calcolano l'hash di un namespace e di un nome con MD5 o SHA-1, quindi lo stesso input produce sempre lo stesso UUID. La versione 8 è un formato libero per schemi personalizzati. La novità più importante è la versione 7: inizia con un timestamp Unix a 48 bit in millisecondi e riempie il resto con bit casuali, così gli ID si ordinano per data di creazione.
Questo ordinamento è il motivo per valutare la v7 come chiave primaria di un database. Le chiavi v4 casuali si distribuiscono su tutto l'indice B-tree, dividendo le pagine e peggiorando la località della cache man mano che la tabella cresce, mentre le chiavi v7 arrivano in ordine più o meno crescente come una colonna auto-increment, ma si possono comunque generare senza un contatore centrale. Scegliere la v4 quando serve un ID che non riveli nulla, nemmeno il momento di creazione; scegliere la v7 quando contano le prestazioni di inserimento e l'ordine temporale. Un UUID è un identificatore, non un segreto: per password e chiavi API segrete usare un generatore di password dedicato. Altri codificatori e strumenti di analisi sono negli strumenti per sviluppatori.
Domande frequenti
- Due UUID generati casualmente possono essere uguali?
- In teoria sì, in pratica no. Con 122 bit casuali, anche un miliardo di UUID v4 al secondo per circa 86 anni darebbe solo il 50% circa di probabilità di una collisione, a patto che la fonte di casualità sia affidabile.
- Qual è la differenza tra UUID e GUID?
- In sostanza nessuna. GUID è il nome Microsoft dello stesso identificatore a 128 bit. Alcuni strumenti Microsoft mostrano i GUID in maiuscolo o tra parentesi graffe, formati che il controllo qui accetta.
- Come si capisce di quale versione è un UUID?
- Guardare la prima cifra del terzo gruppo: 4 indica casuale, 7 ordinato nel tempo, 1 timestamp più nodo. Incollarlo in Verifica un UUID per vedere versione e variante.
- Conviene usare UUIDv7 invece di v4 per le chiavi di un database?
- Spesso sì. Le chiavi v7 sono ordinate nel tempo, il che mantiene compatti gli indici B-tree e rapidi gli inserimenti. Restare sulla v4 se l'ora di creazione contenuta in un ID v7 deve restare privata.
- È sicuro usare un UUID come token per reimpostare la password?
- Un UUID v4 generato da una fonte sicura ha 122 bit casuali, sufficienti a non essere indovinabile, ma molte librerie offrono funzioni dedicate per i token con scadenza esplicita. Non usare mai come segreti le versioni basate sul tempo, come la v1 o la v7.