UUID-Generator
UUIDs der Version 4 oder 7 in Ihrem Browser erzeugen, einzeln oder hundert auf einmal.
Läuft vollständig in Ihrem Browser. Nichts wird hochgeladen, protokolliert oder gespeichert.
Eine UUID ist ein 128-Bit-Bezeichner, den Sie überall erzeugen können, ohne eine zentrale Stelle zu fragen, und trotzdem als eindeutig erwarten dürfen. Hier werden zwei Versionen angeboten, weil sie verschiedene Probleme lösen.
Wie es funktioniert
Version 4 sind 122 Zufallsbits, mit sechs festen Bits für Version und Variante. Sie trägt überhaupt keine Information, was für einen öffentlichen Bezeichner genau richtig ist und sie genau deshalb zu einem schlechten geclusterten Primärschlüssel macht: Aufeinanderfolgende Einfügungen landen an unzusammenhängenden Stellen im Index.
Version 7, in RFC 9562 genormt, stellt einen 48-Bit-Zeitstempel in Millisekunden vor 74 Zufallsbits. Später erzeugte Werte sortieren nach früher erzeugten, Einfügungen bleiben also am Ende des Index und Bereichsabfragen nach Zeit funktionieren. Der Preis: Der Bezeichner verrät, wann er entstanden ist.
Die Zufallsbits stammen aus dem kryptografischen Zufallszahlengenerator Ihres Browsers, derselben Quelle, die für Schlüssel benutzt wird, nicht aus Math.random.
Häufige Fragen
Soll ich v4 oder v7 nehmen?
v7 für einen Datenbank-Primärschlüssel, wo die Ordnung den Index gesund hält. v4, wenn der Bezeichner nach außen sichtbar ist und keine Entstehungszeit verraten darf, oder wenn die Ordnung jemandem erlauben würde abzuleiten, wie viele Datensätze Sie pro Stunde anlegen.
Können zwei UUIDs kollidieren?
Im Prinzip ja, in der Praxis bei v4 nein: Bei 122 Zufallsbits müssten Sie ein Jahrhundert lang Milliarden pro Sekunde erzeugen, bevor eine Kollision wahrscheinlich würde. Das echte Risiko ist eine schwache Zufallsquelle, weshalb hier die kryptografische verwendet wird.
Und was ist mit v1?
Version 1 bettet die MAC-Adresse des erzeugenden Rechners ein, was die Identität der Hardware verrät. v7 gibt Ihnen dieselbe zeitliche Ordnung ohne das und ist der moderne Ersatz.
Gut zu wissen
- Die Werte werden in Ihrem Browser erzeugt und nirgendwohin gesendet.
- Dieses Tool ist nicht deterministisch: Ein Neuladen der Seite gibt neue Bezeichner, und das ist der Sinn der Sache.