UUID generator
UUID v4 adalah pengidentifikasi acak 128-bit yang diformat sebagai 8-4-4-4-12 hex (misalnya 550e8400-e29b-41d4-a716-446655440000). Gunakan untuk kunci utama basis data, ID korelasi, dan keunikan nama file tanpa pengalokasi pusat. Dihasilkan secara lokal dengan crypto.getRandomValues bila tersedia.
Output
c1f1bd1d-6423-4bc9-a0a5-129a562c9f0e
Cara membuat UUID
1. Klik buat (atau buat beberapa jika didukung).
2. Salin UUID ke clipboard.
3. Tempel ke permintaan API, sisipan SQL, atau konfigurasi.
4. Simpan huruf kecil secara konsisten jika Anda DB peka huruf besar-kecil.
Kasus penggunaan UUID
Kunci utama database
Masukkan pengguna dengan id UUID alih-alih int berurutan — aman untuk API publik tanpa enumerasi.
Minta ID korelasi
Tambahkan header X-Request-ID dengan UUID baru per panggilan HTTP untuk penelusuran terdistribusi logs.
Awalan kunci objek S3
uploads/{uuid}/photo.jpg menghindari tabrakan nama file dalam keranjang bersama.
Saat UUID v4 cocok
• Saat ID harus unik di seluruh sistem terdistribusi tanpa koordinasi.
• Saat mengekspos ID secara publik — UUID acak menolak menebak-nebak.
• Saat menggabungkan data dari klien offline tanpa konflik ID.
Kapan tidak menggunakan UUID v4
• Ketika urutan berurutan yang dapat dibaca manusia penting (nomor faktur) — gunakan urutan.
• Ketika fragmentasi indeks pada UUID PK acak merugikan kinerja DB dalam skala besar — pertimbangkan UUID v7 atau ULID.
• Ketika slug URL ringkas diperlukan — gunakan id pendek atau nanoid.
Versi nibble
Karakter setelah blok tanda hubung ketiga menunjukkan versi — 4 berarti UUID acak. Memvalidasi format dengan cepat dalam tinjauan kode.
Pengindeksan basis data
UUID acak menyebabkan pemisahan halaman B-tree vs int berurutan — dapat diterima hingga miliaran baris; kinerja penyisipan monitor.
UUID di URL
Baik untuk sumber daya pribadi; digabungkan dengan autentik. Jangan mengandalkan kerahasiaan UUID saja untuk otorisasi.
Pertanyaan yang sering diajukan
UUID v4 vs v1?
v4 acak; v1 menyertakan stempel waktu dan node turunan MAC — v4 lebih disukai untuk privasi.
Probabilitas tabrakan?
Rendah secara astronomis untuk tujuan praktis — paradoks ulang tahun tidak relevan pada skala aplikasi.
Huruf besar atau kecil?
RFC mengizinkan keduanya — memilih satu konvensi per proyek; Tipe uuid Postgres dinormalisasi.
Diperlukan tanda hubung?
Format standar mencakup tanda hubung; beberapa sistem menerima 32 karakter hex tanpa.
Aman secara kriptografis?
Menggunakan CSPRNG browser bila tersedia — bukan Math.random.
Berapa banyak yang dapat saya hasilkan?
Tidak ada batasan praktis secara lokal — menghasilkan satu per satu atau batch per UI.