Apa Itu UUID (Universally Unique Identifier)?
UUID (Universally Unique Identifier) adalah pengenal standar 128-bit yang digunakan dalam rekayasa perangkat lunak untuk mengidentifikasi informasi tanpa koordinasi pusat. Dalam ekosistem Microsoft, pengenal ini umumnya dikenal sebagai GUID (Globally Unique Identifier).
Format standar UUID direpresentasikan dalam 32 digit heksadesimal yang dibagi ke dalam 5 grup dan dipisahkan tanda hubung (8-4-4-4-12), dengan total panjang 36 karakter.
Pada tahun 2024, IETF merilis spesifikasi RFC 9562 yang memperbarui standar RFC 4122 sebelumnya dan memperkenalkan UUID v7 untuk efisiensi penyimpanan dan pengindeksan database.
Mengenal UUID Versi 4 (Random Cryptographic)
UUID Versi 4 adalah jenis UUID yang dihasilkan hampir seluruhnya dari angka acak kriptografis (cryptographically secure pseudorandom). Dari total 128 bit, 122 bit didedikasikan murni untuk keacakan (entropy), 4 bit untuk penanda versi 4, dan 2 bit untuk varian RFC 4122.
Dengan 5,3 × 10^36 kombinasi yang mungkin terjadi, peluang terjadinya tabrakan (collision) praktis mustahil terjadi. Namun, karena keacakannya yang tersebar, UUID v4 dapat menyebabkan fragmentasi halaman pada indeks B-tree database saat digunakan sebagai primary key pada skala besar.
Mengenal UUID Versi 7 (Time-Ordered RFC 9562)
UUID Versi 7 adalah standar baru dalam RFC 9562 yang menggabungkan stempel waktu Unix 48-bit (skala milidetik) dengan pencacah urutan sub-milidetik dan angka acak kriptografis.
Karena diawali dengan informasi waktu, UUID v7 secara alami terurut secara kronologis (monotonik). Saat disimpan pada database seperti PostgreSQL, MySQL, SQLite, dan MongoDB, penambahan baris baru akan terarah ke akhir daun indeks B-tree, sehingga membantu meminimalkan fragmentasi penyimpanan database dan mempertahankan performa penulisan tinggi.
Perbandingan UUID v4 vs UUID v7: Mana yang Harus Dipilih?
Pahami perbedaan teknis antara UUID v4 dan UUID v7 untuk menentukan format terbaik bagi arsitektur aplikasi Anda:
| Fitur & Karakteristik | UUID v4 (Acak) | UUID v7 (Terurut Waktu) |
|---|---|---|
| Dasar Pembuatan Utama | 122 bit angka acak kriptografis murni | Timestamp Unix 48-bit (ms) + pencacah + 62 bit acak |
| Pengurutan Kronologis | Tidak (Urutan sepenuhnya acak) | Ya (Terurut waktu secara alami / monotonik) |
| Pengindeksan B-Tree Database | Insert acak memicu page splits & fragmentasi | Penambahan sekuensial terklaster, performa optimal |
| Eksposur Metadata | Nol informasi sistem atau waktu bocor | Mengekspos waktu pembuatan hingga ketelitian milidetik |
| Spesifikasi Standar | RFC 4122 / RFC 9562 | RFC 9562 (Bagian 5.7) |
| Rekomendasi Penggunaan | Token autentikasi, ID sesi, nonce publik | Primary key database, nomor pesanan, log event |
Struktur dan Format Anatomi UUID
String UUID terdiri dari 36 karakter (32 digit heksadesimal dan 4 tanda hubung) dalam pola 8-4-4-4-12:
Anatomi UUID v7 (RFC 9562)
- Unix Timestamp (48 bit): 12 digit pertama mewakili milidetik epoch.
- Versi (4 bit): Digit ke-13 selalu bernilai "7".
- Varian (2 bit): Digit ke-17 bernilai 8, 9, a, atau b.
- Urutan & Entropi: Sisa karakter merupakan pencacah urutan dan nilai acak kriptografis.
Anatomi UUID v4 (RFC 4122)
- Versi 4: Digit ke-13 selalu berupa angka "4".
- Varian RFC 4122: Digit ke-17 selalu salah satu dari 8, 9, a, atau b.
- Keacakan Kriptografis: 30 karakter heksadesimal lainnya murni acak berentropi tinggi.
Cara Menghasilkan UUID Menggunakan Generator
1. Pilih Versi UUID
Pilih UUID v4 untuk keacakan murni atau UUID v7 untuk identifier terurut waktu yang ramah database.
2. Tentukan Jumlah
Pilih atau ketik jumlah UUID yang Anda butuhkan (1 hingga 100 sekaligus) dengan preset cepat.
3. Sesuaikan Format
Tersedia opsi huruf kecil standar, HURUF BESAR, atau format tanpa tanda hubung sesuai skema Anda.
4. Generate & Salin
Klik Generate UUID, lalu gunakan tombol Salin individual atau Salin Semua sekaligus ke clipboard.
Di Mana UUID Digunakan dalam Rekayasa Perangkat Lunak?
Primary Key Database
UUID v7 memaksimalkan efisiensi indeks B-tree sementara UUID v4 mencegah serangan enumerasi pada database terdistribusi.
REST API & Microservices
Digunakan sebagai correlation ID, tracking token transaksi, atau idempotency key pada komunikasi antar-layanan.
Pengujian & Mock Data
Menyediakan identifier acak untuk seeding database, unit testing, dan pengujian integrasi otomatis.
Token Sesi & Autentikasi
Membuat token verifikasi email sementara, reset password, dan session identifier yang sulit ditebak.
Penyimpanan File Cloud
Memberikan nama file unik pada upload media di Amazon S3, Google Cloud Storage, atau Cloudflare R2 untuk menghindari penimpaan file.
Message Broker & Event Streaming
Menjamin keunikan setiap pesan atau event pada antrean pesan seperti Apache Kafka, RabbitMQ, dan Redis.
Pertanyaan yang Sering Diajukan (FAQ)
Apa perbedaan mendasar antara UUID v4 dan UUID v7?
UUID v4 menggunakan 122 bit angka acak murni tanpa urutan waktu. UUID v7 menempatkan timestamp Unix 48-bit pada awal string, sehingga otomatis terurut secara kronologis namun tetap memiliki entropi acak kriptografis yang tinggi.
Mengapa UUID v7 jauh lebih baik untuk primary key database?
UUID v4 yang acak menyebabkan penyisipan data masuk ke posisi acak pada pohon indeks B-tree database, memicu fragmentasi dan operasi I/O tinggi. UUID v7 bersifat terurut waktu sehingga data baru selalu disisipkan di akhir indeks, menjaga performa tetap cepat.
Apakah UUID v7 membocorkan informasi rahasia sistem?
UUID v7 hanya memuat stempel waktu (waktu pembuatan hingga milidetik). Versi ini TIDAK membocorkan alamat MAC, nama komputer, atau identitas pengguna (berbeda dengan UUID v1 lama). Jika waktu pembuatan harus dirahasiakan, gunakan UUID v4.
Apakah UUID yang dibuat di tool ini benar-benar unik?
Ya. Baik v4 maupun v7 dibuat menggunakan API kriptografi browser (crypto.randomUUID dan crypto.getRandomValues). Kemungkinan tabrakan ID secara matematis mendekati nol.
Apakah UUID yang dihasilkan dikirim atau disimpan di server?
Sama sekali tidak. Aplikasi ini bekerja 100% client-side di browser Anda. Tidak ada data yang dikirim ke server, database, ataupun analitik eksternal.
Bisakah tool ini digunakan saat offline tanpa internet?
Bisa. Tool ini bekerja di sisi klien (client-side) dalam peramban web. Begitu halaman termuat, Anda bebas membuat UUID v4 dan v7 kapan saja tanpa memerlukan koneksi internet aktif.
Tools Developer AppLayer.id Terkait
Jelajahi kumpulan tool online gratis dan aman untuk kebutuhan software engineer dan IT.
Word Case Converter
Konversi teks antara format camelCase, snake_case, kebab-case, PascalCase, dan lainnya.
JSON Formatter & Validator
Format, validasi, dan rapikan kode JSON secara instan langsung di peramban.
Password Generator
Buat kata sandi acak yang aman dan teruji kriptografis dengan aturan kustom.