Skip to main content

Wird gesucht…

Tools
Artikel
Alle Ergebnisse anzeigen
RFC 4122 ID Generator

UUID v1 Generator - zeitstempelbasierte Bezeichner

UUID aus Zeitstempel und Knotenkennung nach RFC 4122. Datenschutzfreundlich mit zufälliger Knoten-ID statt MAC-Adresse, mit Massenexport.

UUID v1 Generator
Client-side
Export as:

Was ist UUID v1?

UUID v1 kombiniert einen 60 Bit langen Zeitstempel mit einer Taktsequenz und einer Knotenkennung. Es war die erste standardisierte Variante und sollte Eindeutigkeit über Zeit und Ort gleichzeitig garantieren.

Der Zeitstempel zählt 100-Nanosekunden-Intervalle seit dem 15. Oktober 1582 - dem Tag der Einführung des gregorianischen Kalenders.

Der innere Aufbau

Die 60 Zeitstempel-Bits verteilen sich auf drei Felder: time_low (32 Bit), time_mid (16 Bit) und time_hi_and_version (12 Bit plus 4 Bit Version). Dazu kommen 14 Bit Taktsequenz, 2 Bit Variante und 48 Bit Knotenkennung.

Entscheidend ist die Reihenfolge: das niederwertigste Zeitfeld steht vorn. Genau das verhindert die chronologische Sortierbarkeit und war der Anlass für UUID v6.

Der gregorianische Epochenbeginn

Um aus einer v1 einen Unix-Zeitstempel zu gewinnen, ziehen Sie den Versatz von 122.192.928.000.000.000 100-Nanosekunden-Intervallen ab und teilen durch 10.000. Die nominelle Auflösung von 100 Nanosekunden ist allerdings theoretisch: kaum ein Betriebssystem liefert eine so feine Uhr, weshalb Implementierungen die verbleibenden Stellen hochzählen oder auffüllen.

Datenschutz: die MAC-Adresse

Ursprünglich war die Knotenkennung die MAC-Adresse der Netzwerkkarte. Damit verrät jede so erzeugte UUID, auf welchem Gerät sie entstanden ist - eine Eigenschaft, die in der Vergangenheit bereits zur Zuordnung von Dokumenten zu einzelnen Rechnern genutzt wurde.

RFC 4122 lässt in Abschnitt 4.5 stattdessen eine zufällige Knotenkennung zu, deren Multicast-Bit gesetzt ist. Dieser Generator verwendet ausschließlich diesen Weg: sechs zufällige Bytes pro UUID, keine Geräteinformation.

Die Taktsequenz

Die 14 Bit Taktsequenz sollen Kollisionen verhindern, wenn die Systemuhr zurückgestellt wird oder zwei Prozesse dieselbe Knotenkennung teilen. In Implementierungen mit zufälliger Knotenkennung wird sie ebenfalls zufällig gesetzt und liefert damit zusätzliche Entropie.

Wann v1 sinnvoll ist - und wann nicht

Sinnvoll ist v1 dort, wo ein bestehendes System es erwartet: Cassandra mit timeuuid, ältere Windows- und COM-Komponenten, gewachsene Datenbankschemata.

Für neue Entwicklungen ist v7 in praktisch jeder Hinsicht überlegen: es ist sortierbar, verwendet den Unix-Epochenbeginn, enthält mehr Zufall und ist in RFC 9562 aktuell standardisiert. Wenn Sie zwischen v1 und v7 frei wählen können, nehmen Sie v7.

Frequently Asked Questions

In diesem Generator nicht. RFC 4122 erlaubt ausdrücklich eine zufällige Knotenkennung anstelle der MAC-Adresse, und genau die verwenden wir - sechs zufällige Bytes aus der Web Crypto API. Ältere serverseitige Implementierungen setzen dagegen oft die echte MAC-Adresse ein.

Nur eingeschränkt. Der Zeitstempel ist über drei Felder verteilt, wobei das niederwertigste vorn steht. Die Textform sortiert daher nicht chronologisch. Wenn Sie Sortierbarkeit brauchen, verwenden Sie v6 oder v7.

Überwiegend aus Kompatibilitätsgründen: Cassandra-Zeitreihen mit timeuuid, ältere Microsoft-Systeme und bestehende Schemata, die v1 erwarten. Für neue Systeme ist v7 die bessere Wahl.

Need identifiers in production?

Use our REST API or copy-ready Dev Lab snippets for 25+ languages.