UUID generator: buat dan validasi UUID v4 dan v7
Membuat UUID (GUID) langsung di browser Anda – versi 4 yang acak atau versi 7 yang bisa diurutkan menurut waktu (RFC 9562). Dalam mode "Validasi", alat ini menunjukkan apakah UUID valid, versinya, dan kapan UUID dibuat.
Cara menghitung
UUID (Universally Unique Identifier, disebut GUID oleh Microsoft) adalah pengenal 128 bit yang unik di seluruh dunia tanpa registri pusat. UUID ditulis sebagai 32 digit heksadesimal dalam lima kelompok: xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx. Digit M adalah versinya; bit teratas N adalah variannya (8, 9, a atau b untuk UUID masa kini). Standar yang berlaku adalah RFC 9562 (2024), yang menggantikan RFC 4122.
Cara membuat atau memvalidasi UUID
- Pilih aksi: buat UUID atau validasi / baca UUID.
- Untuk membuat, pilih versi 4 (acak) atau versi 7 (urut waktu), masukkan jumlahnya, lalu atur huruf besar atau tanda hubung sesuai kebutuhan.
- Salin daftarnya – atau, dalam mode validasi, tempel UUID dan baca versi, varian dan timestamp-nya.
Contoh: UUID 01932c07-209c-7000-8000-000000000000 adalah versi 7. 48 bit pertamanya (01932c07209c) adalah waktu Unix dalam milidetik: 1731610484892, yaitu 14 November 2024 pukul 18.54.44,892 UTC.
Versi 4 atau versi 7?
- Versi 4 terdiri dari 122 bit acak. Tidak mengungkap apa pun tentang waktu atau perangkat – pilihan tepat untuk token, nama file dan apa pun yang tidak perlu urutan.
- Versi 7 diawali waktu Unix dalam milidetik (48 bit), lalu 74 bit acak. UUID baru karena itu terurut sesuai waktu pembuatan – ideal sebagai primary key database, karena baris baru ditambahkan di akhir indeks alih-alih tersebar. Konsekuensinya: siapa pun bisa membaca waktu pembuatannya.
Saat Anda membuat banyak UUID v7 sekaligus, sebagian besar jatuh pada milidetik yang sama. Alat ini lalu menaikkan bagian acaknya satu per satu (RFC 9562 § 6.2, metode 2), sehingga daftar tetap berurutan naik.
Seberapa bagus keacakannya?
Bit acak berasal dari crypto.getRandomValues() – generator acak yang aman secara kriptografis di browser Anda, sama dengan yang dipakai crypto.randomUUID(). Tidak ada yang dikirim ke server atau disimpan. Dengan 122 bit acak, dibutuhkan sekitar 2,7 kuintiliun (2,7 × 1018) UUID sebelum peluang satu duplikat mencapai 50 %.
Memvalidasi dan membaca UUID
Dalam mode "Validasi", alat ini membongkar UUID yang sudah ada: memeriksa panjang dan karakter, membaca versi dan varian, dan untuk versi 1, 6 dan 7 mengubah timestamp di dalamnya ke UTC dan waktu lokal Anda. Versi 1 dan 6 menghitung interval 100 nanodetik sejak 15 Oktober 1582 (awal kalender Gregorius); versi 7 menghitung milidetik sejak 1 Januari 1970. Nilai khusus adalah Nil UUID (semua nol) dan Max UUID (semua f).
Pertanyaan umum
Apa itu UUID?
UUID adalah pengenal unik 128 bit yang ditulis sebagai 32 digit heksadesimal, misalnya 550e8400-e29b-41d4-a716-446655440000. UUID bisa dibuat di mana saja tanpa koordinasi pusat dan praktis tidak akan pernah sama dengan UUID lain.
Apa beda UUID dan GUID?
Pada dasarnya tidak ada: GUID (Globally Unique Identifier) adalah sebutan Microsoft untuk format 128 bit yang sama. GUID dari Windows atau .NET biasanya UUID versi 4.
Apakah UUID bisa kembar?
Secara teori bisa, dalam praktik tidak: versi 4 punya 2122 kemungkinan nilai. Bahkan dengan satu miliar UUID per detik, butuh sekitar 86 tahun sampai peluang duplikat mencapai 50 % – asalkan generator acaknya bagus, seperti crypto.getRandomValues() yang dipakai di sini.
Versi UUID mana yang cocok untuk database?
Versi 7. Karena diawali timestamp, record baru disisipkan berurutan sehingga indeks B-tree tetap ringkas dan cepat. PostgreSQL 18 menyediakan fungsi bawaan uuidv7() untuk ini.
Bisakah saya tahu kapan UUID dibuat?
Untuk versi 1, 6 dan 7, bisa – pilih "Validasi / baca UUID". Versi 4 hanya berisi nilai acak dan tidak mengungkap waktu maupun perangkat.
Huruf besar atau kecil?
Keduanya valid. RFC 9562 menetapkan huruf kecil untuk output dan mewajibkan input diproses tanpa membedakan huruf besar/kecil. Beberapa alat Microsoft menampilkan GUID dalam huruf besar di dalam kurung kurawal.
Sumber dan dasar hukum
- § 4 (Format, Variante, Version), § 5.4 (v4), § 5.7 (v7), § 6.2 (Monotonie), Anhang A (Testvektoren): RFC 9562 – Universally Unique IDentifiers (UUIDs), IETF 2024
- W3C Web Cryptography API – Crypto.getRandomValues()
- MDN Web Docs – Crypto.randomUUID()
Diperbarui:
Alat terkait
- Unix timestamp converter: timestamp ke tanggalKonversi Unix timestamp ke tanggal dan sebaliknya. Detik, milidetik, mikro- dan nanodetik dikenali otomatis; UTC, WIB/waktu lokal, ISO 8601 dan lainnya.
- Cek DNS record domainCek DNS domain online: record A, AAAA, MX, TXT, CNAME, NS, SOA, CAA, SRV, dan PTR dari domain apa pun – dengan TTL, status DNSSEC, dan penjelasan kode error.
- Hash generator: SHA-256, SHA-512, SHA-1, MD5Hitung hash SHA-256, SHA-384, SHA-512, SHA-1 dan MD5 dari teks atau file dan cocokkan checksum – langsung di browser, tanpa upload, gratis.
- Base64 decode dan encode onlineBase64 decode dan encode online, termasuk Base64url dengan UTF-8 yang benar, serta URL encode/decode (percent-encoding). Pesan error jelas, berjalan di browser.
- JSON formatter, validator, dan minifyJSON formatter online: validasi JSON sesuai RFC 8259, lihat error lengkap dengan baris, kolom, dan penjelasannya. Rapikan, minify, urutkan key – di browser.
- Regex TesterRegex tester online untuk JavaScript: kecocokan disorot langsung, grup tangkapan dalam tabel, dan setiap bagian pola dijelaskan. Gratis, tanpa unggah.