Cos'è UUID v4?
Versione UUID 4 è un identificatore a 128 bit basato su dati casuali (stringa di 36 caratteri) secondo RFC 4122. Consiste in:
- Valori casuali: 122 bit di dati casuali
- Bit di versione: 4 bit che indicano la versione 4 (0100)
- Bit di variante: 2 bit che indicano la variante RFC 4122 (10)
Esempio di formato: f47ac10b-58cc-4372-a567-0e02b2c3d479
Come funziona UUID v4
- Genera 122 bit di dati casuali crittograficamente sicuri
- Imposta i bit di versione a 0100 (versione 4)
- Imposta i bit di variante a 10 (standard RFC 4122)
- Assembla come 32 cifre esadecimali con trattini: formato 8-4-4-4-12
Vantaggi e considerazioni
Advantages | Considerations |
---|---|
|
|
Struttura UUID v4
Bits | Content |
---|---|
0-47 | Dati casuali |
48-51 | Versione (0100 per v4) |
52-63 | Dati casuali |
64-65 | Variante (10 per RFC4122) |
66-127 | Dati casuali |
UUID v4 vs. altre versioni
Version | Basato su | Caso d'uso | Privacy |
---|---|---|---|
UUID v1 | Tempo + MAC | ID ordinati per tempo | ⚠️ Rivela MAC |
UUID v3 | Namespace + MD5 | ID deterministici | ✅ Privato |
UUID v4 | Random | ID casuali sicuri | ✅ Privato |
UUID v5 | Namespace + SHA-1 | ID deterministici | ✅ Privato |
UUID v6 | Tempo (riordinato) | ID ordinabili | ⚠️ Rivela MAC |
UUID v7 | Tempo + casuale | ID ordinabili | ✅ Privato |
Casi d'uso comuni
- Chiavi di database: Applicazioni distribuite
- Token di sicurezza: Sistemi di autenticazione
- Identificatori monouso: Accesso temporaneo
- Sistemi multi-tenant: Prevenzione delle collisioni
- Identificatori di contenuto: Gestione documenti
- ID richieste API: Tracciamento richieste
Domande frequenti
UUID v4 è crittograficamente sicuro?
Sì. UUID v4 si basa su generatori di numeri casuali crittograficamente sicuri, rendendolo adatto per applicazioni sensibili alla sicurezza.
I valori UUID v4 possono collidere?
Teoricamente sì, ma praticamente no. Con 122 bit casuali, la probabilità di collisione è astronomicamente bassa, anche con miliardi di UUID generati.
Posso estrarre il tempo di creazione da UUID v4?
No. A differenza degli UUID basati sul tempo (v1, v6, v7), UUID v4 contiene solo dati casuali senza componente di timestamp.
I valori UUID v4 sono ordinabili per tempo di creazione?
No. I valori UUID v4 sono casuali e non hanno relazione con il loro tempo di creazione. Per ID ordinabili, considera UUID v1, v6 o v7.
I valori UUID v4 espongono informazioni di sistema?
No. UUID v4 è composto interamente da dati casuali con bit di versione e variante, garantendo piena privacy senza perdita di informazioni di sistema.