Genera UUID v3 basati su nome e spazio dei nomi, utilizzando l'algoritmo di hash MD5.
Nota: lo stesso spazio dei nomi e lo stesso nome genereranno sempre lo stesso UUID
Introduzione a UUID v3
UUID v3 è un identificatore univoco generato basandosi su un nome e uno spazio dei nomi, utilizzando l'algoritmo di hash MD5. Può generare lo stesso UUID per la stessa combinazione di nome e spazio dei nomi.
Spazio dei nomi e nome
UUID v3 richiede due input: un UUID spazio dei nomi e una stringa di nome. Spazi dei nomi predefiniti comuni includono DNS, URL, OID e X.500 DN, ma è possibile utilizzare anche spazi dei nomi personalizzati.
v3 vs v5
Gli UUID v3 e v5 sono entrambi basati su nomi, con la principale differenza nell'algoritmo di hash utilizzato. Il v3 utilizza MD5, mentre il v5 utilizza SHA-1. Il v5 offre una migliore sicurezza, ma il v3 può essere più efficiente in alcuni ambienti.
Scenari di utilizzo
L'UUID v3 è adatto per scenari che richiedono determinismo e ripetibilità, come la generazione di ID permanenti da nomi utente o l'assegnazione di identificatori fissi alle risorse. È ideale per qualsiasi situazione in cui lo stesso input deve sempre produrre lo stesso UUID.
Considerazioni sulla sicurezza
Sebbene l'UUID v3 utilizzi l'hash MD5, è generalmente sicuro come identificatore. Tuttavia, se la sicurezza è una considerazione importante, si raccomanda di utilizzare l'UUID v5 basato su SHA-1, poiché MD5 è stato dimostrato insufficientemente sicuro in crittografia.
Namespace predefiniti
La specifica UUID definisce quattro namespace standard: DNS (6ba7b810-9dad-11d1-80b4-00c04fd430c8), URL (6ba7b811-9dad-11d1-80b4-00c04fd430c8), OID (6ba7b812-9dad-11d1-80b4-00c04fd430c8) e X.500 DN (6ba7b814-9dad-11d1-80b4-00c04fd430c8).