UUID erklärt — v4 vs v7 (und v1)
Verstehe die UUID-Versionen — v4 für zufällige IDs, v7 für zeitlich geordnete Datenbankschlüssel und das veraltete v1. Erzeuge sie lokal in deinem Browser, ohne Server und Upload.
Eine UUID (Universally Unique Identifier) ist ein 128-Bit-Label, das etwas ohne zentrale Nummernvergabe eindeutig kennzeichnen soll. Wenn du jemals eine eindeutige Zeilen-ID, einen Dateinamen ohne Kollision oder einen Schlüssel für ein verteiltes System gebraucht hast, bist du UUIDs begegnet. Der UUID-Generator erzeugt v4, v1 und v7 lokal mit Web Crypto — nichts wird an einen Server gesendet.
TL;DR
Eine UUID ist ein 128-Bit-Bezeichner; die Version, die du wählst, bestimmt, was diese Bits bedeuten.
- v4 ist rein zufällig (die Voreinstellung) — die Standardwahl, wenn du einfach eine eindeutige ID brauchst.
- v7 ist zeitlich sortierbar — sie enthält einen Unix-Millisekunden-Zeitstempel, sortiert also chronologisch und ergibt einen deutlich besseren Datenbank-Indexschlüssel.
- Lokal mit Web Crypto erzeugt —
crypto.getRandomValuesliefert die Zufälligkeit in deinem Browser, also ist kein Server beteiligt und kein Wert verlässt das Gerät.
Was eine UUID ist
Eine UUID sind 128 Bit Daten, konventionell als 32 Hexadezimalziffern in fünf durch Bindestriche getrennten Gruppen dargestellt — das 8-4-4-4-12-Layout:
550e8400-e29b-41d4-a716-446655440000
Ein paar Bits sind reserviert, um die Version (die 4 in der dritten Gruppe oben bedeutet v4) und die Variante (das führende a/b/8/9 in der vierten Gruppe) zu markieren. Alles andere trägt die eigentlichen Identifikationsdaten, und was diese Daten sind, hängt von der Version ab. Der gesamte Raum — 2¹²⁸ mögliche Werte — ist so riesig, dass zufällige UUIDs bei jedem realistischen Umfang praktisch nie kollidieren.
Eines, was eine UUID nicht ist: ein Geheimnis. Sie ist ein Bezeichner, wie ein Nummernschild. Das Kennen einer UUID lässt dich keine andere ableiten, aber eine UUID allein bietet keine Zugriffskontrolle — verwende sie nicht als Passwort oder Token.
UUID v4 — der zufällige Standard
v4 ist die Version, die die meisten meinen, wenn sie “UUID” sagen. Von ihren 128 Bit sind 122 zufällig (6 sind für Version und Variante festgelegt), aus einer kryptografischen Zufallsquelle. Das Ergebnis ist ein Bezeichner ohne Bezug zu Zeit, Ort oder irgendeinem anderen Wert.
Weil der Zufallsraum so groß ist, ist die Wahrscheinlichkeit, dass zwei unabhängig erzeugte v4-UUIDs kollidieren, astronomisch klein — du müsstest Milliarden pro Sekunde über Jahre erzeugen, bevor es plausibel würde. Das macht v4 zur richtigen Wahl, wenn du eine eindeutige ID brauchst und die Reihenfolge egal ist: eine Anfrage-ID, einen Sitzungsschlüssel, einen Dateinamen. Der Kompromiss ist, dass v4-Werte gleichmäßig über den Raum verteilt sind, was für einen Datenbankindex schlechte Nachrichten ist (siehe unten).
UUID v7 — die zeitlich sortierbare
v7 enthält einen Unix-Millisekunden-Zeitstempel in den führenden Bits, die restlichen Bits sind zufällig. Die entscheidende Folge: v7-UUIDs sortieren in der Reihenfolge ihrer Erstellung.
Das ist wichtig für Datenbanken. Ein Primärschlüssel-Index funktioniert am besten, wenn Einfügungen sequenziell sind, weil neue Zeilen nebeneinander im Index landen (ein “Anhängen”-Muster) statt zufällig über die Seiten verstreut. v4-Einfügungen treffen zufällige Seiten — das verursacht zufällige Festplatten-E/A, Seitenaufteilungen und Indexfragmentierung, je mehr die Tabelle wächst. v7-Einfügungen gruppieren sich, sodass die Datenbank sequenziell schreibt und der Index kompakt bleibt.
Für jede Tabelle, die mit der Zeit wächst — Bestellungen, Ereignisse, Log-Zeilen — ist v7 meist der bessere Primärschlüssel. Du behältst Eindeutigkeit zwischen Maschinen ohne Abstimmung, aber mit einem gut funktionierenden Index.
UUID v1 — die veraltete
v1 codiert ebenfalls einen Zeitstempel (60 Bit einer 100-Nanosekunden-Uhr seit 1582) plus eine Knotenkennung, historisch aus der MAC-Adresse der Maschine abgeleitet. Sie ist in demselben Sinn sortierbar wie v7, hat aber zwei Nachteile, die sie heute selten zur richtigen Wahl machen:
- Datenschutzleck — das Einbetten der MAC-Adresse in jede UUID verrät die Netzwerk-Hardware der erzeugenden Maschine und macht UUIDs von einem Knoten trivial verknüpfbar. In einer Welt, in der Datenschutz der Standard ist, ist das ein echter Nachteil.
- Kein echter Vorteil gegenüber v7 — v7 gibt dir zeitliche Ordnung mit einem sauberen Unix-ms-Zeitstempel und ohne Hardware-Fingerabdruck, sodass die Gründe, zu v1 zu greifen, weitgehend verschwunden sind.
Wenn du bereits v1-Daten hast, funktionieren sie weiterhin problemlos; beginne nur keine neuen Systeme mit v1. v4 (wenn die Reihenfolge egal ist) oder v7 (wenn sie wichtig ist) deckt praktisch jeden modernen Bedarf.
Schritt für Schritt: UUIDs erzeugen
Der UUID-Generator wird vollständig in deinem Browser mit Web Crypto ausgeführt, sodass die Zufallsbytes lokal erzeugt werden und nichts hochgeladen wird. So geht’s:
- Wähle die Version. Die Buttons v4 / v1 / v7 wählen, welche UUID-Version erzeugt wird (v4 ist standardmäßig gewählt).
- Wähle die Anzahl. Das Feld Anzahl legt fest, wie viele erzeugt werden: 5, 10, 25, 50 oder 100 (maximal 100). Standard ist 10.
- Wähle ein Format. Sieben Ausgabeformate formen das Ergebnis:
- plain — die Standardform
8-4-4-4-12, wie550e8400-e29b-41d4-a716-446655440000. - UPPER — alles in Großbuchstaben, für Systeme, die das bevorzugen.
- ohne Bindestriche — die 32 Hex-Ziffern zusammengezogen, wie
550e8400e29b41d4a716446655440000. - {Klammern} — in
{...}, der Microsoft-GUID-Stil. - “string” — in doppelten Anführungszeichen, bereit zum Einfügen als JSON-Wert.
- SQL IN — formatiert als
('...','...')für eine SQL-IN (...)-Klausel. - JS array — formatiert als
["...","..."], ein direkt verwendbares JavaScript-Array-Literal.
- plain — die Standardform
- Erzeugen. Klicke Neu für eine einzelne UUID oder Erzeugen, um die volle Anzahl auf einmal zu erzeugen (Bulk erzeugen).
- Kopieren. Klicke Kopieren, um alle erzeugten Werte in die Zwischenablage zu kopieren.
Beim Wechseln der Version wird sofort ein einzelner neuer Wert in dieser Version erzeugt, sodass du Formate nebeneinander vergleichen kannst.
FAQ
Sind UUIDs geheim?
Nein. Eine UUID ist ein Bezeichner, kein Geheimnis. Das Kennen einer UUID lässt dich keine andere vorhersagen, und ein v4/v7-Wert allein gewährt keinen Zugriff. Wenn du etwas brauchst, das schwer zu erraten sein soll — ein Passwort, ein API-Token, ein Sitzungsgeheimnis — erzeuge ein echtes Geheimnis mit dem Passwort- und Token-Generator. UUIDs sind für Eindeutigkeit, nicht für Zugriffskontrolle.
v4 oder v7 für meine Datenbank?
Für eine Tabelle, die mit der Zeit wächst, ist v7 meist der bessere Primärschlüssel: sie sortiert nach Erstellungszeit, sodass Einfügungen sequenziell sind und der Index kompakt bleibt, statt unter zufälliger E/A zu fragmentieren. Verwende v4, wenn die Reihenfolge keine Rolle spielt und du die breiteste Kompatibilität willst — Anfrage-IDs, Cache-Schlüssel oder überall, wo der Wert nur ein Label ist. Wenn du unsicher bist, wähle v7 für neue Primärschlüssel und v4 für alles andere.
Welches Format soll ich wählen?
Das hängt davon ab, wohin der Wert geht. plain ist die sichere Voreinstellung und das, was die meisten Systeme erwarten. UPPER passt zu Systemen, die GUIDs in Großbuchstaben speichern. ohne Bindestriche spart 4 Bytes und passt in enge Formate. {Klammern} folgt der Microsoft-GUID-Konvention. “string” lässt sich direkt als JSON-Wert verwenden, SQL IN in einer Datenbankabfrage und JS array in JavaScript-Quellcode. Wähle die Form, die zu deinem Ziel passt.
Kann ich viele auf einmal erzeugen?
Ja. Setze die Anzahl (bis 100) und klicke Erzeugen, um so viele UUIDs auf einmal zu erzeugen, dann Kopieren, um sie alle zu übernehmen. Wenn du nur eine brauchst, erzeugt Neu einen einzelnen Wert, ohne die Anzahl zu berühren.

Mit diesem Tool starten
Jetzt starten