tomai
Anmelden

UUIDs erklärt: v1 vs v4 vs v7 und wann welche passt

Eine UUID ist eine 128-Bit-Kennung, geschrieben als 32 Hex-Zeichen in fünf Gruppen — 8, 4, 4, 4 und 12 Zeichen — so entworfen, dass jeder überall eine erzeugen kann, ohne eine zentrale Stelle zu fragen. Sie kennzeichnen Zeilen, Dateien, Sitzungen und API-Schlüssel über Systeme hinweg, die nie miteinander sprechen.

1. v1: Zeit plus Maschine

Version 1 bettet einen Zeitstempel und eine Knotenkennung ein, meist abgeleitet von der Netzwerkkarte. IDs sortieren sich grob nach Erstellungszeit, was Datenbanken lieben, aber sie verraten, wann und wo sie erzeugt wurden — ein Datenschutzmakel, der die meisten neuen Systeme von v1 weggebracht hat.

2. v4: reiner Zufall

Version 4 füllt 122 der 128 Bits aus einer kryptografischen Zufallsquelle, vier Bits sind fest für die Version markiert. Die Kollisionschancen sind absurd klein — eine Milliarde IDs pro Sekunde über ein Jahrhundert lässt die Chance auf ein einziges Duplikat noch weit unter Hardware-Ausfallraten — aber der Zufall streut Datenbank-Indizes und bremst Einfügungen in riesige Tabellen.

3. v7: der moderne Standard

Version 7 stellt einen Millisekunden-Zeitstempel an den Anfang und füllt den Rest zufällig, was zeitlich sortierte IDs ohne verratene Maschinenidentität ergibt. Neue Projekte, die sortierbare, indexfreundliche Kennungen brauchen, sollten zu v7 greifen; genau das erzeugt unser UUID-Generator neben klassischem v4.

4. Wann keine UUID

Kurze menschenlesbare Codes, Rechnungsnummern und alles, was Nutzer von Hand tippen, sind mit Zählern oder kompakten Kodierungen besser bedient — UUIDs sind lang, unaussprechlich und tippfehleranfällig. Verwenden Sie keine UUID je als Geheimnis: Sie sind eindeutig, nicht unerratbar, denn v1 und v7 enthalten Zeitstempel und v4 wird, obwohl zufällig, oft geloggt oder in URLs offengelegt.