Penukar Percuma

UUID / GUID Penjana

Jana nilai UUID v4 (GUID) serta-merta dalam penyemak imbas anda. Percuma, peribadi dan sisi klien — tiada data dihantar ke mana-mana pelayan.

Tentang alat ini

UUID (Pengecam Unik Sejagat, juga dipanggil GUID dalam konteks Microsoft) ialah pengecam 128-bit yang boleh dijana secara bebas merentas sistem dengan kebarangkalian perlanggaran yang boleh diabaikan. Bentuk standard ialah 32 aksara heks dalam 8-4-4-4-12 kumpulan, dipisahkan oleh tanda sempang (550e8400-e29b-41d4-a716-446655440000). Berbilang versi wujud dengan strategi penjanaan yang berbeza; v4 (rawak) adalah yang paling biasa.

v4 UUID memperoleh keunikan mereka daripada 122 bit rawak (enam bit ditetapkan untuk versi dan varian). Kebarangkalian perlanggaran adalah sangat kecil sehingga untuk tujuan praktikal UUID boleh dianggap sebagai unik secara global tanpa penyelarasan — dua sistem yang menjana UUID secara bebas tidak akan menghasilkan pendua pada sebarang skala masa yang realistik.

Penjana ini menghasilkan UUID v4 dalam format hex-dengan-sempang standard. Rawak datang daripada penjana nombor rawak selamat secara kriptografi penyemak imbas (window.crypto.getRandomValues), sesuai untuk tujuan sensitif keselamatan. Penjanaan pukal disokong untuk mengisi lekapan ujian atau pangkalan data pembenihan.

Mengapa Menjana UUID

UUID membenarkan sistem teragih menjana pengecam tanpa menyelaraskan dengan pangkalan data pusat. Setiap perkhidmatan boleh menghasilkan ID secara tempatan tanpa pergi balik ke kaunter, dan ID yang terhasil dijamin tidak bertembung dengan ID yang dijana di tempat lain. Ini membolehkan seni bina berskala kecil di mana penjanaan ID bukan halangan.

UUID juga menjadikan ID tidak dapat dielakkan. Maklumat kebocoran ID berangka berurutan — jumlah kiraan pengguna, umur akaun, halaju pendaftaran. UUID tidak mendedahkan apa-apa. API yang mendedahkan ID kepada pengguna mendapat manfaat daripada UUID untuk keselamatan dan untuk keserasian ke hadapan dengan hujung belakang yang dipecahkan.

Cara menggunakan

Klik jana, dapatkan UUID v4.

  1. Pilih kiraan: Hasilkan satu UUID pada satu masa, atau hasilkan pukal sehingga beberapa ribu untuk mengisi data ujian.
  2. Pilih format: Format standard dengan sempang (550e8400-e29b-41d4-a716-446655440000) ialah lalai. Varian padat (tiada tanda sempang), huruf besar dan berbalut pendakap {550e8400-...} turut ditawarkan.
  3. Menjana: Crypto.randomUUID() penyemak imbas (atau sandaran v4 menggunakan crypto.getRandomValues) menghasilkan UUID baharu. Setiap generasi adalah bebas dan tidak menentukan.
  4. Salin atau muat turun: Salin UUID tunggal ke papan keratan atau muat turun senarai pukal sebagai teks atau CSV.

Kes Penggunaan Biasa

Butiran Teknikal

UUID ialah 128 bit, dipaparkan sebagai 32 digit heksadesimal dalam lima kumpulan yang dipisahkan oleh tanda sempang. Pengelompokan (8-4-4-4-12) adalah kosmetik semata-mata; nilainya ialah integer 128-bit tunggal. v4 UUID mengekodkan 122 bit rawak dengan baki 6 bit tetap: medan versi (4 bit, nilai 4) mengenal pasti varian.

Sokongan penyemak imbas: crypto.randomUUID() tersedia dalam penyemak imbas moden (Chrome 92+, Firefox 95+, Safari 15.4+) dan menghasilkan UUID v4 secara langsung. Penyemak imbas lama kembali untuk menggabungkan 16 bait rawak secara manual daripada crypto.getRandomValues ​​dengan bit versi/varian yang ditetapkan dengan betul.

Kebarangkalian perlanggaran: dengan 2^122 kemungkinan UUID rawak, peluang untuk menjana dua nilai yang sama adalah diabaikan. Walaupun pada 10^9 UUID yang dijana, kebarangkalian satu perlanggaran adalah sekitar 10^-18 — kira-kira 10 trilion kali lebih kecil daripada memilih atom di Bumi secara rawak.

Amalan Terbaik

Soalan lazim

Apakah UUID?
UUID (Universally Unique Identifier) ialah label 128-bit yang digunakan untuk mengenal pasti maklumat secara unik tanpa penyelarasan antara pihak. UUID v4 kelihatan seperti: 550e8400-e29b-41d4-a716-446655440000. Ia hampir dijamin unik merentas semua sistem di seluruh dunia.
Adakah dua UUID akan menjadi sama?
Secara teorinya mungkin tetapi praktikalnya mustahil. UUID v4 mempunyai 2^122 nilai yang mungkin (5.3 × 10^36). Anda perlu menjana 1 bilion UUID sesaat selama 100 tahun untuk mempunyai peluang 50% untuk satu perlanggaran.
Bilakah saya harus menggunakan UUID vs ID autokenaikan?
UUID adalah lebih baik untuk sistem yang diedarkan, apl yang mengutamakan luar talian dan apabila anda tidak mahu ID mendedahkan maklumat (seperti kiraan pengguna). Autokenaikan adalah lebih mudah, lebih padat dan lebih pantas untuk pengindeksan pangkalan data.
Adakah UUID ini selamat secara kriptografi?
Alat ini menggunakan crypto.getRandomValues() yang menyediakan nombor rawak selamat secara kriptografi. UUID v4 sesuai untuk token dan pengecam sesi, tetapi untuk aplikasi keselamatan tinggi, pertimbangkan penjana token yang dibina khas.
Bagaimana pula dengan UUID v5 atau v7?
v5 memperoleh UUID secara deterministik daripada nama dalam ruang nama (berguna untuk ID yang boleh dialamatkan kandungan). v7 (lebih baharu, 2022) memberi awalan pada cap masa milisaat untuk susunan masa leksikografi. Penjana ini memberi tumpuan kepada v4; versi tertentu boleh ditambah jika perlu.
Adakah UUID sensitif huruf besar-besaran?
Mengikut spesifikasi, tidak - hex huruf besar dan huruf kecil adalah setara. Kebanyakan penjana menghasilkan huruf kecil secara lalai. Perbandingan hendaklah tidak peka huruf besar-besaran.
Adakah penjanaan dilakukan dalam penyemak imbas saya?
ya. UUID dijana sisi klien menggunakan API kripto penyemak imbas.
Bolehkah saya mengisih UUID mengikut masa penciptaan?
Bukan untuk v4 — struktur rawak tidak mempunyai pesanan masa. Untuk UUID yang boleh diisih masa gunakan v7 (atau v1 yang lebih awal jika anda menerima implikasi privasi).