fixmint
DE

UUID v4 oder v7: Welche Version du wählen solltest und warum es wichtig ist

Von · · aktualisiert 8. November 2026 · 5 Min. Lesezeit

Nimm UUID v4, wenn du nur einen zufälligen Bezeichner brauchst. Nimm UUID v7, wenn der Bezeichner als Datenbankschlüssel dient oder wenn du IDs nach Erstellungszeit sortieren möchtest. Beide sind 128 Bit lang und werden in derselben 36-stelligen Form geschrieben. Der Unterschied liegt darin, wie die Bits angeordnet sind. Der UUID-Generator unten erzeugt beide Versionen, jeweils eine bis 500 auf einmal, direkt in deinem Browser.

UUID-GeneratorIch brauche eindeutige IDs für CodeKostenlos loslegen

Wie eine UUID aussieht

Eine UUID (Universally Unique Identifier) ist eine 128-Bit-Zahl, die als 32 hexadezimale Ziffern in fünf Gruppen geschrieben wird: 8, 4, 4, 4 und 12 Ziffern, getrennt durch Bindestriche. Ein Beispiel ist 3f2b8c1e-6d4a-4f7b-9c2e-8a1d5e0b7f63.

Zwei Teile der Zahl sind festgelegt. Vier Bits enthalten die Version, daher beginnt die dritte Gruppe bei v4 mit 4 und bei v7 mit 7. Zwei Bits enthalten die Variante, daher beginnt die vierte Gruppe mit 8, 9, a oder b. Der Rest trägt den eigentlichen Bezeichner. Wegen der Variant- und Versionsbits hat eine UUID v4 122 Zufallsbits und nicht 128.

UUID v4: zufällig

Eine UUID v4 ist abgesehen von diesen festen Bits zufällig. Ihre 122 Zufallsbits machen eine Doppelung extrem unwahrscheinlich. Angenommen, du erzeugst eine Milliarde UUIDs v4. Die Wahrscheinlichkeit, dass zwei davon übereinstimmen, beträgt ungefähr n² geteilt durch das Doppelte der Anzahl möglicher Werte, also etwa 10 hoch minus 19. Kollisionen musst du also nicht extra einplanen.

Diese Abschätzung setzt voraus, dass der Generator seine Bits aus einer kryptografischen Zufallsquelle bezieht. Ein vorhersagbarer Generator würde die Abschätzung unbrauchbar machen. Dieses Tool nutzt die kryptografische Zufallsquelle des Browsers, über crypto.randomUUID oder crypto.getRandomValues.

UUID v7: zuerst die Zeit

RFC 9562 definiert v7. Die ersten 48 Bits enthalten die Unix-Zeit in Millisekunden. Eine später erzeugte ID hat deshalb einen größeren ersten Teil als eine früher erzeugte. Danach folgen die Versionsbits, dann Zufallsbits, die Variantbits und weitere Zufallsbits. Ein Teil des Zufallsbereichs kann einen Zähler aufnehmen. So bleiben IDs in der richtigen Reihenfolge, wenn mehrere innerhalb derselben Millisekunde entstehen.

Weil die Zeit vorne steht, sortiert man v7-IDs als Text (in einheitlicher Schreibweise) nach Erstellungszeit, auf die Millisekunde genau. Das funktioniert, weil die hexadezimalen Ziffern feste Breite haben und die Zeit in den führenden Zeichen steht.

Die Zeit ist außerdem sichtbar. Wer eine UUID v7 liest, kann ungefähr erkennen, wann sie erstellt wurde. Du kannst das selbst prüfen: Im Feld Prüfen des UUID-Generators werden die ersten 48 Bits wieder in Datum und Uhrzeit umgewandelt.

Warum v7 für Datenbankindizes passt

Ein Datenbankindex ist meist ein B-Baum, also eine Struktur, die nach dem Schlüssel sortiert gehalten wird. Ist der Schlüssel zufällig, wie bei v4, landet jede neue Zeile an einer zufälligen Stelle im Index. Die Datenbank muss dann an vielen verschiedenen Stellen des Index schreiben, was mehr Seitenteilungen und mehr Cache-Fehlzugriffe verursacht. Bei großen Tabellen summiert sich dieser Aufwand.

Ein v7-Schlüssel ist größer als fast alle bereits vorhandenen Schlüssel im Index, weil sein Zeitanteil wächst. Neue Zeilen werden deshalb nahe am Ende des Index eingefügt, ähnlich wie bei einer automatisch hochzählenden Nummer. Die aktuellen Indexseiten bleiben im Speicher, und die Schreibvorgänge bleiben übersichtlich. Der Unterschied fällt vor allem bei großen, stetig wachsenden Tabellen auf und ist bei kleinen Tabellen kaum spürbar.

