Lewati ke konten

Generator UUID

Buat UUID v4 acak atau UUID v7 berurutan waktu, satu per satu atau hingga 1.000 sekaligus, sepenuhnya di peramban Anda.

Versi

Sepenuhnya acak. Terbaik jika Anda tidak ingin informasi apa pun, termasuk waktu pembuatan, disandikan dalam ID.

UUID yang dibuat

UUID Anda

-

Pengidentifikasi acak 128-bit, RFC 4122 versi 4.

Versi
-

Pembuatan massal

Menggunakan versi yang dipilih di atas. Hingga 1.000 sekaligus.

Cara kerja

UUID, atau pengidentifikasi unik universal, adalah nilai 128-bit yang digunakan untuk mengidentifikasi data tanpa otoritas pusat yang membagikan ID. Alat ini membuat UUID RFC 4122 versi 4 (acak) atau versi 7 (berurutan waktu) menggunakan generator angka acak kriptografis aman milik peramban Anda.

  1. Pilih versi

    v4 untuk keacakan murni, v7 jika Anda menginginkan ID yang diurutkan berdasarkan waktu pembuatan.

  2. Buat dan salin

    UUID baru muncul seketika; salin atau buat yang lain.

  3. Butuh banyak sekaligus?

    Gunakan pembuatan massal untuk hingga 1.000, dalam format standar, huruf besar, tanpa tanda hubung, atau kurung kurawal.

UUID v4 versus UUID v7

UUID v4 sepenuhnya acak kecuali beberapa bit versi dan varian yang tetap, sehingga tidak memuat informasi tentang kapan atau di mana UUID tersebut dibuat. UUID v7 menyematkan stempel waktu Unix dengan presisi milidetik pada 48 bit pertamanya, diikuti oleh data acak, yang membuat nilai v7 dapat diurutkan berdasarkan urutan pembuatannya.

  • Gunakan v4 jika Anda tidak ingin informasi waktu disandikan dalam ID, atau jika ID tersebut tidak boleh mengungkapkan perkiraan waktu pembuatannya.
  • Gunakan v7 untuk kunci primer basis data jika Anda menginginkan penyisipan yang hampir berurutan (menghindari fragmentasi indeks yang disebabkan oleh kunci v4 acak pada indeks B-tree besar) tanpa kolom created_at terpisah.

Tidak ada data yang meninggalkan perangkat Anda

Setiap UUID dihasilkan secara lokal dengan getRandomValues dari Web Crypto API. Tidak ada permintaan yang dikirim ke server, sehingga aman untuk menghasilkan pengidentifikasi bagi sistem privat atau yang belum dipublikasikan.

Pertanyaan yang sering diajukan

Apa perbedaan antara UUID v4 dan UUID v7?

UUID v4 sepenuhnya acak kecuali beberapa bit versi dan varian, sehingga tidak memberikan jaminan pengurutan. UUID v7 menyematkan stempel waktu Unix dengan presisi milidetik pada bit paling signifikan, membuat UUID yang dihasilkan dapat diurutkan berdasarkan waktu pembuatan. v7 cocok untuk kunci primer basis data jika Anda menginginkan pengurutan waktu tanpa kolom created_at terpisah; v4 cocok untuk ID yang tidak boleh memuat informasi waktu.

Bagaimana cara menghasilkan UUID di peramban tanpa menginstal apa pun?

Buka halaman ini, pilih v4 atau v7, lalu klik Buat baru. Sebuah UUID akan muncul seketika; klik Salin untuk menyalinnya ke papan klip Anda. Untuk membuat banyak sekaligus, gunakan Pembuatan massal dengan jumlah hingga 1.000. Seluruh proses pembuatan berjalan di peramban menggunakan getRandomValues dari Web Crypto API, sehingga tidak ada panggilan server yang dilakukan.

Apakah nilai UUID v4 bersifat acak secara kriptografis dan aman dari tabrakan?

Ya. Alat ini menggunakan crypto.getRandomValues milik peramban, yang menghasilkan byte acak dengan kekuatan kriptografis. Peluang teoretis munculnya dua UUID v4 identik sekitar 1 dari 5.3 x 10^36. Dalam praktiknya, tabrakan UUID v4 tidak menjadi masalah yang realistis bagi aplikasi apa pun.

Bagaimana cara membuat UUID tanpa tanda hubung atau dalam huruf kapital untuk basis data tertentu?

Gunakan pemilih Format pada Pembuatan massal. Pilihannya adalah Standar (huruf kecil dengan tanda hubung), HURUF KAPITAL, Tanpa tanda hubung, dan {Kurung Kurawal}. Beberapa sistem memerlukan format khusus: MySQL sering menyimpan UUID tanpa tanda hubung sebagai CHAR(32) demi kinerja, sementara Windows COM GUID umumnya tampil dalam format kurung kurawal.

Dapatkah saya menggunakan UUID sebagai kunci utama di PostgreSQL atau MySQL?

Ya, dengan catatan kinerja untuk v4. Kunci v4 acak disisipkan pada posisi acak dalam indeks B-tree, sehingga memfragmentasinya pada tabel besar. UUID v7 menghindari hal ini karena dapat diurutkan berdasarkan waktu, sehingga penyisipan dilakukan dalam urutan yang hampir berurutan. PostgreSQL memiliki tipe uuid asli; MySQL biasanya menyimpan UUID sebagai CHAR(36) atau BINARY(16).