Wer mit Datenbanken, APIs oder verteilten Systemen arbeitet, stoesst frueher oder spaeter auf kryptische Zeichenketten wie 550e8400-e29b-41d4-a716-446655440000. Das ist eine UUID, eine universell eindeutige Kennung. Sie loest ein altes Problem der Softwareentwicklung: Wie vergibt man eindeutige IDs, ohne dafuer eine zentrale Instanz fragen zu muessen? Dieser Ratgeber erklaert, wie UUIDs aufgebaut sind und warum sie so verlaesslich funktionieren.
Was ist eine UUID?
UUID steht fuer "Universally Unique Identifier", im Microsoft-Umfeld auch GUID (Globally Unique Identifier) genannt. Es handelt sich um eine 128-Bit-Zahl, die ueblicherweise als 32 hexadezimale Zeichen in fuenf durch Bindestriche getrennten Gruppen dargestellt wird, im Muster 8-4-4-4-12. Die Spezifikation ist im Standard RFC 4122 (inzwischen abgeloest durch RFC 9562) festgelegt.
Der entscheidende Vorteil: Du kannst eine UUID lokal auf jedem Geraet erzeugen und darfst praktisch sicher sein, dass niemand anderes auf der Welt jemals dieselbe ID erzeugt. Es braucht keinen zentralen Server, keine Sperre und keine Absprache.
Die verschiedenen Versionen
Nicht jede UUID wird gleich erzeugt. Eine Ziffer im Code (das erste Zeichen der dritten Gruppe) verraet die Version:
- Version 1: Basiert auf Zeitstempel und MAC-Adresse des Geraets. Eindeutig, verraet aber Geraet und Erstellzeitpunkt.
- Version 3 und 5: Werden aus einem Namen und einem Namensraum per Hash (MD5 bzw. SHA-1) abgeleitet. Gleiche Eingabe ergibt immer dieselbe UUID.
- Version 4: Komplett zufallsbasiert. 122 der 128 Bit sind frei zufaellig. Die mit Abstand haeufigste Variante.
- Version 7: Eine neuere Variante, die einen Zeitstempel voranstellt und dadurch sortierbar ist, ideal als Datenbank-Primaerschluessel.
Mit dem UUID Generator auf kotsch.tech erzeugst du auf Knopfdruck eine zufaellige UUID v4, fertig zum Kopieren in deine API, deine Datenbank oder deine Tests.
Warum UUID v4 so beliebt ist
Version 4 hat sich durchgesetzt, weil sie keinerlei sensible Information preisgibt. Anders als Version 1 enthaelt sie weder MAC-Adresse noch Erstellzeitpunkt, sondern besteht fast vollstaendig aus Zufall. Sie laesst sich offline erzeugen, ist betriebssystem- und sprachunabhaengig und erfordert keine Koordination zwischen Systemen.
Das macht v4 zur idealen Wahl fuer Session-Tokens, Datensatz-IDs, Datei-Namen, Transaktionsnummern oder Korrelations-IDs in Logs verteilter Microservices.
Wie wahrscheinlich ist eine Kollision?
Die haeufigste Sorge: Was, wenn zwei zufaellige UUIDs identisch sind? Die Zahlen beruhigen. Mit 122 Zufallsbits gibt es rund 5,3 mal 10 hoch 36 moegliche Werte. Selbst wenn du eine Milliarde UUIDs pro Sekunde ueber 100 Jahre erzeugst, liegt die Wahrscheinlichkeit einer einzigen Kollision noch im verschwindend kleinen Bereich. Fuer praktisch jede Anwendung gilt eine UUID v4 als ausreichend eindeutig.
UUID oder fortlaufende Nummer in der Datenbank?
Klassische Datenbanken nutzen oft eine automatisch hochzaehlende Ganzzahl (Auto-Increment). Das ist platzsparend und schnell, hat aber Nachteile: Die naechste ID ist erratbar, und beim Zusammenfuehren von Daten aus mehreren Servern kommt es zu Konflikten. UUIDs loesen das, weil jeder Knoten unabhaengig IDs vergeben kann.
- Vorteil UUID: Dezentral erzeugbar, nicht erratbar, konfliktfrei bei Replikation und Datenmigration.
- Nachteil UUID: Groesser (16 Byte statt 4 oder 8), und rein zufaellige v4 verteilt Eintraege ungeordnet im Index, was die Schreibleistung mindern kann. Hier glaenzt das sortierbare Version 7.
Praxis-Tipps
Speichere UUIDs in der Datenbank moeglichst als nativen UUID- oder Binaer-Typ statt als Text, das spart Platz und beschleunigt Vergleiche. Achte beim Loggen darauf, UUIDs konsistent in Kleinbuchstaben zu schreiben, damit Suchen zuverlaessig treffen. Und verwechsle eine UUID nie mit einem Sicherheitsmerkmal: Sie ist eindeutig, aber kein Geheimnis und kein Ersatz fuer echte Authentifizierung.
Brauchst du fuer Logins oder Tokens stattdessen sichere Zufallswerte, hilft ein Blick auf den UUID Generator in Kombination mit den weiteren Developer-Werkzeugen unter kotsch.tech/webtools, etwa zur Kodierung und Validierung von Daten.
Fazit
Eine UUID ist eine 128-Bit-Kennung, die sich ohne zentrale Koordination eindeutig vergeben laesst. Version 4 setzt komplett auf Zufall, gibt keine Metadaten preis und ist damit der Standard fuer moderne APIs und verteilte Systeme. Erzeuge dir deine naechste eindeutige ID einfach direkt mit dem UUID Generator auf kotsch.tech.