Generatore e validatore di UUID

Crea UUID v4 crittograficamente casuali o v7 ordinabili, uno o mille alla volta, e analizza qualsiasi UUID o GUID per vederne la versione e il timestamp incorporato.

Funziona nel browserNessuna registrazioneNessun caricamento

UUID generati

Come usare Generatore di UUID

  1. Scegli v4 per un ID completamente casuale o v7 per ID ordinati per data di creazione.
  2. Imposta quanti te ne servono (fino a 1.000) e clicca Genera.
  3. Se vuoi, passa al maiuscolo, togli i trattini o aggiungi le graffe per GUID in stile Microsoft.
  4. Clicca l'UUID grande per copiarlo, oppure usa Copia tutti / Scarica .txt per un intero lotto.
  5. Incolla un qualsiasi UUID nell'analizzatore per validarlo e leggerne versione, variante e timestamp.

Cos'è un UUID?

Un UUID (Universally Unique Identifier), chiamato GUID sulle piattaforme Microsoft, è un valore a 128 bit scritto come 32 cifre esadecimali in cinque gruppi: 8-4-4-4-12. Il formato è definito nella RFC 9562, che nel 2024 ha sostituito la RFC 4122. Una cifra codifica la versione (la 13ª cifra esadecimale) e i bit più alti della 17ª cifra codificano la variante.

UUID v4 e UUID v7

v4v7
Contenuto122 bit casualiTimestamp Unix in millisecondi a 48 bit + 74 bit casuali
OrdinamentoCasualeCronologico
Indice del databaseGli inserimenti casuali frammentano gli indici B-treeAggiunge in coda, molto più adatto agli indici
Rivela la data di creazioneNoSì

Usa v7 per chiavi primarie di database e ID di eventi in cui conta l'ordine di inserimento. Usa v4 quando l'ID non deve rivelare quando qualcosa è stato creato. Questo generatore mantiene gli ID v7 strettamente crescenti anche quando molti vengono creati nello stesso millisecondo.

Quanto sono unici?

Con 122 bit casuali dovresti generare circa 2,7 miliardi di miliardi di UUID v4 prima di arrivare a una probabilità del 50% di una singola collisione. Questa pagina usa il generatore casuale crittograficamente sicuro del browser (crypto.getRandomValues), mai Math.random().

Generare UUID nel codice

// JavaScript (browsers, Node 19+)
crypto.randomUUID()
# Python
import uuid; uuid.uuid4()
-- PostgreSQL 13+
SELECT gen_random_uuid();

Domande frequenti

Questi UUID sono sicuri da usare in produzione?
Sì. Vengono generati in locale con il generatore casuale sicuro della Web Crypto API e seguono la RFC 9562. Nulla viene inviato a un server o registrato.
Che differenza c'è tra UUID e GUID?
Sono la stessa cosa. GUID è il nome usato da Microsoft ed è spesso scritto in maiuscolo tra graffe, come {3F2504E0-4F89-11D3-9A0C-0305E82C3301}. Usa le opzioni qui sopra per produrre questo formato.
Posso ricavare la data di creazione da un UUID?
Solo per le versioni basate sul tempo. v7 memorizza i millisecondi Unix nei primi 48 bit, mentre v1 e v6 memorizzano un timestamp in intervalli di 100 nanosecondi. Incollane uno nell'analizzatore per vedere la data. v4 non contiene informazioni temporali.
Conviene usare gli UUID come chiavi primarie?
Funzionano bene per sistemi distribuiti e ID pubblici. Preferisci v7 a v4 così le nuove righe finiscono in coda all'indice, e memorizzali in una colonna nativa uuid o binaria da 16 byte invece che come stringa di 36 caratteri.
Cos'è il nil UUID?
Il valore tutto a zero 00000000-0000-0000-0000-000000000000, usato come segnaposto per indicare “nessun UUID”. La RFC 9562 definisce anche il max UUID, composto solo da f.

Strumenti correlati