Pack Camo

UUID Generator (v4, v7, ULID, NanoID)

UUID v4 und v7, ULID und NanoID in großen Mengen erzeugen und jede UUID untersuchen. Alles läuft lokal — nichts wird hochgeladen.

Eingang
Count · format
Ausgang
UUID v4 · UUID v7 · ULID · NanoID
0 IDs

Untersuchen

Gültig
Ja
Typ
UUID v7
Version
7: nach Unix-Zeit sortiert
Variante
RFC 9562 (Standard)
Kanonische Form
0192be1c-a07b-7014-95a7-6e2daca81c16
Erstellt
2024-10-24T10:40:00.123Z

Brauchen Sie ganze Zeilen mit Testdaten und UUID-Schlüsseln? Mock-Data-Generator öffnen

Ein UUID Generator für jede Art von ID

Dieser UUID Generator erzeugt zufällige UUID-v4-Werte, zeitlich sortierte UUID v7, ULID und NanoID, von einer bis zehntausend auf einmal, in genau dem Format, das Ihr Code oder Ihre Datenbank erwartet. Fügen Sie eine vorhandene ID in den Inspektor ein, um zu prüfen, ob sie gültig ist, und um Version, Variante und Erstellungszeitpunkt abzulesen. Jede ID stammt aus dem kryptografischen Zufallszahlengenerator Ihres Browsers; nichts wird von einem Server angefordert oder an einen gesendet.

So erzeugen Sie UUIDs

  1. Wählen Sie den Typ: UUID v4 für schlichte Zufalls-IDs, UUID v7 oder ULID, wenn die IDs nach Erstellungszeit sortiert sein sollen, NanoID für kurze IDs in URLs.
  2. Legen Sie mit dem Feld oder den Schnellbuttons fest, wie viele Sie brauchen, bis zu 10.000.
  3. Wählen Sie das Format: Kleinbuchstaben oder GROSSBUCHSTABEN, mit oder ohne Bindestriche, im GUID-Stil in {geschweiften Klammern} oder in Anführungszeichen mit Kommas zum Einfügen in eine SQL-Liste IN (…) oder ein JSON-Array.
  4. Kopieren Sie die ganze Liste oder laden Sie sie als .txt, .csv oder .json herunter. Klicken Sie auf Neu erzeugen für einen frischen Satz.
  5. Um eine vorhandene ID zu prüfen, fügen Sie sie in den Inspektor unter der Liste ein.

UUID v4 oder UUID v7: Was sollten Sie verwenden?

Eine UUID ist ein 128-Bit-Bezeichner, geschrieben als 32 Hexadezimalziffern in fünf Gruppen, etwa 3f2c8a1e-5b7d-4e9f-a0c1-2d3e4f5a6b7c. Sechs dieser Bits sind fest: Vier geben die Version an (die erste Ziffer der dritten Gruppe) und zwei die Variante (die erste Ziffer der vierten Gruppe ist bei Standard-UUIDs 8, 9, a oder b).

Version 4 füllt die übrigen 122 Bits mit Zufallsdaten. Sie ist fast überall der Standard, verrät nichts darüber, wann oder wo sie erzeugt wurde, und die Wahrscheinlichkeit einer Kollision ist vernachlässigbar: Sie müssten 85 Jahre lang etwa eine Milliarde pro Sekunde erzeugen, um auch nur eine 50-prozentige Chance auf ein einziges Duplikat zu erreichen.

Version 7, 2024 in RFC 9562 standardisiert, stellt einen 48-Bit-Unix-Zeitstempel in Millisekunden an den Anfang und füllt den Rest mit Zufallsbits. Neue v7-IDs sortieren sich daher in Erstellungsreihenfolge, was B-Tree-Indizes in Datenbanken kompakt hält: Einfügungen landen am Ende des Index statt auf zufälligen Seiten, und das ist der Hauptgrund, warum Nutzer von Postgres, MySQL und SQL Server ihre Primärschlüssel von v4 auf v7 umstellen. Der Preis ist, dass jeder, der die ID hat, ablesen kann, wann sie erzeugt wurde. Dieser Generator hält v7-IDs selbst innerhalb derselben Millisekunde streng aufsteigend, indem er den im RFC beschriebenen 12-Bit-Zähler verwendet.

ULID und NanoID

Nehmen Sie ULID, wenn Sie zeitliche Sortierung in einer kürzeren Zeichenkette ohne Beachtung der Groß-/Kleinschreibung möchten; nehmen Sie NanoID für öffentlich sichtbare IDs wie Kurzlinks oder Einladungscodes, bei denen die Länge zählt und die zeitliche Sortierung nicht.

