Generatore e Decoder UUID — v1, v4, v5, v7 in Modalità Batch
Generatore UUID gratuito online — crea UUID v1, v4, v5, v7 all'istante. Decodifica e valida qualsiasi UUID. Genera in batch fino a 50. Senza registrazione, 100% nel browser.
Cos'è un UUID?
Un UUID (Universally Unique Identifier) è un identificatore univoco globale a 128 bit standardizzato dall'RFC 9562 (IETF, maggio 2024), progettato per generare ID privi di collisioni in sistemi distribuiti senza coordinamento centrale. Gli UUID sono il formato di identificatore più ampiamente adottato nel software moderno — utilizzati in chiavi primarie di database, tracciamento delle richieste API, gestione delle sessioni e architetture a microservizi.
Gli UUID sono scritti come 32 cifre esadecimali nel formato canonico 8-4-4-4-12, ad esempio `550e8400-e29b-41d4-a716-446655440000`. La specifica è mantenuta dall'IETF; l'RFC 9562 sostituisce il precedente RFC 4122 (2005) e introduce formalmente le versioni UUID 6, 7 e 8.
Esistono cinque versioni UUID ampiamente utilizzate. La versione 1 (v1) codifica il timestamp corrente e l'indirizzo MAC della macchina generante, rendendo ogni UUID univoco sia nel tempo che nello spazio. La versione 3 (v3) e la versione 5 (v5) sono deterministiche — eseguono l'hashing di uno spazio dei nomi e un nome usando rispettivamente MD5 o SHA-1, producendo sempre lo stesso UUID per gli stessi input. La versione 4 (v4) è la più comune: riempie 122 bit con dati casuali crittograficamente sicuri, dando oltre 5,3 × 10³⁶ valori possibili (RFC 9562, Sezione 5.4). La versione 7 (v7) è il nuovo standard: come afferma la Sezione 5.7 dell'RFC 9562, "UUID versione 7 presenta un campo di valore ordinato nel tempo derivato dalla sorgente di timestamp Unix Epoch ampiamente implementata e ben nota" — combinando un timestamp in millisecondi a 48 bit con dati casuali per produrre UUID che sono sia univoci che naturalmente ordinabili per tempo di creazione.
Gli UUID sono essenziali nei sistemi distribuiti, database, API e ovunque siano necessari identificatori univoci senza coordinamento centralizzato. Eliminano il rischio di collisioni di ID tra sistemi indipendenti, rendendoli ideali per microservizi, event sourcing e architetture multi-tenant.
Questo strumento genera tutte le versioni UUID interamente nel tuo browser usando la Web Crypto API — nessun UUID viene trasmesso ad alcun server. A differenza dei generatori basati su server, non ci sono upload, logging né conservazione dei dati. Sicuro per chiavi di database in produzione, identificatori API e applicazioni sensibili alla sicurezza. Puoi anche decodificare e validare UUID esistenti per ispezionarne la versione, la variante e i dati incorporati.
Gli UUID sono strettamente connessi ad altre primitive per sviluppatori. UUID v1 e v7 incorporano direttamente i timestamp Unix, UUID v3 e v5 usano gli hash MD5 e SHA-1 come fondamento, e le stringhe UUID sono spesso trasportate all'interno di payload JSON ispezionati al meglio con un formattatore JSON. Per un'introduzione approfondita al formato, alle versioni e ai casi d'uso reali degli UUID, leggi la nostra guida completa agli UUID. Se devi scegliere tra UUID v4, v7, ULID e Snowflake ID per una chiave primaria di database, consulta il nostro confronto per la selezione degli ID.
// Generate a UUID v4 using the Web Crypto API
const uuid = crypto.randomUUID();
console.log(uuid);
// → '550e8400-e29b-41d4-a716-446655440000'
// Manual v4 generation with crypto.getRandomValues()
function generateUUIDv4() {
const bytes = new Uint8Array(16);
crypto.getRandomValues(bytes);
bytes[6] = (bytes[6] & 0x0f) | 0x40; // version 4
bytes[8] = (bytes[8] & 0x3f) | 0x80; // variant 10
const hex = Array.from(bytes, b => b.toString(16).padStart(2, '0')).join('');
return `${hex.slice(0,8)}-${hex.slice(8,12)}-${hex.slice(12,16)}-${hex.slice(16,20)}-${hex.slice(20)}`;
} Caratteristiche principali
Supporto UUID v7 (RFC 9562)
Genera l'ultimo formato UUID v7 con timestamp Unix incorporati per identificatori ordinati per tempo e ottimizzati per i database. Uno dei pochi strumenti online che supporta lo standard RFC 9562.
Decoder e validatore UUID
Analizza qualsiasi UUID per rivelarne versione, variante, timestamp (v1/v7), sequenza di clock e informazioni sul nodo. Convalida immediatamente se una stringa è un UUID formattato correttamente.
Supporto multi-versione
Genera UUID in cinque versioni — v1 (basata sul tempo), v3 (MD5), v4 (casuale), v5 (SHA-1) e v7 (casuale ordinata per tempo) — tutte conformi all'RFC 9562.
Generazione in batch
Genera fino a 50 UUID univoci in una sola volta. Ogni UUID viene generato indipendentemente con piena casualità crittografica o codifica corretta specifica della versione.
Formati di output multipli
Output UUID in formato minuscolo standard, MAIUSCOLO, senza trattini o con parentesi graffe {GUID} — corrispondenti al formato esatto richiesto dal tuo sistema o framework.
Crittograficamente sicuro
Usa la Web Crypto API (crypto.getRandomValues()) per la generazione di numeri veramente casuali — lo stesso standard utilizzato dai browser moderni e dagli strumenti di sicurezza.
100% nel browser
Tutti gli UUID vengono generati localmente nel tuo browser. Nulla viene inviato ad alcun server — i tuoi identificatori generati rimangono completamente privati.
Confronto tra versioni UUID
Scegli la versione UUID giusta per il tuo caso d'uso.
| Versione | Base | Ordinabile | Privacy | Ideale per |
|---|---|---|---|---|
| v1 | Timestamp + indirizzo MAC | Per tempo di creazione | Espone MAC e tempo | Sistemi legacy con ordinamento temporale |
| v4 | 122 bit casuali crittografici | No | Completamente anonimo | Uso generico — la versione più diffusa |
| v5 | Hash SHA-1 di namespace + nome | No | Deterministico, riproducibile | ID coerenti da input noti (URL, DNS) |
| v7 | Timestamp Unix (ms) + casuale | Per tempo di creazione | Espone solo l'ora di creazione | Database moderni — ordinabile, ottimo per indici (RFC 9562) |
UUID vs altri formati di ID
ULID
26 caratteri, Crockford Base32Lessicograficamente ordinabile come UUID v7, ma usa la codifica Crockford Base32 (26 caratteri contro 36). UUID v7 è ora l'alternativa standardizzata IETF con un supporto di tooling più ampio.
nanoid
21 caratteri, alfabeto URL-safePiù corto e URL-safe, ideale quando la compattezza è importante. Non è uno standard formale — manca dei tipi nativi di database e delle librerie multipiattaforma che ha UUID.
CUID2
Lunghezza variabile, alfanumericoProgettato per il ridimensionamento orizzontale con resistenza alle collisioni. Meno adottato di UUID; nessun supporto nativo nei database. Considera UUID v7 per ID standardizzati ordinati per tempo.
Esempi di versioni UUID
UUID v4 (Casuale)
550e8400-e29b-41d4-a716-446655440000
La versione più utilizzata. 122 bit di casualità crittografica forniscono oltre 5,3 x 10^36 valori possibili — adatta praticamente a qualsiasi caso d'uso in cui è richiesta unicità senza coordinamento.
UUID v7 (Ordinato per tempo)
01906b5e-4a3e-7234-8f56-b8c12d4e5678
Combina un timestamp Unix a 48 bit in millisecondi con dati casuali. Gli UUID si ordinano cronologicamente, rendendoli ideali per chiavi primarie di database in cui la località dell'indice è importante. Raccomandato per nuovi progetti rispetto a v1 e v4.
UUID v1 (Basato sul tempo)
6ba7b810-9dad-11d1-80b4-00c04fd430c8
Codifica un timestamp a 60 bit e l'indirizzo MAC a 48 bit della macchina generante. Garantisce l'unicità nel tempo e nello spazio, ma può divulgare informazioni sull'identità hardware. Sostituito da v6/v7 nell'RFC 9562.
UUID v5 (Basato su nome SHA-1)
886313e1-3b8a-5372-9b90-0c9aee199e5d
UUID deterministico generato hashando il namespace DNS con il nome 'python.org' usando SHA-1. Lo stesso namespace e nome producono sempre lo stesso UUID, rendendo v5 ideale per identificatori riproducibili.
Come usare
- 1
Seleziona la versione UUID
Scegli tra v1 (basata sul tempo), v3 (basata su nome MD5), v4 (casuale), v5 (basata su nome SHA-1) o v7 (casuale ordinata per tempo). Ogni versione serve a uno scopo diverso — v4 è la più comune per uso generale.
- 2
Configura le opzioni
Per v3 e v5, seleziona uno spazio dei nomi (DNS, URL, OID, X.500 o personalizzato) e inserisci un nome da sottoporre all'hash. Imposta la quantità da 1 a 50 e scegli un formato di output: minuscolo standard, MAIUSCOLO, senza trattini o con parentesi graffe {GUID}.
- 3
Genera UUID
Clicca sul pulsante Genera. Ogni UUID viene creato usando la Web Crypto API (crypto.getRandomValues()) per la sicurezza crittografica. I campi specifici della versione come i timestamp (v1/v7) e gli hash (v3/v5) sono codificati correttamente.
- 4
Copia e usa
Clicca sul pulsante Copia accanto a qualsiasi UUID per copiarlo negli appunti, o usa Copia tutto per prendere ogni UUID generato in una volta sola. Passa alla scheda Decodifica per analizzare la versione, la variante, il timestamp e altre informazioni incorporate di un UUID esistente.
Casi d'uso comuni
- Chiavi primarie di database
- Usa UUID v4 o v7 come chiavi primarie univoche senza coordinamento tra i nodi del database. UUID v7 è particolarmente adatto perché la sua proprietà di ordinamento per tempo migliora le prestazioni degli indici B-tree.
- Sistemi distribuiti
- Genera identificatori univoci in modo indipendente tra microservizi, code di messaggi e sistemi di event sourcing. Gli UUID eliminano la necessità di un servizio centralizzato di generazione di ID.
- Sviluppo API
- Crea ID di richiesta univoci, ID di correlazione e chiavi di idempotenza per API RESTful e GraphQL. Gli UUID rendono facile tracciare le richieste oltre i confini dei servizi distribuiti.
- Gestione di sessioni e token
- Genera identificatori di sessione univoci e token temporanei per i flussi di autenticazione. Gli UUID forniscono unicità sufficiente per prevenire collisioni di sessione tra grandi basi di utenti.
- Test e sviluppo
- Genera rapidamente dati di test, identificatori finti e ID di fixture univoci per i test automatizzati. La generazione in batch rende facile popolare database di sviluppo e suite di test.
Dettagli tecnici
- Struttura dell'UUID
- Un UUID è composto da 128 bit (16 byte) rappresentati come 32 caratteri esadecimali nel formato 8-4-4-4-12. I bit 48-51 (la 13ª cifra esadecimale) codificano il numero di versione. I bit 64-65 codificano il campo variante, che identifica il layout dell'UUID. I bit rimanenti trasportano il payload specifico della versione: timestamp, dati casuali o output di hash.
- Bit di versione
- I bit 48-51 (il nibble alto del 7° byte) codificano la versione UUID: 0001 = v1 (basata sul tempo), 0011 = v3 (basata su nome MD5), 0100 = v4 (casuale), 0101 = v5 (basata su nome SHA-1), 0110 = v6 (tempo riordinato), 0111 = v7 (tempo Unix epoch). Questi quattro bit vengono sempre impostati esplicitamente durante la generazione.
- Campo variante
- I bit 64-65 (i due bit più significativi del 9° byte) definiscono la variante. Il pattern 10x indica gli UUID RFC 4122/9562 (la stragrande maggioranza). Il pattern 110 indica i GUID Microsoft con ordine di byte mixed-endian. Il pattern 0xx indica gli UUID retrocompatibili NCS (legacy). Il pattern 111 è riservato per uso futuro.
- Standard RFC 9562
- L'RFC 9562, pubblicato a maggio 2024, sostituisce l'RFC 4122 come specifica UUID definitiva. Introduce formalmente le versioni UUID 6, 7 e 8. La versione 6 riordina i campi v1 per l'ordinabilità. La versione 7 usa un timestamp Unix a 48 bit in millisecondi più dati casuali, rendendola la versione raccomandata per nuovi UUID basati sul tempo. La versione 8 fornisce un formato per UUID personalizzati e specifici per l'implementazione. L'RFC 9562 deprecia anche formalmente v1 a favore di v6/v7.
Best practice
- Scegli la versione giusta
- Usa v4 per identificatori univoci di uso generico dove non sono necessari ordinamento o determinismo. Usa v7 per le chiavi primarie di database — la sua proprietà ordinata per tempo offre prestazioni dell'indice significativamente migliori. Usa v5 quando hai bisogno di ID deterministici derivati da nomi (preferisci v5 a v3 per un hashing più forte).
- Usa UUID v7 per le chiavi primarie di database
- La struttura ordinata per tempo di UUID v7 mantiene gli inserimenti B-tree sequenziali, riducendo la frammentazione dell'indice di circa il 90% rispetto agli UUID v4 casuali. Questo si traduce in scritture più veloci, indici più piccoli e migliore utilizzo della cache. La maggior parte dei database moderni (PostgreSQL 17+, MySQL 8.0+) ha un supporto UUID nativo ottimizzato per questo pattern.
- Non usare mai gli UUID come token di sicurezza
- Gli UUID sono progettati per l'unicità, non per la segretezza. UUID v1 fa trapelare il timestamp di generazione e l'indirizzo MAC. UUID v4 ha solo 122 bit di entropia con una struttura prevedibile. Per token di sicurezza, chiavi API o segreti di sessione, usa un CSPRNG dedicato per generare 128 o 256 bit di puri dati casuali senza l'overhead della struttura UUID.
- Valida prima di analizzare
- Valida sempre il formato UUID con un'espressione regolare prima di analizzarlo o archiviarlo. Rifiuta gli input malformati ai confini del sistema — endpoint API, invii di moduli e input del database. Questo previene attacchi di iniezione, corruzione dei dati ed errori difficili da debuggare derivanti da identificatori non validi che si propagano nel tuo sistema.
Domande frequenti
Cos'è un UUID?
Quali sono le differenze tra le versioni UUID?
Quando dovrei usare UUID v4 contro v7?
Qual è la probabilità di collisione UUID?
Qual è la differenza tra UUID e GUID?
UUID v4 è crittograficamente sicuro?
Come validare il formato di un UUID?
Gli UUID sono buone chiavi primarie di database? (Prestazioni, sicurezza e versione migliore)
Cos'è un UUID di namespace (v3/v5)?
Cos'è il valore nil di un UUID?
Cos'è UUID v7 e perché dovrei usarlo?
Come decodificare un UUID?
UUID vs ULID vs nanoid — quale dovrei usare?
Sto costruendo un microservizio e devo scegliere tra UUID v4 e v7 per le mie chiavi primarie PostgreSQL — quale dovrei usare e perché?
Il mio team sta dibattendo se usare UUID o interi auto-incrementali come ID di database — quali sono i compromessi reali?
Strumenti correlati
Vedi tutti gli strumenti →Generatore Hash MD5 e Strumento Checksum File
Strumenti di sicurezza
Genera hash MD5, SHA-256, SHA-1 e SHA-512 online gratis. Calcola l'hash di testo o file nel browser, verifica checksum e copia i risultati. Senza registrazione.
Generatore di Password Casuali — Personalizzabile e Sicuro
Strumenti di sicurezza
Genera password casuali sicure all'istante — gratis, 100% nel tuo browser. Personalizza lunghezza e caratteri, batch fino a 50 con analisi entropia.
Convertitore di Basi Numeriche — Bin, Hex, Ott, Dec
Strumenti di conversione
Converti istantaneamente tra binario, esadecimale, decimale, ottale e qualsiasi base (2-36). Strumento online gratuito e privato: tutta l'elaborazione avviene nel tuo browser.
Decodificatore e codificatore Base64
Codifica e formattazione
Decodifica e codifica Base64 online gratis. Conversione in tempo reale con pieno supporto UTF-8 ed emoji. 100% privato — gira nel tuo browser. Nessuna registrazione.
Comprimi Immagini Online — JPEG, PNG e WebP
Strumenti di conversione
Comprimi JPEG, PNG e WebP fino all'80% in meno — nel tuo browser, senza upload. Batch di 20 immagini, regola la qualità, confronta prima e dopo. Gratuito e privato.
Formattatore e Validatore JSON
Codifica e formattazione
Formatta, valida e abbellisci JSON direttamente nel browser. Strumento online gratuito con controllo sintassi, rilevamento errori, minifica e copia in un clic. 100% privato.