Was ist UUID v3?
Eine UUID v3 entsteht, indem MD5 auf die UUID des Namensraums zusammen mit dem Namen angewendet und anschließend die Versions- und Variantenbits gesetzt werden. Dasselbe Paar (Namensraum + Name) ergibt immer dieselbe UUID.
MD5 gilt heute nicht mehr als sicher, wird hier aber nur zum Ableiten von Kennungen verwendet, nicht zum Schützen von Daten. Wenn du die Wahl hast, nimm v5: das Gleiche mit SHA-1.
Anleitung
- Wähle den Namensraum: DNS, URL, OID oder X.500.
- Trage den Namen ein, zum Beispiel
example.com. - Klicke auf Generieren — das Ergebnis ist für dieses Paar immer identisch.
Anwendungsfälle
- Stabile Kennungen für Ressourcen, die bereits einen natürlichen Schlüssel haben.
- Abgleich von Datensätzen zwischen Systemen ohne gemeinsame Sequenz.
- Reproduzierbare Schlüssel in Skripten und automatisierten Tests.
UUID-Versionen im Überblick
| Version | Sortierbar | Basiert auf | Geeignet für |
|---|---|---|---|
| v1 | Nein | Zeitstempel + MAC-Adresse | Altsysteme, die v1 weiterhin erwarten |
| v3 | Nein | MD5-Hash eines Namens | Deterministische Kennungen, wenn MD5 vorgeschrieben ist |
| v4 | Nein | 122 zufällige Bits | Nahezu jede allgemeine Kennung |
| v5 | Nein | SHA-1-Hash eines Namens | Wenn derselbe Name immer dieselbe Kennung ergeben muss |
| v6 | Ja | Zeitstempel, neu geordnet | Sortierbare Kennungen ohne Verzicht auf Zufall |
| v7 | Ja | Unix-Zeit in Millisekunden | Primärschlüssel in Datenbanken und Ereignis-IDs |
| v8 | Nein | Eigenes Bit-Layout | Herstellerspezifische oder experimentelle Formate |
Alle sieben Versionen sind 128 Bit lang und werden im selben Muster 8-4-4-4-12 geschrieben. Nur die Bedeutung der Bits ändert sich.
Häufige Fragen
Warum ergibt derselbe Name immer dieselbe UUID?
Weil v3 eine deterministische Funktion ist: Die UUID wird allein aus der Eingabe berechnet, es wirken weder Zufall noch Uhr mit. Das ist eine Eigenschaft und kein Mangel — die Kennung lässt sich rekonstruieren, ohne sie zu speichern.
v3 oder v5?
Wenn du bei null anfängst: v5. Es nutzt SHA-1 und schleppt die Schwächen von MD5 nicht mit. v3 bleibt für Systeme erhalten, die es bereits einsetzen.
Ändert sich die UUID, wenn ich den Namensraum wechsle?
Vollständig. Der Namensraum ist Teil der Eingabe, deshalb ergibt derselbe Name unter DNS und unter URL zwei verschiedene UUIDs.