Strumenti per sviluppatori

Generatore UUID online

Genera tutte le otto versioni UUID affiancate. Usa le impostazioni per ID MAC o nodo, identificatori locali DCE, nomi di namespace e payload UUIDv8 personalizzati, poi copia il risultato che ti serve.

8 versioni RFC locale al browser Leggi RFC 9562

Generatore

Genera UUID

UUID ricreati al refresh della pagina o al clic del pulsante

Impostazioni della versione

I browser non possono leggere il tuo indirizzo MAC. Inseriscine uno per riprodurre un campo nodo oppure lascia vuoto per un ID nodo casuale e rispettoso della privacy.

Un UID, GID o altro identificatore a 32 bit significativo nel dominio DCE selezionato.

UUIDv2 è un formato di compatibilità DCE Security ed è raro nelle nuove applicazioni.

Il nome viene codificato in UTF-8 prima dell'hashing. Stesso namespace più stesso nome significa stesso UUID.

UUIDv8 standardizza solo i bit di versione e variante. Questo valore è un payload sperimentale specifico dell'applicazione, non uno schema di unicità garantita.

Generazione, hashing e impostazioni restano in questa scheda del browser. Nulla di ciò che inserisci viene inviato al server o salvato.

Risultati

Pronto per la generazione.

v1

Basato sul tempo

Tempo gregoriano + sequenza di clock + nodo

Fai clic per generare
timestamp MAC / nodo legacy

Utile per l'interoperabilità legacy. Un MAC reale può identificare l'host, quindi questa pagina usa un nodo locale casuale se non ne fornisci uno.

v2

DCE Security

ID locale + dominio DCE + tempo + nodo

Fai clic per generare
timestamp ID locale MAC / nodo legacy

RFC 9562 rimanda UUIDv2 alle specifiche DCE. Questo generatore offre il layout comune UID / GID / organizzazione per il lavoro di compatibilità.

v3

Basato sul nome · MD5

UUID namespace + nome con hash MD5

Fai clic per generare
basato sul nome deterministico MD5

Deterministico e interoperabile con i sistemi precedenti. Preferisci v5 per nuovi progetti basati sul nome, salvo necessità di compatibilità v3.

v4

Casuale

122 bit crittograficamente casuali

Fai clic per generare
casuale senza MAC uso generale

Il valore predefinito comune in molte piattaforme. Non contiene timestamp, indirizzo MAC, nome o indicatore di ordinamento.

v5

Basato sul nome · SHA-1

UUID namespace + nome con hash SHA-1

Fai clic per generare
basato sul nome deterministico SHA-1

Usalo quando un nome stabile deve corrispondere allo stesso UUID su sistemi diversi. L'hash serve per il namespace, non per la sicurezza delle password.

v6

Basato sul tempo riordinato

Campi v1 con i byte del timestamp spostati all'inizio

Fai clic per generare
ordinato nel tempo MAC / nodo ottimizzato per l'ordinamento

Progettato per migliorare la località nei carichi di lavoro in stile v1. Scegli v7 per un sistema nuovo che non richiede compatibilità v1.

v7

Ordinato per tempo Unix

Millisecondi dall'epoca Unix + bit casuali

Fai clic per generare
ordinato nel tempo casuale ottimizzato per l'ordinamento

La scelta moderna ordinata nel tempo: i byte del timestamp vengono prima, mentre i bit rimanenti forniscono unicità senza indirizzo MAC.

v8

Personalizzato / sperimentale

122 bit definiti dall'applicazione

Fai clic per generare
payload personalizzato sperimentale casuale

Sono standardizzati solo versione e variante. Definisci layout e regole di unicità prima di usare v8 in un formato di interscambio.

Guida alla compatibilità

Cosa genera di solito il tuo linguaggio

Le API integrate e le funzioni dei database spesso coprono solo le versioni più usate nel loro ecosistema. Verifica sempre il contratto di versione e ordine dei byte al confine.

.NET / ASP.NET

v4v7 · .NET 9+

Le API GUID di .NET coprono soprattutto UUIDv4; le librerie e le versioni moderne possono offrire anche UUID ordinati nel tempo. Verifica sempre la versione effettiva.

Java SE

v3v4

Le API standard di Java coprono UUID casuali e basati sul nome; le altre versioni richiedono librerie o implementazioni aggiuntive.

Python

v1 · v3 · v4 · v5v6 · v7 · v8 · Python 3.14+

Il modulo uuid standard copre v1, v3, v4 e v5; le versioni recenti di Python aggiungono v6, v7 e v8. UUIDv2 non fa parte del modulo standard.

Node.js / JavaScript

core · v4uuid · v1/v3/v4/v5/v6/v7

crypto.randomUUID() integrato in Node genera v4; le versioni recenti espongono anche v7. Il pacchetto uuid più diffuso fornisce v1, v3, v4, v5, v6 e v7; v8 resta specifico dell'applicazione.

Cosa generano nativamente i database

Cosa generano nativamente i database

Il supporto nativo varia in base al motore e alla versione. Un helper UUID sequenziale o binario non è automaticamente UUIDv6 o UUIDv7.

v4 · v7 · PostgreSQL 18+

Generazione nativa di v4 e v7: gen_random_uuid() per v4 e uuidv7() per v7 ordinato nel tempo.

v1 · binary(16)

UUID() restituisce v1. UUID_TO_BIN(..., 1) può riordinare i campi temporali v1 per la memorizzazione, ma non produce UUIDv6 o UUIDv7.

v4 · GUID sequenziale

NEWID() produce un GUID conforme a RFC 4122. NEWSEQUENTIALID() è sequenziale per la località degli indici, ma non è UUIDv6 o UUIDv7.

v4 · Oracle 23ai+

UUID() restituisce v4 in Oracle Database 23ai e versioni successive. SYS_GUID() resta un generatore RAW di 16 byte, ma non è indicato come versione UUID RFC.

nessun UUID nativo · randomblob(16)

SQLite non ha un tipo UUID né un generatore UUID versionato. randomblob(16) e hex() possono creare testo casuale a 128 bit, ma l'applicazione deve impostare da sé i bit di UUIDv4.

v4 · mongosh UUID() · ObjectId ≠ UUID

UUID() in mongosh genera UUID BSON casuali v4. Il predefinito ObjectId è un identificatore separato di 12 byte, non una versione UUID da v1 a v8.

Ordinamento

v6 e v7 mettono il tempo all'inizio, quindi l'ordinamento di byte o testo opaco segue la creazione. Sono utili per la località dei database; l'ordine dei campi legacy di v1 non è naturalmente ordinato lessicograficamente.

Privacy MAC / nodo

v1, v2 e v6 hanno un campo nodo. Può essere un indirizzo MAC o un valore casuale. Questa pagina non rileva mai il MAC del browser e, se il campo è vuoto, usa un nodo multicast casuale.

UUIDv8 non è un hash magico

v8 riserva 122 bit al tuo formato e non promette unicità globale. Documenta payload, versionamento e strategia per le collisioni insieme alla tua applicazione.