Anzahl und Format wählen – der Generator erzeugt zufällige UUIDs nach Version 4 direkt im Browser.
Eine UUID – Universally Unique Identifier – ist eine 128 Bit lange Kennung, die weltweit eindeutig sein soll, ohne dass eine zentrale Vergabestelle nötig wäre. Geschrieben wird sie als 32 hexadezimale Zeichen in fünf durch Bindestriche getrennten Gruppen nach dem Muster 8-4-4-4-12, also insgesamt 36 Zeichen. Genormt ist das Format in RFC 4122.
Es existieren mehrere Versionen. Version 1 leitet die Kennung aus Zeitstempel und MAC-Adresse ab und verrät damit, wann und auf welchem Gerät sie entstand – aus Datenschutzsicht problematisch. Version 3 und 5 berechnen sie aus einem Namen per Hashfunktion, sind also reproduzierbar. Version 4 besteht dagegen fast vollständig aus Zufall und ist deshalb die verbreitetste. Sechs der 128 Bit sind festgelegt: vier für die Versionsnummer, zwei für die Variante. Bleiben 122 zufällige Bit.
122 Bit ergeben rund 5,3 × 10³⁶ mögliche Werte. Nach dem Geburtstagsparadoxon liegt die Wahrscheinlichkeit einer Kollision bei einer Milliarde erzeugter UUIDs pro Sekunde über 85 Jahre hinweg immer noch bei etwa 50 Prozent – eine Größenordnung, die in der Praxis keine Rolle spielt. Wichtig ist allerdings die Qualität des Zufalls: Stammt er aus einem schwachen Generator, sinkt die tatsächliche Eindeutigkeit erheblich. Dieser Generator nutzt die kryptografisch sichere Schnittstelle des Browsers, sofern verfügbar, und weist die verwendete Quelle offen aus.
Die Standardform verwendet Kleinbuchstaben, doch die Norm schreibt beim Einlesen vor, dass Groß- und Kleinschreibung gleichwertig behandelt werden – zwei UUIDs unterscheiden sich also nie nur durch die Schreibweise. Ohne Bindestriche bleiben 32 Zeichen, was in URLs und Dateinamen kompakter ist. In Datenbanken sollte man UUIDs nicht als Text mit 36 Zeichen ablegen, sondern in einem eigenen Binärtyp mit 16 Byte: Das spart mehr als die Hälfte des Speichers und beschleunigt Vergleiche erheblich. Microsoft verwendet für dasselbe Konzept die Bezeichnung GUID; technisch sind beide identisch, lediglich die Byte-Reihenfolge weicht in älteren Windows-Schnittstellen ab.
Gegenüber fortlaufenden Zahlen hat die UUID zwei Vorteile: Sie lässt sich dezentral erzeugen, ohne dass Systeme sich abstimmen müssen, und sie verrät nichts über die Menge der Datensätze – bei einer ID in der URL kann sonst jeder die Größe der Datenbank abschätzen und benachbarte Einträge durchprobieren. Der Preis ist Speicherplatz und Geschwindigkeit: 16 Byte statt 4 oder 8, und weil Version-4-UUIDs zufällig verteilt sind, verteilen sich Einfügungen über den gesamten Index statt am Ende anzuhängen, was bei großen Tabellen zu Fragmentierung führt. Für diesen Fall gibt es zeitlich sortierbare Varianten wie UUID Version 7. Verwandte Werkzeuge sind der Passwort-Generator und der Zufallszahlen-Generator.