Zwischen v4 und v7 wählen

  • Primärschlüssel in Datenbanken oder jede Tabelle, die mit der Zeit wächst: v7. Der Index bleibt geordnet.
  • Logs, Ereignisse oder Nachrichten, die du oft nach Zeit sortierst: v7, weil die ID selbst die Reihenfolge enthält.
  • Öffentliche IDs, bei denen der Erstellungszeitpunkt verborgen bleiben soll: v4. Eine v7-ID verrät, wann sie erstellt wurde.
  • Viele Geräte mit unzuverlässigen Uhren: v4 und v7 bleiben beide eindeutig, weil die Zufallsbits diese Aufgabe übernehmen. Nur die Sortierung bei v7 hängt davon ab, dass die Uhren stimmen.

Beide Versionen sind Standard, aber ältere Bibliotheken kennen womöglich nur v4. RFC 4122 beschrieb über viele Jahre die Versionen 1 bis 5. RFC 9562 wurde im Mai 2024 veröffentlicht, ersetzt RFC 4122 und definiert die Versionen 6, 7 und 8. Prüfe, ob die Version deiner Bibliothek v7 unterstützt, bevor du dich darauf verlässt.

UUIDs speichern

Eine UUID als Text nimmt 36 Zeichen ein. Ihre 16 Bytes lassen sich binär speichern, was deutlich weniger Platz braucht. Viele Datenbanken haben dafür einen nativen UUID-Typ oder eine binäre 16-Byte-Spalte. Der Vergleich geht damit schneller als bei Text.

Wähle ein Format und bleib dabei. Großbuchstaben, Kleinbuchstaben, Bindestriche und geschweifte Klammern ergeben für Menschen dieselbe UUID. Eine Datenbank oder ein Zeichenkettenvergleich kann sie aber als unterschiedliche Werte behandeln. Die Optionen des Generators für Großbuchstaben, ohne Bindestriche und mit geschweiften Klammern gibt es für Systeme, die genau diese Formen verlangen.

Eine UUID nie als Geheimnis verwenden

Eine UUID ist ein Bezeichner, kein Passwort, kein Sitzungstoken und kein Zugriffsschlüssel. Sie ist für Eindeutigkeit gebaut, nicht dafür, unratbar zu sein. Eine UUID v7 enthält außerdem ihre Erstellungszeit. Und Bezeichner landen in Links, Logs, E-Mails und Screenshots, wo jeder, der sie sieht, sie weiterverwenden kann.

Die Zugriffskontrolle gehört auf den Server. Wer eine ID kennt, darf den Datensatz, den sie benennt, nicht automatisch ansehen oder ändern. Für Passwörter, Passphrasen oder Tokens nimm einen Generator, der für Geheimnisse gebaut ist. Der Passwort-Generator erstellt zufällige Passwörter oder Wort-Passphrasen auf deinem Gerät mit sicherer Zufallsquelle und schätzt ihre Stärke ein. Hintergrund dazu, warum Länge und Zufälligkeit wichtig sind, findest du unter starke Passwörter und Entropie.

So nutzt du das Tool

  1. Wähle Version 4 für zufällige IDs oder Version 7 für IDs, die nach Zeit sortiert werden.
  2. Lege die Anzahl fest, bis zu 500 auf einmal.
  3. Aktiviere Großbuchstaben oder ohne Bindestriche bzw. geschweifte Klammern, wenn dein Code eine bestimmte Form verlangt.
  4. Kopiere alle oder lade die Liste als .txt-Datei herunter.
  5. Füge eine beliebige UUID unter Prüfen ein, um ihre Version, ihre Variante und bei v7 die darin enthaltene Zeit zu lesen.

Kurze Antworten

Ist eine UUID v4 eindeutig? In der Praxis ja. Ihre 122 Zufallsbits machen eine Doppelung so unwahrscheinlich, dass du nicht danach suchen musst.

Soll ich überall v7 verwenden? Nicht immer. Nimm v7 für Datenbankschlüssel und alles, was nach Zeit sortiert wird. Nimm v4, wenn der Erstellungszeitpunkt verborgen bleiben soll.

Kann ich eine UUID als Passwort verwenden? Nein. Sie ist ein Bezeichner. Für alles, was geheim bleiben muss, nimm einen Passwort-Generator.

Schickt das Tool die IDs irgendwohin? Nein. Die IDs werden in deinem Browser erzeugt und angezeigt und nicht an einen Server gesendet.

Mit KI-Unterstützung aus dem Englisches Original übersetzt.

Kommentare

    Noch keine Kommentare. Schreib den ersten.

    Deine Bewertung (optional)

    Deine E-Mail wird nie angezeigt oder gespeichert.

    Cover von Open Data for AGI - Why Public, Free, and Open Datasets MatterOpen Data for AGI - Why Public, Free, and Open Datasets Matter

    Warum öffentliche, freie und offene Datensätze die allgemeine künstliche Intelligenz genauso prägen werden wie Algorithmen und Rechenleistung.

    $4.99Auf Gumroad holenAuf Englisch