UUID Generator & Decoder — v1, v4, v5, v7
Generator UUID gratis — buat UUID v1, v4, v5, v7 secara instan. Decode & validasi UUID apa pun. Batch hingga 50. Tanpa pendaftaran, 100% di browser.
Apa Itu UUID?
UUID (Universally Unique Identifier) adalah identifier unik global 128-bit yang distandarkan oleh RFC 9562 (IETF, Mei 2024), dirancang untuk menghasilkan ID yang bebas tabrakan di seluruh sistem terdistribusi tanpa koordinasi pusat. UUID adalah format identifier yang paling banyak diadopsi di perangkat lunak modern — digunakan di primary key database, pelacakan request API, manajemen sesi, dan arsitektur microservice.
UUID ditulis sebagai 32 digit heksadesimal dalam format kanonik 8-4-4-4-12, seperti `550e8400-e29b-41d4-a716-446655440000`. Spesifikasinya dikelola oleh IETF; RFC 9562 menggantikan RFC 4122 sebelumnya (2005) dan secara resmi memperkenalkan UUID versi 6, 7, dan 8.
Ada lima versi UUID yang banyak digunakan. Versi 1 (v1) meng-encode timestamp saat ini dan alamat MAC mesin pembuat, menjadikan setiap UUID unik baik dalam waktu maupun ruang. Versi 3 (v3) dan versi 5 (v5) bersifat deterministik — mereka meng-hash namespace dan nama menggunakan MD5 atau SHA-1, selalu menghasilkan UUID yang sama untuk input yang sama. Versi 4 (v4) yang paling umum: mengisi 122 bit dengan data acak yang aman secara kriptografis, memberikan lebih dari 5,3 × 10³⁶ kemungkinan nilai (RFC 9562, Section 5.4). Versi 7 (v7) adalah standar terbaru: sebagaimana RFC 9562 Section 5.7 menyatakan, "UUID version 7 features a time-ordered value field derived from the widely implemented and well-known Unix Epoch timestamp source" — menggabungkan timestamp milidetik 48-bit dengan data acak untuk menghasilkan UUID yang unik dan secara alami dapat diurutkan berdasarkan waktu pembuatan.
UUID esensial dalam sistem terdistribusi, database, API, dan di mana pun identifier unik diperlukan tanpa koordinasi terpusat. Mereka menghilangkan risiko tabrakan ID di seluruh sistem independen, menjadikannya ideal untuk microservice, event sourcing, dan arsitektur multi-tenant.
Alat ini menghasilkan semua versi UUID sepenuhnya di browser Anda menggunakan Web Crypto API — tidak ada UUID yang dikirim ke server mana pun. Tidak seperti generator berbasis server, tidak ada unggahan, tidak ada logging, dan tidak ada penyimpanan data. Aman digunakan untuk primary key database produksi, identifier API, dan aplikasi sensitif keamanan. Anda juga dapat mendekode dan memvalidasi UUID yang sudah ada untuk memeriksa versi, varian, dan data tertanamnya.
UUID terkait erat dengan primitif developer lainnya. UUID v1 dan v7 menyematkan timestamp Unix secara langsung, UUID v3 dan v5 menggunakan hash MD5 dan SHA-1 sebagai fondasinya, dan string UUID sering ditransportasikan di dalam payload JSON yang paling baik diperiksa dengan JSON formatter. Untuk pengenalan mendalam tentang format UUID, versi, dan kasus penggunaan dunia nyata, baca panduan UUID lengkap kami. Jika Anda memilih antara UUID v4, v7, ULID, dan Snowflake ID untuk primary key database, lihat perbandingan pemilihan ID kami.
// Generate a UUID v4 using the Web Crypto API
const uuid = crypto.randomUUID();
console.log(uuid);
// → '550e8400-e29b-41d4-a716-446655440000'
// Manual v4 generation with crypto.getRandomValues()
function generateUUIDv4() {
const bytes = new Uint8Array(16);
crypto.getRandomValues(bytes);
bytes[6] = (bytes[6] & 0x0f) | 0x40; // version 4
bytes[8] = (bytes[8] & 0x3f) | 0x80; // variant 10
const hex = Array.from(bytes, b => b.toString(16).padStart(2, '0')).join('');
return `${hex.slice(0,8)}-${hex.slice(8,12)}-${hex.slice(12,16)}-${hex.slice(16,20)}-${hex.slice(20)}`;
} Fitur Utama
Dukungan UUID v7 (RFC 9562)
Hasilkan format UUID v7 terbaru dengan timestamp Unix tertanam untuk identifier yang berurut waktu dan ramah database. Salah satu dari sedikit alat online yang mendukung standar RFC 9562.
UUID Decoder & Validator
Parse UUID apa pun untuk mengungkapkan versi, varian, timestamp (v1/v7), clock sequence, dan informasi node-nya. Validasi secara instan apakah string merupakan UUID yang diformat dengan benar.
Dukungan Multi-Versi
Hasilkan UUID dalam lima versi — v1 (berbasis waktu), v3 (MD5), v4 (acak), v5 (SHA-1), dan v7 (acak berurut waktu) — semua sesuai RFC 9562.
Pembuatan Batch
Hasilkan hingga 50 UUID unik sekaligus. Setiap UUID dibuat secara independen dengan keacakan kriptografis penuh atau encoding spesifik versi yang benar.
Berbagai Format Output
Output UUID dalam format standar huruf kecil, HURUF BESAR, tanpa tanda hubung, atau kurung kurawal {GUID} — sesuai format yang dibutuhkan sistem atau framework Anda.
Aman Secara Kriptografis
Menggunakan Web Crypto API (crypto.getRandomValues()) untuk pembangkitan angka acak sejati — standar yang sama yang digunakan browser modern dan alat keamanan.
100% Berbasis Browser
Semua UUID dihasilkan secara lokal di browser Anda. Tidak ada yang dikirim ke server mana pun — identifier yang dihasilkan tetap sepenuhnya privat.
Perbandingan Versi UUID
Pilih versi UUID yang tepat untuk kasus penggunaan Anda.
| Versi | Basis | Dapat Diurutkan | Privasi | Terbaik Untuk |
|---|---|---|---|---|
| v1 | Timestamp + alamat MAC | Berdasarkan waktu pembuatan | Mengekspos MAC & waktu | Sistem lama yang memerlukan pengurutan berbasis waktu |
| v4 | 122 bit acak kriptografis | Tidak | Sepenuhnya anonim | Tujuan umum — versi yang paling banyak digunakan |
| v5 | Hash SHA-1 dari namespace + nama | Tidak | Deterministik, dapat direproduksi | ID konsisten dari input yang diketahui (URL, DNS) |
| v7 | Timestamp Unix (ms) + acak | Berdasarkan waktu pembuatan | Hanya mengekspos waktu pembuatan | Database modern — dapat diurutkan, ramah indeks (RFC 9562) |
UUID vs Format ID Lainnya
ULID
26 karakter, Crockford Base32Dapat diurutkan secara leksikografis seperti UUID v7, tetapi menggunakan encoding Crockford Base32 (26 karakter vs 36). UUID v7 sekarang menjadi alternatif yang distandarkan IETF dengan dukungan tooling yang lebih luas.
nanoid
21 karakter, alfabet aman URLLebih pendek dan aman URL, ideal saat ukuran ringkas penting. Bukan standar formal — tidak memiliki tipe database bawaan dan library lintas platform yang dimiliki UUID.
CUID2
Panjang variabel, alfanumerikDirancang untuk penskalaan horizontal dengan ketahanan tabrakan. Adopsi kurang luas dibanding UUID; tanpa dukungan database bawaan. Pertimbangkan UUID v7 untuk ID berurut waktu yang terstandar.
Contoh Versi UUID
UUID v4 (Acak)
550e8400-e29b-41d4-a716-446655440000
Versi yang paling umum digunakan. 122 bit keacakan kriptografis menyediakan lebih dari 5,3 x 10^36 kemungkinan nilai — cocok untuk hampir semua kasus penggunaan di mana keunikan diperlukan tanpa koordinasi.
UUID v7 (Berurut Waktu)
01906b5e-4a3e-7234-8f56-b8c12d4e5678
Menggabungkan timestamp Unix 48-bit dalam milidetik dengan data acak. UUID diurutkan secara kronologis, menjadikannya ideal untuk primary key database di mana lokalitas indeks penting. Direkomendasikan untuk proyek baru dibanding v1 dan v4.
UUID v1 (Berbasis Waktu)
6ba7b810-9dad-11d1-80b4-00c04fd430c8
Meng-encode timestamp 60-bit dan alamat MAC 48-bit mesin pembuat. Menjamin keunikan dalam waktu dan ruang tetapi dapat membocorkan informasi identitas hardware. Digantikan oleh v6/v7 di RFC 9562.
UUID v5 (Berbasis Nama SHA-1)
886313e1-3b8a-5372-9b90-0c9aee199e5d
UUID deterministik yang dihasilkan dengan meng-hash namespace DNS dengan nama 'python.org' menggunakan SHA-1. Namespace dan nama yang sama selalu menghasilkan UUID yang sama, menjadikan v5 ideal untuk identifier yang dapat direproduksi.
Cara Menggunakan
- 1
Pilih Versi UUID
Pilih dari v1 (berbasis waktu), v3 (berbasis nama MD5), v4 (acak), v5 (berbasis nama SHA-1), atau v7 (acak berurut waktu). Setiap versi melayani tujuan berbeda — v4 paling umum untuk penggunaan umum.
- 2
Konfigurasi Opsi
Untuk v3 dan v5, pilih namespace (DNS, URL, OID, X.500, atau kustom) dan masukkan nama untuk di-hash. Atur jumlah dari 1 sampai 50 dan pilih format output: standar huruf kecil, HURUF BESAR, tanpa tanda hubung, atau kurung kurawal {GUID}.
- 3
Generate UUID
Klik tombol Generate. Setiap UUID dibuat menggunakan Web Crypto API (crypto.getRandomValues()) untuk keamanan kriptografis. Field spesifik versi seperti timestamp (v1/v7) dan hash (v3/v5) di-encode dengan benar.
- 4
Salin dan Gunakan
Klik tombol Salin di samping UUID mana pun untuk menyalinnya ke clipboard, atau gunakan Salin Semua untuk mengambil semua UUID yang dihasilkan sekaligus. Beralih ke tab Decode untuk menganalisis versi, varian, timestamp, dan informasi tertanam lainnya dari UUID yang sudah ada.
Kasus Penggunaan Umum
- Primary Key Database
- Gunakan UUID v4 atau v7 sebagai primary key unik tanpa koordinasi antar node database. UUID v7 sangat cocok karena properti berurut waktunya meningkatkan performa indeks B-tree.
- Sistem Terdistribusi
- Hasilkan identifier unik secara independen di seluruh microservice, antrian pesan, dan sistem event sourcing. UUID menghilangkan kebutuhan layanan pembuatan ID terpusat.
- Pengembangan API
- Buat request ID unik, ID korelasi, dan kunci idempotensi untuk API RESTful dan GraphQL. UUID memudahkan pelacakan request di seluruh batas layanan terdistribusi.
- Manajemen Sesi & Token
- Hasilkan identifier sesi unik dan token sementara untuk alur autentikasi. UUID menyediakan keunikan yang cukup untuk mencegah tabrakan sesi di basis pengguna besar.
- Pengujian & Pengembangan
- Hasilkan data uji, identifier mock, dan ID fixture unik untuk pengujian otomatis dengan cepat. Pembuatan batch memudahkan pengisian database pengembangan dan suite pengujian.
Detail Teknis
- Struktur UUID
- UUID adalah 128 bit (16 byte) yang direpresentasikan sebagai 32 karakter heksadesimal dalam format 8-4-4-4-12. Bit 48-51 (digit hex ke-13) meng-encode nomor versi. Bit 64-65 meng-encode field varian, yang mengidentifikasi tata letak UUID. Bit sisanya membawa payload spesifik versi: timestamp, data acak, atau output hash.
- Bit Versi
- Bit 48-51 (nibble tinggi dari byte ke-7) meng-encode versi UUID: 0001 = v1 (berbasis waktu), 0011 = v3 (berbasis nama MD5), 0100 = v4 (acak), 0101 = v5 (berbasis nama SHA-1), 0110 = v6 (waktu yang direorganisasi), 0111 = v7 (waktu epoch Unix). Empat bit ini selalu diatur secara eksplisit selama pembuatan.
- Field Varian
- Bit 64-65 (dua bit paling signifikan dari byte ke-9) mendefinisikan varian. Pola 10x menunjukkan UUID RFC 4122/9562 (mayoritas besar). Pola 110 menunjukkan GUID Microsoft dengan urutan byte mixed-endian. Pola 0xx menunjukkan UUID yang kompatibel mundur dengan NCS (lama). Pola 111 dicadangkan untuk penggunaan masa depan.
- Standar RFC 9562
- RFC 9562, diterbitkan Mei 2024, menggantikan RFC 4122 sebagai spesifikasi UUID definitif. Ia secara resmi memperkenalkan UUID versi 6, 7, dan 8. Versi 6 mereorganisasi field v1 untuk kemampuan pengurutan. Versi 7 menggunakan timestamp Unix 48-bit dalam milidetik plus data acak, menjadikannya versi yang direkomendasikan untuk UUID berbasis waktu baru. Versi 8 menyediakan format untuk UUID kustom spesifik implementasi. RFC 9562 juga secara resmi men-deprecate v1 demi v6/v7.
Praktik Terbaik
- Pilih Versi yang Tepat
- Gunakan v4 untuk identifier unik umum di mana pengurutan atau determinisme tidak diperlukan. Gunakan v7 untuk primary key database — properti berurut waktunya memberikan performa indeks yang jauh lebih baik. Gunakan v5 saat Anda memerlukan ID deterministik yang diturunkan dari nama (lebih baik v5 daripada v3 untuk hashing yang lebih kuat).
- Gunakan UUID v7 untuk Primary Key Database
- Struktur berurut waktu UUID v7 menjaga penyisipan B-tree tetap berurutan, mengurangi fragmentasi indeks sekitar 90% dibanding UUID v4 acak. Ini berarti penulisan lebih cepat, indeks lebih kecil, dan utilisasi cache yang lebih baik. Sebagian besar database modern (PostgreSQL 17+, MySQL 8.0+) memiliki dukungan UUID bawaan yang dioptimalkan untuk pola ini.
- Jangan Gunakan UUID sebagai Token Keamanan
- UUID dirancang untuk keunikan, bukan kerahasiaan. UUID v1 membocorkan timestamp pembuatan dan alamat MAC. UUID v4 hanya memiliki 122 bit entropi dengan struktur yang dapat diprediksi. Untuk token keamanan, API key, atau secret sesi, gunakan CSPRNG khusus untuk menghasilkan 128 atau 256 bit data acak murni tanpa overhead struktur UUID.
- Validasi Sebelum Parsing
- Selalu validasi format UUID dengan ekspresi reguler sebelum mem-parse atau menyimpan. Tolak input yang cacat di batas sistem — endpoint API, pengiriman formulir, dan input database. Ini mencegah serangan injeksi, kerusakan data, dan error yang sulit di-debug dari identifier tidak valid yang menyebar melalui sistem Anda.
Pertanyaan yang Sering Diajukan
Apa itu UUID?
Apa perbedaan antara versi UUID?
Kapan saya harus menggunakan UUID v4 vs v7?
Berapa probabilitas tabrakan UUID?
Apa perbedaan antara UUID dan GUID?
Apakah UUID v4 aman secara kriptografis?
Bagaimana cara memvalidasi format UUID?
Apakah UUID bagus untuk primary key database? (Performa, keamanan & versi terbaik)
Apa itu namespace UUID (v3/v5)?
Apa itu UUID nil value?
Apa itu UUID v7 dan mengapa saya harus menggunakannya?
Bagaimana cara mendekode UUID?
UUID vs ULID vs nanoid — mana yang harus saya gunakan?
Saya membangun microservice dan perlu memilih antara UUID v4 dan v7 untuk primary key PostgreSQL — mana yang harus saya gunakan dan mengapa?
Tim saya berdebat apakah menggunakan UUID atau integer auto-increment sebagai ID database — apa trade-off dunia nyatanya?
Alat Terkait
Lihat semua alat →MD5 Hash Generator & Alat Checksum File
Alat Keamanan
Hasilkan hash MD5, SHA-256, SHA-1 & SHA-512 secara online gratis. Hash teks atau file di browser Anda, verifikasi checksum dan salin hasil. Tanpa pendaftaran.
Generator Kata Sandi Acak Online — Kuat, Aman & Gratis
Alat Keamanan
Buat kata sandi acak yang kuat secara instan — gratis, tanpa pendaftaran, 100% di browser. Sesuaikan panjang & karakter, batch hingga 50 dengan analisis entropi.
Konverter Basis Bilangan — Biner, Hex, Desimal & Oktal
Alat Konversi
Konversi antara biner, hex, desimal, oktal, dan basis apa pun (2-36) secara instan. Presisi BigInt, output siap kode. Gratis, privat — tanpa pendaftaran.
Decode & Encode Base64 Online — Konversi Instan di Browser
Encoding & Pemformatan
Decode dan encode Base64 online gratis. Konversi real-time dengan dukungan UTF-8 dan emoji. 100% privat di browser Anda. Tanpa pendaftaran.
Kompres Gambar Online — JPEG, PNG & WebP
Alat Konversi
Kompres JPEG, PNG & WebP hingga 80% lebih kecil di browser, tanpa upload. Batch 20 gambar, atur kualitas, bandingkan sebelum & sesudah. Gratis & privat.
Format & Validasi JSON Online — Gratis, Cepat, Privat
Encoding & Pemformatan
Format, validasi, dan rapikan JSON langsung di browser Anda. Alat online gratis dengan deteksi error, minifikasi, dan salin sekali klik. 100% privat.