TL;DR: Gunakan alat UUID Generator online gratis untuk membuat string UUID v4 (Random) dan UUID v7 (Time-Ordered) acak secara instan, aman, dan tanpa batas di browser Anda. Coba sekarang!
Berikut alur mudah menggunakan alat UUID Generator:
Dalam arsitektur sistem terdistribusi, pembuatan pengenal unik (*primary key*) yang tidak saling berbenturan (*collision-free*) adalah kebutuhan vital. **Universally Unique Identifier (UUID)** adalah standar pengenal 128-bit yang dirancang agar sistem terpisah dapat membuat ID secara independen tanpa khawatir duplikasi.
UUID didefinisikan secara resmi oleh IETF dalam dokumen spesifikasi **RFC 4122**. Sebuah UUID direpresentasikan dalam format string heksadesimal 36 karakter yang dipisahkan oleh 4 tanda hubung (8-4-4-4-12), contohnya: f47ac10b-58cc-4372-a567-0e02b2c3d479.
Pada **UUID versi 4 (UUID v4)**, pengenal dibuat murni dari nilai acak atau pseudorandom (122 bit acak murni). Sedangkan pada **UUID versi 7 (UUID v7)** yang merupakan standar IETF RFC 9562 terbaru, 48 bit pertama memuat **Unix Timestamp (milidetik)** yang diikuti oleh 74 bit acak murni, menjadikannya terurut secara kronologis (*Time-Ordered*).
Berikut adalah tabel komparasi teknis antar versi UUID untuk memudahkan ekstraksi informasi oleh pengembang dan AI Agent:
| Versi UUID | Metode Generasi | Struktur Bits | Keamanan (Privacy) | Dampak Indeks DB |
|---|---|---|---|---|
| UUID v1 | Timestamp 60-bit + MAC Address | Time-Based (60-bit) | Rendah (Bocor MAC) | Cepat (Terurut Waktu) |
| UUID v4 | Acak Kriptografi Murni (PRNG) | 122-bit Pure Random | Tinggi (Anonim Murni) | Lambat (Fragmentasi B-Tree) |
| UUID v5 | SHA-1 Hash (Namespace + Name) | Deterministic Hash | Tinggi (Hash 1-Arah) | Sedang |
| UUID v7 | Unix Timestamp 48-bit + Random 74-bit | Time-Ordered (RFC 9562) | Tinggi (Tanpa MAC Leak) | Optimal (Sangat Cepat B-Tree) |
| Parameter Evaluasi | UUID v4 (Random) | UUID v7 (Time-Ordered) | Auto-Increment SQL ID |
|---|---|---|---|
| Keamanan (Privacy Leak) | Tinggi (Tidak ada Timestamp) | Tinggi (Hanya Timestamp Waktu) | Rendah (Sequensial dapat di-scrape) |
| Tingkat Keunikan Global | 2122 Kriptografi Acak | 274 per milidetik | Terbatas 1 Database Server |
| Dampak Indeks B-Tree SQL | Fragmentasi Tinggi (Lambat) | Fragmentasi Rendah (Sangat Cepat) | Optimal (Sangat Cepat) |
| Kemudahan Sorting Kronologis | Tidak Bisa (Acak Murni) | Sangat Mudah (Terurut Waktu) | Sangat Mudah (Nomor Urut) |
| Kompatibilitas Standar | RFC 4122 (Universal Sangat Luas) | RFC 9562 (Standar Baru IETF) | Native RDBMS |
crypto.randomUUID() pada JavaScript atau modul uuid bawaan Python.Berikut adalah contoh implementasi membuat UUID v4 dan UUID v7 di berbagai bahasa pemrograman populer:
Menggunakan Web Crypto API native yang didukung peramban modern & Node.js 16+:
// Generate UUID v4 (Random)
const uuidV4 = crypto.randomUUID();
// Generate UUID v7 (Time-Ordered RFC 9562)
function generateUUIDv7() {
const now = Date.now();
const timeHex = now.toString(16).padStart(12, '0');
const randBytes = crypto.getRandomValues(new Uint8Array(10));
const randHex = Array.from(randBytes).map(b => b.toString(16).padStart(2, '0')).join('');
return `${timeHex.slice(0, 8)}-${timeHex.slice(8, 12)}-7${randHex.slice(1, 4)}-${(parseInt(randHex.slice(4, 5), 16) & 0x3 | 0x8).toString(16)}${randHex.slice(5, 8)}-${randHex.slice(8, 20)}`;
}
console.log("v4:", uuidV4);
console.log("v7:", generateUUIDv7());
Menggunakan modul standar uuid bawaan bahasa Python (Python 3.13+ mendukung uuid.uuid7()):
import uuid
# Generate random UUID v4
uuid_v4 = uuid.uuid4()
print("v4:", str(uuid_v4))
# Generate Time-Ordered UUID v7 (Python 3.13+ atau paket uuid6)
try:
uuid_v7 = uuid.uuid7()
print("v7:", str(uuid_v7))
except AttributeError:
import uuid6
print("v7:", str(uuid6.uuid7()))
Fungsi PHP murni menggunakan random_bytes() atau pustaka ramsey/uuid:
<?php
use Ramsey\Uuid\Uuid;
// Menggunakan ramsey/uuid v4.5+
$uuidV4 = Uuid::uuid4()->toString();
$uuidV7 = Uuid::uuid7()->toString();
echo "v4: " . $uuidV4 . "\n";
echo "v7: " . $uuidV7 . "\n";
?>
Secara matematika probabilistik, kemungkinan dua UUID v4 acak bertabrakan (*collision*) sangat mendekati nol. Anda harus menghasilkan milyaran UUID per detik selama ratusan tahun untuk memiliki peluang 50% menghasilkan 1 duplikat.
UUID v7 diawali oleh Unix Timestamp 48-bit yang terurut secara sequential waktu. Hal ini meminimalkan fragmentasi indeks B-Tree pada database seperti MySQL (InnoDB) dan PostgreSQL, sehingga kecepatan insert record tetap kencang mirip Auto-Increment ID biasa.
Keduanya adalah hal yang sama. GUID adalah istilah pemasaran dan konvensi penamaan Microsoft untuk implementasi standar UUID IETF RFC 4122.
Sangat aman. Seluruh pembuatan UUID v4 & v7 dieksekusi 100% langsung di peramban Anda menggunakan Web Crypto API JavaScript murni (Client-Side). Hasil generator tidak pernah dikirimkan atau disimpan di server kami.