ULID
26 Zeichen Crockford-Base32, etwa 01JAZ1S83VV6F35M4HSN97TA7X: ein 48-Bit-Zeitstempel in Millisekunden, gefolgt von 80 Zufallsbits. Sortiert lexikalisch nach Zeit, vermeidet die verwechselbaren Buchstaben I, L, O und U und passt in dieselben 128 Bit wie eine UUID, lässt sich also in einer uuid-Spalte speichern. Der monotone Modus zählt den Zufallsteil für IDs aus derselben Millisekunde hoch.
NanoID
Eine kompakte Zufallszeichenkette, standardmäßig 21 Zeichen aus A–Z, a–z, 0–9, _ und -, was etwa 126 Bit Zufall ergibt: so kollisionssicher wie UUID v4 mit weniger Zeichen und ohne Kodierung sicher in URLs und Dateinamen.
Eigene Alphabete
NanoID kann nur Ziffern, nur Kleinbuchstaben, alphanumerische Zeichen, ein Alphabet ohne verwechselbare Zeichen oder jede beliebige eingegebene Zeichenmenge verwenden. Das Tool zeigt die resultierenden Zufallsbits, damit Sie eine Länge wählen können, die sicher bleibt.

GUID, Klammern und andere Formate

GUID ist Microsofts Name für dasselbe wie eine UUID. .NET, die Windows-Registry und COM geben sie oft in GROSSBUCHSTABEN in geschweiften Klammern aus, etwa {3F2C8A1E-5B7D-4E9F-A0C1-2D3E4F5A6B7C}, und genau das erzeugt die Klammer-Option. Manche Systeme wollen die 32 Ziffern ohne Bindestriche; andere speichern sie in einer binary(16)-Spalte. All das sind dieselben 128 Bit.

Die Formate in Anführungszeichen ergänzen die Kommas für Sie, sodass tausend IDs direkt in WHERE id IN (…) oder ein JSON-Array wandern können. Für realistische Zeilen statt bloßer IDs baut der Mock-Data-Generator ganze Tabellen mit UUID-Spalten.

Eine vorhandene UUID auslesen

Der Inspektor akzeptiert eine UUID mit oder ohne Bindestriche, Klammern, Anführungszeichen oder urn:uuid:-Präfix sowie eine ULID in Groß- oder Kleinschreibung. Er zeigt, ob der Wert wohlgeformt ist, welche Version und Variante er angibt, und bei den zeitbasierten Versionen 1, 6 und 7 sowie bei ULIDs die eingebettete Erstellungszeit als ISO-8601-Datum in Ihrer eigenen Zeitzone und in UTC.

Die Versionen 3 und 5 sind Hashes aus einem Namensraum und einem Namen (MD5 und SHA-1), dieselbe Eingabe ergibt also immer dieselbe UUID, und es gibt keine Zeit abzulesen. Version 8 ist für eigene Layouts reserviert. Die Nil-UUID (nur Nullen) und die Max-UUID (nur Einsen) sind im RFC definierte Sonderwerte.

Häufige Fragen

Was ist der Unterschied zwischen einer UUID und einer GUID?
Inhaltlich keiner: GUID ist Microsofts Name für eine UUID. Beides sind 128-Bit-Bezeichner; Microsoft-Tools zeigen sie meist in Großbuchstaben und in geschweiften Klammern an.
Sollte ich UUID v4 oder v7 als Primärschlüssel in der Datenbank verwenden?
Bevorzugen Sie v7 für Primärschlüssel. Der vorangestellte Zeitstempel sortiert neue Schlüssel in Einfügereihenfolge, was B-Tree-Indizes kompakt und Einfügungen schnell hält. Verwenden Sie v4, wenn die ID nicht verraten darf, wann der Datensatz angelegt wurde.
Können zwei erzeugte UUIDs jemals gleich sein?
Theoretisch ja, praktisch nein. Eine v4-UUID hat 122 Zufallsbits, Sie müssten also rund 2,7 Trillionen davon erzeugen, bevor ein einziges Duplikat wahrscheinlich wird.
Kann ich die Erstellungszeit aus einer UUID auslesen?
Nur bei zeitbasierten Versionen: v1, v6 und v7 enthalten einen Zeitstempel, ebenso ULIDs. Fügen Sie eine in den Inspektor ein, um das Datum in Ihrer Zeitzone zu sehen. Zufällige v4- und hashbasierte v3- und v5-UUIDs enthalten keine Zeit.
Was ist eine ULID und wie unterscheidet sie sich von einer UUID?
Eine ULID ist eine 128-Bit-ID, geschrieben als 26 Zeichen Crockford-Base32, mit einem Millisekunden-Zeitstempel am Anfang, damit sie nach Erstellungszeit sortiert. Sie hat dieselbe Größe wie eine UUID und erfüllt denselben Zweck wie UUID v7, in kürzerer Textform.
Wie lang sollte eine NanoID sein?
Die standardmäßigen 21 Zeichen aus dem URL-sicheren Alphabet mit 64 Zeichen ergeben etwa 126 Bit Zufall, vergleichbar mit UUID v4. Kürzere IDs sind für kleine Datenmengen in Ordnung, aber prüfen Sie die im Tool angezeigten Bits: Unter etwa 64 Bit werden Kollisionen bei großen Mengen plausibel.
Sind die hier erzeugten UUIDs sicher und privat?
Ja. Sie werden in Ihrem Browser mit dem kryptografischen Zufallszahlengenerator der Web Crypto API erzeugt und nie an einen Server gesendet oder dort gespeichert.