Langsung ke konten utama
PulsarKit

Buat UUID

Buat UUID v4, v7, dan v1 secara massal, hingga 10.000 sekaligus, atau decode UUID yang sudah ada untuk melihat versi, varian, dan timestamp di dalamnya.

Cara membuat UUID

  1. 1

    Pilih versi UUID

    Gunakan v4 untuk keacakan murni, v7 bila ID perlu terurut sesuai waktu pembuatan, atau v1 untuk susunan klasik berbasis waktu. NIL dan MAX memberikan dua nilai konstan yang dicadangkan.

  2. 2

    Atur jumlah dan formatnya

    Buat hingga 10.000 sekaligus. Pilih huruf besar atau kecil, apakah tanda hubung tetap ada, dan apakah setiap nilai dibungkus tanda kutip, kurung kurawal, atau awalan urn:uuid: agar bisa langsung ditempel ke kode.

  3. 3

    Salin daftar atau unduh

    Salin semua nilai yang dibuat ke papan klip dengan satu klik, atau unduh semuanya sebagai file teks biasa atau CSV; hasil v1 dan v7 menyertakan kolom timestamp.

Mengapa v7 menggantikan v4 sebagai kunci database

UUID v4 terdiri dari 122 bit keacakan murni. Akibatnya, sekumpulan UUID v4 yang dimasukkan ke indeks database masuk dengan urutan yang sama sekali tidak bisa ditebak. Penulisan jadi tersebar di seluruh indeks, dan performa turun pada skala besar. UUID v7 diawali timestamp milidetik 48 bit, sehingga ID yang dibuat belakangan selalu terurut setelah ID yang dibuat lebih dulu. Hasilnya, Anda mendapat lokalitas penulisan seperti integer auto-increment, sambil tetap mempertahankan ketahanan terhadap tabrakan (collision) dan pembuatan terdesentralisasi khas UUID. Alat ini menjaga hasil v7 tetap monoton bahkan dalam milidetik yang sama, dengan memakai bit teratas dari bagian acak sebagai penghitung.

Mengapa v1 di sini tidak pernah berisi alamat MAC

Definisi asli UUID v1 dari tahun 1993 menyusun 48 bit terakhir dari alamat MAC kartu jaringan, dengan anggapan tidak ada dua komputer dengan alamat yang sama. Di browser, alamat itu tidak tersedia. Bahkan bila alamat itu tersedia, menyisipkan alamat MAC asli ke setiap baris database berarti membocorkan jejak perangkat, dan kebocoran itu melekat pada rancangannya. Alat ini selalu mengisi 48 bit tersebut dengan byte acak dan mengaktifkan bit multicast, persis seperti yang diizinkan RFC 9562. Dengan begitu, keunggulan v1 berupa urutan berdasarkan timestamp tetap ada tanpa membuka pengenal perangkat keras apa pun.

Setiap UUID dibuat secara lokal

Pembuatan, pemformatan, dan proses decode semuanya berjalan di tab ini dengan Web Crypto API. Tidak ada yang dikirim ke server, dan tidak ada yang ditulis ke penyimpanan browser. Analitik hanya menerima catatan umum “tombol ditekan” beserta versi dan jumlahnya, tidak pernah UUID itu sendiri.

Pertanyaan yang sering diajukan

Apa bedanya UUID v4 dan v7?

UUID v4 berisi 122 bit keacakan murni tanpa struktur sama sekali. UUID v7 memakai 48 bit pertamanya untuk timestamp milidetik, sehingga sekumpulan nilai v7 terurut sesuai urutan pembuatannya. Ini berguna untuk primary key database, dan v7 tetap membawa cukup keacakan untuk menghindari tabrakan.

Kapan sebaiknya memakai v7, bukan v4, untuk kunci database?

Pakai v7 setiap kali ID menjadi primary key atau kolom indeks. Urutan waktunya membuat baris baru tetap berdekatan secara fisik di indeks, dan penyisipan seperti ini terukur lebih cepat daripada sebaran acak yang dihasilkan kunci v4. Pakai v4 bila nilainya tidak pernah masuk indeks, misalnya token sekali pakai.

Mengapa v1 di sini tidak berisi alamat MAC?

Browser tidak bisa membaca alamat MAC perangkat. Di luar browser pun, menyisipkan alamat MAC ke setiap ID yang dibuat akan membocorkan mesin fisik mana yang membuatnya. Karena itu, alat ini mengisi bagian tersebut pada UUID v1 dengan byte acak, dan RFC 9562 secara tegas mengizinkannya.

Seberapa besar kemungkinan UUID bertabrakan?

Untuk v4, membuat satu miliar UUID per detik selama sekitar 85 tahun memberi peluang kurang lebih 50% untuk satu tabrakan; dalam praktik, hal itu tidak terjadi. UUID v7 dan v1 menambahkan timestamp di atas keacakan, sehingga tabrakan yang tidak disengaja makin kecil kemungkinannya.

Bisakah UUID dipakai sebagai kata sandi atau token akses?

Sebaiknya tidak. UUID v4 memang membawa keacakan yang berarti, tetapi formatnya bisa ditebak, dan perangkat lunak memperlakukannya sebagai nilai yang boleh terlihat publik, berbeda dengan token yang harus tetap rahasia. Untuk apa pun yang harus tetap rahasia, pakai alat Buat password.

Untuk apa UUID NIL dan MAX?

NIL (seluruh bit 0) adalah nilai cadangan yang di banyak sistem berarti “tidak ada ID” atau “belum diatur”. MAX (seluruh bit 1), yang didefinisikan belakangan, dipakai sebagai penanda “lebih besar dari UUID nyata mana pun” dalam kueri rentang. Keduanya tidak dibuat secara acak, melainkan konstanta tetap.

Dari mana sumber keacakannya?

Dari crypto.getRandomValues milik Web Crypto API, dan untuk v4 langsung dari crypto.randomUUID bila browser mendukungnya. Math.random tidak dipakai di bagian mana pun dalam alat ini.

Apakah proses decode mengirim UUID ke tempat lain?

Tidak. Decoder membaca nibble versi, bit varian, serta timestamp yang tertanam pada v1 dan v7, seluruhnya di browser. Nilai yang Anda tempel tidak pernah keluar dari halaman.

Alat terkait