UUID oluşturucu
Veritabanları, API'ler ve testler için tek tıkla benzersiz kimlikler.
Tarayıcında çalışır. Yazdığın hiçbir şey bir yere gönderilmez.
- Sürüm 4 ve 7
- Tek seferde 1.000'e kadar
- Güvenli rastgele sayılar
Bir UUID nasıl oluşturulur
- Rastgele kimlikler için sürüm 4'ü, zamana göre sıralanan kimlikler için sürüm 7'yi seç.
- Kaç tane istediğini ve formatı ayarla.
- Oluştur'a tıkla, sonra listeyi kopyala veya indir.
UUID sürümleri karşılaştırması
| Sürüm | Neyden oluştuğu | Zamana göre sıralanır mı? |
|---|---|---|
| v4 (bu araç) | 122 rastgele bit | Hayır |
| v7 (bu araç) | 48 bitlik zaman damgası artı rastgele bitler | Evet |
| v1 (burada sunulmuyor) | Zaman damgası artı makinenin MAC adresi | Evet, ama hangi makinenin oluşturduğunu sızdırabilir |
RFC 9562'ye göre UUID yapısı
| Parça | Uzunluk | Anlamı |
|---|---|---|
| Sürüm dörtlüsü (nibble) | 1 onaltılık rakam | Sürüm 4 için 4, sürüm 7 için 7, 3. grupta |
| Varyant bitleri | 4. grubun en üst 2 biti | Bu RFC'nin UUID varyantı için 10 olarak ayarlanır |
| Toplam uzunluk | 36 karakter | 32 onaltılık rakam artı 4 tire |
UUID kullanma ipuçları
- Veritabanın sunuyorsa UUID'leri yerel bir UUID veya 16 baytlık ikili sütunda sakla. Onları 36 karakterlik metin olarak saklamak her birinin kapladığı alanı kabaca ikiye katlar.
- Sürüm 7'nin baştaki zaman damgası kimliklerin oluşturulma zamanına göre sıralanmasını sağlar, ama aynı zamanda bir kimliği elinde tutan herkesin, milisaniyesine kadar, yaklaşık ne zaman oluşturulduğunu anlayabileceği anlamına gelir.
- Süslü parantez ve tiresiz format, bazı eski Windows API'lerinin ve PowerShell betiklerinin bir GUID'in nasıl görünmesini beklediğiyle eşleşir.
UUID oluşturucu SSS
UUID v4 ile v7 arasındaki fark nedir?
Sürüm 4, 122 rastgele bittir. Sürüm 7, milisaniye cinsinden 48 bitlik bir zaman damgasıyla başlar, ardından rastgele bitler gelir; bu yüzden daha yeni kimlikler daha eskilerden sonra sıralanır.
İki UUID hiç aynı olabilir mi?
Pratikte hayır. Milyarda bir ihtimalle tek bir çakışma için yaklaşık 103 trilyon sürüm 4 UUID oluşturman gerekir.
Bir GUID, UUID ile aynı mı?
Evet. GUID, Microsoft'un aynı 128 bitlik format için kullandığı isimdir. Windows ve .NET'te kullanılan {XXXXXXXX-XXXX-...} stili için Büyük harf ve Süslü parantez seçeneklerini işaretle.
Bir veritabanı birincil anahtarı için hangi sürümü kullanmalıyım?
Sürüm 7. Değerleri zaman sırasıyla geldiğinden yeni satırlar rastgele noktalar yerine indeksin sonuna yerleşir, bu da eklemeleri hızlı tutar. Bir kimliğin ne zaman oluşturulduğunu ortaya çıkarmaması gerektiğinde sürüm 4'ü kullan.
Bir UUID'yi parola veya gizli token olarak kullanabilir miyim?
Rastgele bitler tarayıcının kriptografik olarak güvenli üretecinden gelir, ama bir UUID bir tanımlayıcı olması amaçlanmıştır. Sürüm 7 kimlikleri de oluşturulma zamanlarını ortaya çıkarır, bu yüzden gizli bilgiler için bir şifre oluşturucu kullan.
Bir UUID ne kadar uzun?
Tireli haliyle 36 karakter: 32 onaltılık rakam ve 4 tire, toplamda 128 bit veriyi kodlar.
Bu, kriptografik olarak güvenli bir rastgele kaynak kullanıyor mu?
Evet. Her iki sürüm de crypto.getRandomValues'tan (veya sürüm 4 için crypto.randomUUID'den) oluşturulur; tarayıcının kriptografik olarak güvenli rastgele sayı üretecidir, asla Math.random değil.