Hangi UUID sürümünü kullanmalıyım?+−
Çoğu genel amaçlı kimlik için v4 kullanın - rastgeledir ve hiçbir bilgi taşımaz. UUID bir veritabanı birincil anahtarı veya indeksi olacaksa, v7 genellikle daha iyidir çünkü kronolojik sıralanır ve bu, indeksleri hızlı tutar. Aynı girdinin (bir URL veya isim gibi) her zaman aynı UUID'yi üretmesini istediğinizde v5 kullanın; v1'i yalnızca kimliğe gömülü bir zaman damgasına özellikle ihtiyacınız varsa kullanın ve oluşturulma zamanını ortaya çıkarabileceğinin farkında olun.
v3 ile v5 arasındaki fark nedir?+−
İkisi de deterministiktir: aynı ad alanı ve isim verildiğinde her zaman aynı UUID'yi üretirler. Tek fark hash fonksiyonudur - v3, MD5 kullanır, v5 SHA-1 kullanır. MD5 kriptografik olarak kırıldığından, yeni herhangi bir şey için önerilen seçim v5'tir; v3 esas olarak eski sistemlerle uyumluluk için mevcuttur.
v7 neden kronolojik sıralanıyor?+−
Bir v7 UUID'si, rastgele bitlerden önce 48 bitlik bir Unix milisaniye zaman damgasıyla başlar; bu sayede UUID'ler düz dizeler (veya bayt) olarak karşılaştırıldığında, önce oluşturulanlar sonra oluşturulanlardan önce sıralanır. Rastgele v4 UUID'lerinde böyle bir yapı yoktur; bu da yeni rastgele değerler anahtar aralığı boyunca, sonuna değil, her yere eklendikçe veritabanı indekslerinin parçalanmasına yol açabilir.
Burada üretilen UUID'ler kriptografik olarak rastgele mi?+−
Evet. v4 ve v1 ile v7'nin rastgele kısımları, Math.random() değil, tarayıcınıza yerleşik kriptografik olarak güvenli bir rastgele sayı üreteci olan Web Crypto API'sinin crypto.getRandomValues fonksiyonunu kullanır. Hiçbir şey bir sunucuda üretilmez veya herhangi bir yere gönderilmez.
İki rastgele v4 UUID'nin çakışma olasılığı nedir?+−
Astronomik derecede düşük. Bir v4 UUID'nin 122 rastgele biti vardır (6 bit sürüm ve varyantı belirtmek için sabittir), bu da yaklaşık 5,3 x 10^36 olası değer verir. 100 yıl boyunca saniyede bir milyar UUID üretilse bile herhangi bir çakışma olasılığı milyarda birden azdır - v4'ün merkezi bir kayıt sistemine ihtiyaç duymadan benzersiz bir tanımlayıcı olarak güvenilmesinin nedeni de budur.
UUID ile GUID aynı şey midir?+−
Pratikte evet - GUID (Küresel Olarak Benzersiz Tanımlayıcı), UUID standardının (RFC 4122) tanımladığı aynı 128 bitlik tanımlayıcı formatının Microsoft tarafından kullanılan adıdır. Bazı ortamlar bunu büyük harflerle veya süslü parantez ({...}) içine alarak yazar, ancak temel değer ve yapı aynıdır; bu yüzden burada üretilen bir UUID aynı zamanda geçerli bir GUID'dir.