Come si usa
- 1Un nuovo UUID di versione 4 compare non appena la pagina si carica. Fai clic su Copia per usarlo.
- 2Scegli «Versione 7» per avere ID ordinati in base alla data di creazione, e indica quanti te ne servono, fino a 100.
- 3Attiva «Maiuscole», «Senza trattini» o «Tra parentesi graffe» per ottenere il formato che si aspetta il tuo codice.
- 4Incolla un UUID esistente in «Analizza un UUID» per verificare che sia valido e vederne versione, variante e, per le versioni basate sul tempo, la data di creazione.
Cos’è un UUID?
Un UUID (universally unique identifier, identificatore univoco universale), chiamato GUID nel mondo Microsoft, è un numero a 128 bit scritto come 32 cifre esadecimali divise in cinque gruppi, come f47ac10b-58cc-4372-a567-0e02b2c3d479. Qualsiasi computer può crearne uno senza chiedere a un server centrale, ed è praticamente certo che nessun altro creerà mai lo stesso. Per questo gli UUID sono molto usati come chiavi di database, nomi di file e ID delle richieste: ovunque i record vengano creati in molti punti contemporaneamente.
Il formato è definito dall’RFC 9562, che nel 2024 ha sostituito l’RFC 4122. La prima cifra del terzo gruppo indica la versione – 4 nell’esempio qui sopra – e la prima cifra del quarto gruppo indica la variante, che negli UUID standard è 8, 9, a o b.
Versione 4 o versione 7?
La versione 4 è composta da 122 bit di pura casualità. Non rivela nulla su quando o dove è stata creata ed è la scelta predefinita giusta per la maggior parte degli usi. Dovresti generarne circa 103 mila miliardi per arrivare anche solo a una probabilità su un miliardo di un singolo duplicato.
La versione 7 inizia con un timestamp di 48 bit in millisecondi, seguito da bit casuali, quindi gli UUID creati dopo vengono ordinati dopo quelli precedenti. I database aggiungono così le nuove chiavi alla fine dei loro indici invece che in punti casuali, e questo mantiene veloci gli inserimenti e compatti gli indici. Il rovescio della medaglia: chiunque può leggere l’ora di creazione dall’UUID, come mostra lo strumento di analisi in questa pagina.
Come vengono generati questi UUID
Tutto avviene nel tuo browser. Gli UUID di versione 4 provengono da crypto.randomUUID(), che usa il generatore di numeri casuali crittograficamente sicuro del sistema operativo. Gli UUID di versione 7 combinano l’ora attuale con bit casuali ottenuti da crypto.getRandomValues(), e un contatore li mantiene strettamente crescenti anche quando ne generi molti nello stesso millisecondo, come raccomanda l’RFC 9562.
Nulla viene inviato a un server o memorizzato, quindi gli ID che generi qui sono solo tuoi.
Domande frequenti
Gli UUID sono davvero univoci?
Non è garantito, ma ci si avvicina abbastanza per qualsiasi scopo pratico. Con 122 bit casuali, una collisione tra UUID di versione 4 è molto meno probabile di un guasto hardware che corrompe i tuoi dati. I duplicati diventano un rischio reale solo quando il generatore di numeri casuali è difettoso: per questo lo strumento usa il generatore crittografico del browser.
Qual è la differenza tra UUID e GUID?
In pratica nessuna. GUID (globally unique identifier) è il nome che Microsoft usa per lo stesso formato a 128 bit. Gli strumenti di Windows spesso mostrano i GUID in maiuscolo e tra parentesi graffe, come {F47AC10B-58CC-4372-A567-0E02B2C3D479}: usa le opzioni «Maiuscole» e «Tra parentesi graffe» per ottenere lo stesso formato.
Conviene usare gli UUID come chiavi primarie di un database?
Funzionano bene quando i record vengono creati in molti punti diversi, o quando gli ID non devono rivelare quanti record esistono. Per le chiavi primarie preferisci la versione 7 alla versione 4: il suo ordine cronologico mantiene compatti gli indici B-tree e veloci gli inserimenti. Memorizza gli UUID in una colonna nativa uuid o come 16 byte, invece che come testo di 36 caratteri.
Posso scoprire quando è stato creato un UUID?
Solo per le versioni basate sul tempo. Le versioni 1, 6 e 7 contengono un timestamp, che lo strumento di analisi in questa pagina decodifica. La versione 4 è puramente casuale e le versioni 3 e 5 sono hash di un nome, quindi non contengono alcuna informazione temporale.
Posso usare un UUID come token segreto?
Un UUID di versione 4 creato da un generatore crittografico è difficile da indovinare, ma non è pensato per essere segreto: gli UUID finiscono nei log, negli URL e negli screenshot. Per link di reimpostazione della password, chiavi API o token di sessione, usa invece un token casuale dedicato. Non usare mai la versione 7 come segreto, perché una parte è un timestamp prevedibile.