Penjana & Pengesah UUID
Cipta UUID v4 rawak kriptografi atau UUID v7 yang boleh diisih, satu atau seribu sekali gus, dan periksa mana-mana UUID atau GUID untuk melihat versi dan timestamp terbenamnya.
Berjalan dalam pelayar andaTanpa pendaftaranTiada apa dimuat naik
Cara menggunakan Penjana UUID
- Pilih v4 untuk ID rawak sepenuhnya atau v7 untuk ID yang diisih mengikut masa penciptaan.
- Tetapkan berapa banyak yang anda perlukan (sehingga 1,000) dan klik Jana.
- Secara pilihan, tukar kepada huruf besar, buang sempang atau balut dengan kurungan untuk GUID gaya Microsoft.
- Klik UUID yang besar untuk menyalinnya, atau guna Salin semua / Muat turun .txt untuk satu kelompok.
- Tampal mana-mana UUID ke dalam pemeriksa untuk mengesahkannya dan membaca versi, varian dan timestampnya.
Apakah itu UUID?
UUID (Universally Unique Identifier), dipanggil GUID pada platform Microsoft, ialah nilai 128-bit yang ditulis sebagai 32 digit hex dalam lima kumpulan: 8-4-4-4-12. Format ini ditakrifkan dalam RFC 9562, yang menggantikan RFC 4122 pada 2024. Satu digit mengekod versi (digit hex ke-13) dan bit teratas digit ke-17 mengekod varian.
UUID v4 lwn. UUID v7
| v4 | v7 | |
|---|---|---|
| Kandungan | 122 bit rawak | Timestamp milisaat Unix 48-bit + 74 bit rawak |
| Susunan isihan | Rawak | Kronologi |
| Indeks pangkalan data | Sisipan rawak memecah-mecahkan indeks B-tree | Ditambah di hujung, jauh lebih mesra indeks |
| Mendedahkan masa penciptaan | Tidak | Ya |
Guna v7 untuk kunci primer pangkalan data dan ID acara yang susunan sisipannya penting. Guna v4 apabila ID tidak boleh membocorkan bila sesuatu dicipta. Penjana ini memastikan ID v7 sentiasa meningkat walaupun banyak yang dicipta dalam milisaat yang sama.
Sejauh mana ia unik?
Dengan 122 bit rawak, anda perlu menjana kira-kira 2.7 kuintilion UUID v4 sebelum mencapai peluang 50% untuk satu perlanggaran. Halaman ini menggunakan penjana rawak selamat kriptografi pelayar (crypto.getRandomValues), bukan Math.random().
Menjana UUID dalam kod
// JavaScript (browsers, Node 19+)
crypto.randomUUID()
# Python
import uuid; uuid.uuid4()
-- PostgreSQL 13+
SELECT gen_random_uuid();Soalan lazim
Selamatkah UUID ini digunakan dalam produksi?
Apakah perbezaan antara UUID dan GUID?
{3F2504E0-4F89-11D3-9A0C-0305E82C3301}. Guna pilihan di atas untuk menghasilkan format itu.Bolehkah saya mendapatkan masa penciptaan daripada UUID?
Patutkah saya menggunakan UUID sebagai kunci primer pangkalan data?
uuid asli atau binari 16 bait dan bukannya rentetan 36 aksara.Apakah itu nil UUID?
00000000-0000-0000-0000-000000000000, digunakan sebagai pemegang tempat yang bermaksud “tiada UUID”. RFC 9562 juga mentakrifkan max UUID serba f.