Zum Hauptinhalt springen
Entwicklung25. Juni 2026• 5 Min. Lesezeit

UUID-Versionen erklärt: Der vollständige Leitfaden

Nicht alle UUIDs sind gleich. UUID v1, v3, v4, v5 und v7 haben unterschiedliche Eigenschaften. Lernen Sie, welche Version für Ihren Anwendungsfall optimal ist.

Generieren Sie UUIDs mit unserem UUID-Generator.

Die ID-Kollision

Auto-increment IDs in verteilten Systemen sind ein Albtraum. Zwei Server erstellen gleichzeitig einen neuen Benutzer – beide bekommen ID 42. UUIDs lösen dieses Problem fundamental.

Was ist eine UUID?

UUID steht für Universally Unique Identifier. Es ist ein 128-Bit-Wert, der so konzipiert ist, dass er global eindeutig ist, ohne zentrale Koordination. Die Wahrscheinlichkeit einer Kollision ist astronomisch gering.

UUID-Versionen erklärt

UUID v1: Zeitbasiert mit MAC-Adresse – nicht empfohlen (Datenschutz). UUID v4: Vollständig zufällig – die beliebteste Version. UUID v7: Zeitgeordnet – ideal für Datenbank-Primärschlüssel. UUID v3/v5: Namensbasiert – deterministisch.

Wann Sie UUIDs verwenden sollten

Verteilte Systeme, Microservices, öffentliche APIs und Multi-Tenant-Anwendungen profitieren am meisten von UUIDs. Sie verhindern ID-Konflikte und verbessern die Sicherheit.

Wann Sie UUIDs NICHT verwenden sollten

Bei kleinen, monolithischen Anwendungen mit hohem Durchsatz können UUIDs die Datenbank-Performance beeinträchtigen (Fragmentierung). Auto-increment IDs sind hier oft besser geeignet.

UUID v7 im Jahr 2026: der neue Standard

UUID v7 wurde im Mai 2024 mit RFC 9562 standardisiert und hat sich schnell zur Standardwahl für neue Identifikatoren entwickelt, die sortierbar und datenbankfreundlich sein sollen.

Wichtige Datenbanken erzeugen v7 inzwischen nativ (etwa PostgreSQL mit uuidv7() in PostgreSQL 18), und gängige ID-Bibliotheken liefern v7 standardmäßig. Da v7 einen Millisekunden-Zeitstempel enthält, sind die Werte zeitgeordnet, was die Fragmentierung von B-Baum-Indizes bei hohem Schreibvolumen reduziert.

Praktische Empfehlung: Verwenden Sie v7 für Primärschlüssel und Ereignis-IDs, wo Ordnung die Leistung verbessert; v4, wenn Sie vollständig unvorhersehbare Zufallswerte benötigen (etwa für Tokens); vermeiden Sie v1 für neue Arbeit, da es die MAC-Adresse des erzeugenden Geräts preisgeben kann.

Aufbau einer UUID: Bitfelder und Prüfstellen

Eine UUID ist 128 Bit lang und wird als 36 Zeichen dargestellt: 32 Hexziffern in der Form 8-4-4-4-12, getrennt durch vier Bindestriche, etwa 550e8400-e29b-41d4-a716-446655440000.

Zwei Stellen sind nicht zufällig belegt. Das erste Hexzeichen der dritten Gruppe trägt die Version, im Beispiel die 4. Das erste Hexzeichen der vierten Gruppe trägt die Variante und liegt bei UUIDs nach RFC 9562 bei 8, 9, a oder b. Damit bleiben bei v4 genau 122 der 128 Bit für Zufallswerte übrig.

RFC 9562 hat im Mai 2024 den Vorgänger RFC 4122 abgelöst und die Versionen 6, 7 und 8 ergänzt. Die Nil-UUID aus lauter Nullen und die Max-UUID aus lauter Einsen sind reserviert und tragen keine Zufallsinformation.

UUID-Versionen jenseits von v4: v1, v6 und v8

Version 1 kombiniert einen 60-Bit-Zeitstempel in 100-Nanosekunden-Schritten seit dem 15. Oktober 1582 mit einer 14-Bit-Clock-Sequence und einem 48-Bit-Node-Feld. Der Zeitstempel ist auf drei Felder verteilt und steht nicht am Anfang, weshalb sich v1-Werte in einer Datenbank nicht in zeitlicher Reihenfolge sortieren lassen.

Version 6 verwendet dieselben Felder, ordnet den Zeitstempel aber neu an, sodass die Sortierung der Werte der zeitlichen Reihenfolge entspricht. Version 8 ist für eigene Festlegungen reserviert: Anwendungen dürfen ihre eigenen Bitfelder definieren, solange Version und Variante eingehalten werden.

FAQ

Q.Sind UUIDs wirklich eindeutig?

A.Praktisch ja. Die Kollisionswahrscheinlichkeit ist so gering (1 zu 2^122 bei v4), dass Sie UUIDs für alle praktischen Zwecke als eindeutig behandeln können.

Q.Schaden UUIDs der Datenbank-Performance?

A.Zufällige UUIDs (v4) können bei B-Trees zu Index-Fragmentierung führen. Bei kritischer Performance nutzen Sie zeitgeordnete UUIDs (v7) oder ULIDs.

Q.Sind UUIDs sicher?

A.UUIDs sind nicht für Sicherheit ausgelegt. Verwenden Sie sie nicht als Passwörter oder Schlüssel – sie dienen der Identifikation, nicht der Authentifizierung.

Q.Sollte ich 2026 UUID v7 oder v4 verwenden?

A.Für neue Datenbankschlüssel mit hohem Schreibvolumen ist UUID v7 die praktische Standardwahl: Sie ist zeitgeordnet nach RFC 9562, reduziert die Index-Fragmentierung und wird von großen Datenbanken und Bibliotheken nativ unterstützt. Wählen Sie v4, wenn Sie rein zufällige, unvorhersehbare Identifikatoren benötigen und die Reihenfolge keine Rolle spielt. Vermeiden Sie v1 für neue Arbeit, da es die MAC-Adresse des erzeugenden Geräts preisgeben kann.

Referenzen

  • RFC 9562 – Universally Unique IDentifiers (UUIDs): https://www.rfc-editor.org/rfc/rfc9562

UUIDs lokal erzeugen

Erstellen Sie UUID v1, v4 oder v7 im Browser, einzeln oder im Stapel.

Fazit

Die richtige UUID-Version ist eine Schema-Entscheidung mit realer Performance-Wirkung. Erzeugen Sie v1, v4 oder v7 lokal mit dem UUID-Generator.

UUID VersionenUUID v4UUID v7GUIDeindeutige IDsPrimärschlüsselDatenbank-Design