UUID Version 4 Generator
UUIDv4 • Kryptografisch Zufällig
00000000-0000-0000-0000-000000000000
Einschließen:
Massen-UUID-Generierung
0 msReady
Max. 5.000
Formatierung & Struktur
Bereit
No batch active1-click copy available on each row
Industriestandard•RFC 9562 Abschnitt 5.4 / RFC 4122
UUID Version 4 Technische Spezifikation (RFC 4122 & RFC 9562)
UUIDv4 ist die weltweit am häufigsten verwendete UUID-Version. Von insgesamt 128 Bits bestehen exakt 122 Bits aus kryptografisch sicheren Zufallswerten, während 6 Bits für Version (0100) und Variante (10xx) reserviert sind.
Bitfeld-Layout & Binärstruktur
Detaillierte 128-Bit-Byte-Verteilung nach RFC-Standards.
| Feldname | Bit-Bereich | Zweck & Beschreibung |
|---|---|---|
| random_hi | 48 Bit (0-47) | Kryptografisch sichere Pseudozufalls-Entropie. |
| ver | 4 Bit (48-51) | Konstanter Binärwert 0100 (identifiziert Version 4). |
| random_mid | 12 Bit (52-63) | Kryptografisch sichere Pseudozufalls-Entropie. |
| var | 2 Bit (64-65) | Konstanter Binärwert 10 (RFC-Standard-Variante). |
| random_lo | 62 Bit (66-127) | Kryptografisch sichere Pseudozufalls-Entropie. |
✓
Vorteile & Stärken
- •Maximaler Datenschutz: keine Offenlegung von Zeitstempeln, MAC-Adressen oder Host-Details.
- •Universelle Unterstützung in allen Programmiersprachen und Datenbank-Engines.
- •Vollkommen unvorhersehbar und immun gegen IDOR-Aufzählungsangriffe.
!
Einschränkungen & Kompromisse
- •Schlechte Schreib-Performance in Datenbank-B-Tree-Indizes durch regellose Speicherzugriffe.
- •Ohne zusätzliche Spalte created_at nicht chronologisch sortierbar.
Am besten geeignet für
- →API-Keys, Sitzungstoken, Passwort-Reset-Links und OAuth-Status-Werte.
- →Opake, nach außen sichtbare Benutzer-IDs.
- →Verteilte Caches (Redis, Memcached) und unindizierte Schlüssel.
Vermeiden bei
- ✕Schreibintensive Primärschlüssel in relationalen Datenbanken (nutzen Sie UUIDv7).
- ✕Tabellen, die eine natürliche lexikografische Sortierung erfordern.
Code-Implementierungsbeispiele
Native Web CryptoJavaScript / TypeScript
// Modern browsers and Node.js 14.17+
const id = crypto.randomUUID();
console.log(id); // e.g. "c9a646d3-9c61-4cc9-bc0c-930438cf38cf"Python Standard LibraryPython
import uuid
id = uuid.uuid4()
print(id) # e.g. "f47ac10b-58cc-4372-a567-0e02b2c3d479"Go (google/uuid)Go
package main
import (
"fmt"
"github.com/google/uuid"
)
func main() {
id := uuid.New()
fmt.Println(id.String())
}Häufig gestellte Fragen
Wie viele mögliche UUIDv4 gibt es?▼
Mit 122 Bit Zufallsentropie (ca. 5,3 × 10³⁶ Kombinationen) liegt die Wahrscheinlichkeit für eine Kollision bei unter eins zu einer Milliarde, selbst wenn 85 Jahre lang jede Sekunde eine Milliarde IDs generiert werden.
Verwendet dieser Generator Math.random()?▼
Nein. Es wird ausschließlich die standardisierte Web Crypto API (crypto.getRandomValues) genutzt, die Zufallsdaten direkt aus dem Kernel-CSPRNG bezieht.