ULID Generator Online
Erzeuge sortierbare ULIDs, dekodiere den eingebetteten Zeitstempel und konvertiere zwischen ULID und UUID in deinem Browser. Es wird nichts hochgeladen.
Der ULID Generator läuft vollständig in deinem Browser. Der Zufall stammt aus der Web Crypto API, und die ULIDs, die du erzeugst, dekodierst oder konvertierst, verlassen niemals dein Gerät oder erreichen ArrayKit.
UUID Generator öffnen
Über ULID Generator
Der ULID Generator erstellt ULIDs, den lexikografisch sortierbaren Identifier, der einen 48-Bit-Millisekunden-Zeitstempel und 80 Bit Zufall in einen kompakten 26-Zeichen-Crockford-base32-String packt. Erzeuge einen einzelnen ULID oder einen Stapel von Hunderten, schalte den monotonen Modus ein, sodass in derselben Millisekunde erzeugte IDs weiterhin in Erstellungsreihenfolge sortieren, und wechsle die Groß-/Kleinschreibung für das Format, das deine Datenbank bevorzugt. Der Dekodier-Modus kehrt den Prozess um: Füge einen beliebigen ULID ein und lies die exakte Erstellungszeit als Epoch-Millisekunden und ISO-8601-Zeitstempel zurück. Der eingebaute Converter verwandelt einen ULID in seinen gleichwertigen 128-Bit-UUID und zurück, ohne ein Bit zu verlieren. Praktisch, wenn du Datenbankschlüssel brauchst, die nach Zeit sortieren, Log-Korrelations-IDs oder eine UUID-Alternative. Die Zufalls-Bytes stammen aus der Web Crypto API deines Browsers und jeder ULID wird auf deinem Gerät gebaut, sodass nichts, was du erzeugst, jemals an einen Server gesendet wird.
Funktionen
- Erzeuge einen ULID oder einen Stapel von bis zu 500 auf einmal
- Der monotone Modus inkrementiert das Zufallsfeld, sodass IDs derselben Millisekunde weiterhin korrekt sortieren
- Verwendet die Web Crypto API für starken Zufall in den letzten 80 Bit
- Dekodiere jeden ULID zu seinem eingebetteten Epoch-ms- und ISO-8601-Zeitstempel
- Konvertiere verlustfrei zwischen einem ULID und seinem gleichwertigen 128-Bit-UUID
- Groß- oder Kleinschreibung-Ausgabe passend zu deinem Schema
- Das Crockford-base32-Alphabet überspringt I, L, O und U, um ähnlich aussehende Tippfehler zu vermeiden
- Kopiere den ganzen Stapel oder eine einzelne ID mit einem Klick
So verwendest du ULID Generator
- Lass den Erzeugen-Tab ausgewählt und stelle ein, wie viele ULIDs du brauchst
- Schalte Monoton ein für zeitgeordnete Schlüssel oder aus für unabhängige Zufalls-Suffixe
- Kopiere den ULID oder den ganzen Stapel aus dem Ausgabefeld
- Wechsle zu Dekodieren, um den Zeitstempel eines ULID zu lesen, oder zu ULID zu UUID, um zu konvertieren
Beispiel
Eingabe
01ARZ3NDEKTSV4RRFFQ69G5FAV
Ausgabe
timestamp: 1469922850259 (2016-07-30T23:54:10.259Z)
uuid: 01563e3a-b5d3-d676-4c61-efb99302bd5b
Die ersten 10 Zeichen dekodieren zur Erstellungszeit; alle 128 Bit bilden sich auf einen UUID ab.
Häufige Fehler & Fehlerbehebung
- Das Dekodieren meldet, dass der ULID ungültig ist, obwohl er richtig aussieht. — Ein ULID hat genau 26 Zeichen. Entferne umgebende Anführungszeichen oder Leerraum und beachte, dass das erste Zeichen 0–7 sein muss, damit der 48-Bit-Zeitstempel nicht überläuft.
- Zwei in einer engen Schleife erzeugte ULIDs sortieren in falscher Reihenfolge. — Schalte Monoton ein. Ohne es erhalten IDs, die dieselbe Millisekunde teilen, unabhängige Zufalls-Suffixe und können in beliebiger Reihenfolge sortieren.
- Die Datenbank lehnt kleingeschriebene ULIDs ab. — Crockford base32 ist kanonisch großgeschrieben. Schalte den Kleinschreibung-Schalter aus oder speichere sie unabhängig von Groß-/Kleinschreibung, da das Dekodieren beide Schreibweisen akzeptiert.
- Ein konvertierter UUID sieht nicht wie ein Version-4-UUID aus. — Ein ULID hat keine Versions- oder Varianten-Bits, sodass seine UUID-Form keine 4 im Versions-Nibble trägt. Das ist erwartet — die Konvertierung bewahrt die rohen 128 Bit, nicht das UUID-Layout.
Häufig gestellte Fragen
- Was ist ein ULID und wie unterscheidet er sich von einem UUID?
- Ein ULID ist ein 128-Bit-Identifier, geschrieben als 26 Crockford-base32-Zeichen. Anders als ein zufälliger UUIDv4 sind seine führenden Bits ein Millisekunden-Zeitstempel, sodass ULIDs als reiner Text in Erstellungsreihenfolge sortieren und dennoch global eindeutig sind.
- Wie funktioniert die monotone ULID-Erzeugung?
- Wenn mehrere ULIDs innerhalb derselben Millisekunde erzeugt werden, verwendet der monotone Modus das Zufallsfeld dieser Millisekunde wieder und addiert für jede neue ID eins hinzu, statt frischen Zufall zu ziehen. Das garantiert, dass jeder ULID strikt größer als der vorherige ist.
- Kann ich die Erstellungszeit aus einem ULID wiederherstellen?
- Ja. Die ersten 10 Zeichen kodieren einen 48-Bit-Millisekunden-Zeitstempel. Füge einen ULID in den Dekodier-Modus ein, und das Tool zeigt den exakten Epoch-ms-Wert und das passende ISO-8601-Datum mit Uhrzeit.
- Ist die ULID-zu-UUID-Konvertierung umkehrbar?
- Ja. Ein ULID und ein UUID halten beide 128 Bit, sodass der Converter jedes Bit ohne Verlust abbildet. Konvertiere einen ULID zu einem UUID und zurück, und du erhältst exakt den ursprünglichen ULID.
- Warum überspringt das Alphabet I, L, O und U?
- ULIDs verwenden Crockford base32, das I, L, O und U weglässt, damit IDs leicht zu lesen und schwer zu vertippen sind. Beim Dekodieren akzeptiert das Tool aus Bequemlichkeit weiterhin I und L als 1 und O als 0.
- Sind die ULIDs, die ich hier erzeuge, privat?
- Ja. Jeder ULID wird in deinem Browser mit der Web Crypto API für den Zufall gebaut. Die IDs, die du erzeugst, dekodierst oder konvertierst, werden niemals zu ArrayKit oder an einen Server gesendet.
Verwandte Tools
Alle ArrayKit-Tools