Toolora

UUID Generator

Generieren Sie eindeutige UUIDs (Universally Unique Identifiers) für Ihre Projekte.

dafbef3a-c445-4020-8e3e-7becd97a3ff3

Schnellkopie:

dafbef3a-c445-4020-8e3e-7becd97a3ff3

Klicken zum Kopieren

UUID v4 Format:

xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx

4 = Version, y = Variante (8, 9, a, b)

Eigenschaften:

  • • 128 Bit (32 Hex-Zeichen)
  • • 122 zufällige Bits
  • • ~5.3 × 10³⁶ mögliche Werte
  • • Praktisch kollisionsfrei

💡 Verwendung:

UUIDs eignen sich perfekt als Primärschlüssel in Datenbanken, API-Ressourcen-IDs, Session-Tokens und überall dort, wo eindeutige Identifikatoren benötigt werden.

Was ist eine UUID?

Eine UUID (Universally Unique Identifier) ist ein 128-Bit-Wert, der zur eindeutigen Identifikation von Informationen verwendet wird. Das Format besteht aus 32 hexadezimalen Zeichen, gruppiert durch Bindestriche:8-4-4-4-12.

Beispiel: 550e8400-e29b-41d4-a716-446655440000

UUID-Versionen

UUID v1 (Zeitbasiert)

Kombiniert Zeitstempel + MAC-Adresse. Garantiert Eindeutigkeit, aber gibt Informationen über Erstellungszeit und Gerät preis. Sortierbar nach Zeit.

UUID v4 (Zufällig)

122 zufällige Bits (6 Bits für Version/Variante). Am häufigsten verwendet. Keine Informationspreisgabe. Kollisionswahrscheinlichkeit praktisch null.

UUID v3 / v5 (Namensbasiert)

Generiert aus Namespace + Name per Hash (v3=MD5, v5=SHA-1). Deterministisch: gleiche Eingabe = gleiche UUID. Ideal für reproduzierbare IDs.

UUID-Aufbau

550e8400-e29b-41d4-a716-446655440000
│        │    │ │  │
│        │    │ │  └── Node (v1: MAC-Adresse)
│        │    │ └───── Variante (8, 9, a, b)
│        │    └─────── Version (1, 4, 5, etc.)
│        └──────────── Zeit (v1) oder Zufall
└───────────────────── Zeit (v1) oder Zufall

Warum UUIDs verwenden?

  • Dezentral: Keine zentrale Instanz für ID-Vergabe nötig
  • Skalierbar: Funktioniert in verteilten Systemen
  • Sicher: Nicht erratbar (bei v4)
  • Merge-freundlich: Keine ID-Konflikte bei Datenbank-Merges

UUID vs. Auto-Increment ID

EigenschaftUUIDAuto-Increment
Größe128 Bit (16 Bytes)32/64 Bit (4/8 Bytes)
LesbarkeitKomplexEinfach
VorhersagbarNein (v4)Ja
VerteiltJaNein
Index-PerformanceSchlechterBesser

UUIDs in Programmiersprachen

// JavaScript (Browser)
crypto.randomUUID()

// Python
import uuid
uuid.uuid4()

// Java
java.util.UUID.randomUUID()

// C# / .NET
Guid.NewGuid()

// PHP
Ramsey\Uuid\Uuid::uuid4()

Häufig gestellte Fragen

Wie wahrscheinlich ist eine UUID-Kollision?

Bei UUID v4: Extrem unwahrscheinlich. Um 50% Kollisionswahrscheinlichkeit zu erreichen, müsste man etwa 2,7 × 10¹⁸ UUIDs generieren. In der Praxis vernachlässigbar.

Kann ich UUIDs als Datenbankschlüssel verwenden?

Ja, aber beachten: UUIDs sind größer (16 vs. 4 Bytes) und schlechter für Index-Performance bei B-Trees. UUID v1 oder ULID sind besser sortierbar.

Was ist ein ULID?

ULID (Universally Unique Lexicographically Sortable Identifier) ist eine Alternative zu UUID: 128 Bit, aber lexikographisch sortierbarnach Erstellungszeit. Besser für Datenbanken.

Ähnliche Tools