Identificatore di Versione UUID
Identifica la versione e la variante di qualsiasi UUID. Supporta le versioni 1-8, UUID Nil e Max con informazioni dettagliate.
Input
Output
Risultato
Nessun valore
Leggimi
Cos'è una versione UUID?
Un UUID (Universally Unique Identifier) è un identificatore a 128 bit standardizzato da RFC 4122 e RFC 9562. Ogni UUID contiene un campo versione che indica come è stato generato. La versione è codificata nella 13ª cifra esadecimale (il nibble alto del 7° byte) e determina l'algoritmo e le fonti di dati utilizzati per creare l'identificatore.
Attualmente esistono otto versioni definite (dalla v1 alla v8), più due forme speciali: il Nil UUID (tutti zeri) e il Max UUID (tutti uno). Ogni versione ha uno scopo diverso: alcune incorporano timestamp per l'ordinamento cronologico, alcune utilizzano hash crittografici per la generazione deterministica, altre si basano su numeri casuali per semplicità. Conoscere la versione aiuta a comprendere le proprietà, le implicazioni di sicurezza e il caso d'uso previsto di un UUID.
Il campo variant, codificato separatamente, identifica a quale specifica UUID l'identificatore è conforme. La maggior parte degli UUID moderni utilizza il variant RFC 4122/RFC 9562, ma i sistemi più vecchi possono produrre variant NCS o Microsoft.
Descrizione dello strumento
Questo strumento accetta qualsiasi UUID come input e ne identifica il numero di versione, il nome della versione, il variant, il metodo di generazione e una descrizione dettagliata del funzionamento di quella versione. Supporta tutte le versioni standard (dalla v1 alla v8), nonché i Nil e Max UUID. Incolla semplicemente un UUID e visualizza immediatamente la sua analisi completa.
Esempi
| UUID di input | Versione | Nome |
|---|---|---|
550e8400-e29b-41d4-a716-446655440000 |
4 | Casuale (v4) |
6ba7b810-9dad-11d1-80b4-00c04fd430c8 |
1 | Basato sul tempo (v1) |
018f3e88-5c00-7b3a-8512-2d4a3f8e9c01 |
7 | Basato su Unix Epoch Time (v7) |
00000000-0000-0000-0000-000000000000 |
Nil | Nil UUID |
ffffffff-ffff-ffff-ffff-ffffffffffff |
Max | Max UUID |
Funzionalità
- Rileva tutte le versioni UUID dalla v1 alla v8, oltre ai Nil e Max UUID
- Identifica il variant (RFC 4122/9562, NCS, Microsoft o Riservato)
- Mostra una descrizione leggibile che spiega come viene generata la versione
- Visualizza il metodo di generazione utilizzato per produrre l'UUID
- Identificazione in tempo reale istantanea mentre si digita o incolla
Casi d'uso
- Debug di sistemi distribuiti: Determina se gli UUID nei tuoi log sono basati sul tempo (v1/v6/v7) o casuali (v4) per capire se contengono timestamp incorporati che puoi estrarre.
- Ottimizzazione del database: Identifica se le tue chiavi primarie utilizzano una versione UUID ordinabile (v6, v7) o una casuale (v4) che potrebbe causare frammentazione degli indici.
- Audit di sicurezza: Rileva gli UUID v1 che potrebbero esporre indirizzi MAC o timestamp, aiutandoti a valutare i rischi di divulgazione delle informazioni.
Come funziona
Lo strumento analizza la struttura esadecimale dell'UUID per estrarre due campi chiave:
- Versione: Letta dalla 13ª cifra esadecimale (indice 12 nella stringa hex senza separatori). Questo nibble codifica direttamente il numero di versione (1–8). I Nil e Max UUID vengono rilevati verificando se tutti i bit sono zero o tutti i bit sono uno.
- Variant: Determinato dai bit più significativi della 17ª cifra esadecimale (indice 16). Il pattern di bit corrisponde a una delle quattro famiglie di variant: NCS, RFC 4122/9562, Microsoft o Riservato.
Versioni UUID in sintesi
| Versione | Nome | Proprietà principale |
|---|---|---|
| v1 | Basato sul tempo | Timestamp + indirizzo MAC |
| v2 | DCE Security | Timestamp + MAC + POSIX UID/GID |
| v3 | Basato sul nome (MD5) | Deterministico da namespace + nome |
| v4 | Casuale | 122 bit casuali |
| v5 | Basato sul nome (SHA-1) | Deterministico, hash più robusto rispetto a v3 |
| v6 | Basato sul tempo riordinato | Variante ordinabile di v1 |
| v7 | Basato su Unix Epoch Time | Timestamp Unix in ms + casuale, ideale per chiavi DB |
| v8 | Personalizzato | Specifico del fornitore o sperimentale |
| Nil | Nil UUID | Tutti i 128 bit impostati a zero |
| Max | Max UUID | Tutti i 128 bit impostati a uno |
FAQ
Qual è la differenza tra versione e variant di un UUID? La versione indica l'algoritmo di generazione (basato sul tempo, casuale, basato su hash, ecc.), mentre il variant identifica a quale specifica l'UUID è conforme (RFC 4122, NCS, Microsoft). La maggior parte degli UUID che incontrerai sarà del variant RFC 4122/9562.
Quale versione UUID dovrei usare? Per la maggior parte delle applicazioni, la v4 (casuale) è la più semplice e ampiamente supportata. Se hai bisogno di identificatori ordinabili per tempo da utilizzare come chiavi primarie nel database, la v7 è la raccomandazione moderna. Usa la v5 quando hai bisogno di UUID deterministici derivati da un nome.
Questo strumento può estrarre il timestamp da un UUID? Questo strumento identifica solo la versione e il variant. Per estrarre i timestamp incorporati dagli UUID v1, v6 o v7, utilizza lo strumento dedicato UUID Time Extractor.