UUID v5 nedir?
UUID sürüm 5 RFC 4122'de tanımlanan ad alanı tabanlı 128-bit tanımlayıcı (36 karakterlik dize). Şunları birleştirir:
- Ad alanı UUID'si: Oluşturmayı kapsamlamak için önceden tanımlı veya özel UUID
- Name: Ad alanı içinde kullanıcı tanımlı dize değeri
- SHA-1 karması: Sonucu oluşturmak için kullanılan kriptografik algoritma
Format örneği: 2ed6657d-e927-5eb1-9a03-0242ac130003
UUID v5 nasıl çalışır
- Bir ad alanı UUID'si seçin (önceden tanımlı veya özel)
- Ad alanı UUID'si ve ad dizesini birleştirin
- Birleştirilen değerin SHA-1 karmasını hesaplayın
- Sürüm bitlerini (0101) ve varyant bitlerini (10) ayarlayın
- 32 onaltılık rakam olarak tirelerle birleştirin: 8-4-4-4-12 formatı
Avantajlar ve Dikkat Edilmesi Gerekenler
Advantages | Considerations |
---|---|
|
|
UUID v5 Yapısı
Bits | Content |
---|---|
0-47 | SHA-1 karmasının ilk 48 biti |
48-51 | Sürüm (v5 için 0101) |
52-63 | SHA-1 karmasının sonraki 12 biti |
64-65 | Varyant (RFC4122 için 10) |
66-127 | SHA-1 karmasının kalan 62 biti |
UUID v5 ve diğer sürümler
Version | Dayandığı | Kullanım durumu | Privacy |
---|---|---|---|
UUID v1 | Zaman + MAC | Zaman sıralı kimlikler | ⚠️ MAC adresini açığa çıkarır |
UUID v3 | Ad alanı + MD5 | Deterministik Kimlikler | ✅ Gizli |
UUID v4 | Random | Güvenli rastgele kimlikler | ✅ Gizli |
UUID v5 | Ad alanı + SHA-1 | Deterministik Kimlikler | ✅ Gizli |
UUID v6 | Zaman (yeniden sıralanmış) | Sıralanabilir kimlikler | ⚠️ MAC adresini açığa çıkarır |
UUID v7 | Zaman + rastgele | Sıralanabilir kimlikler | ✅ Gizli |
Önceden Tanımlı Ad Alanları
Namespace | UUID | Purpose |
---|---|---|
DNS | 6ba7b810-9dad-11d1-80b4-00c04fd430c8 | Alan adları için |
URL | 6ba7b811-9dad-11d1-80b4-00c04fd430c8 | URL'ler için |
OID | 6ba7b812-9dad-11d1-80b4-00c04fd430c8 | ISO OID'leri için |
X.500 DN | 6ba7b814-9dad-11d1-80b4-00c04fd430c8 | X.500 Ayırt Edici İsimler için |
Yaygın Kullanım Durumları
- İçerik adresleme: Aynı içerik için tutarlı kimlikler
- Dağıtık sistemler: Sistemler arası adlandırılmış kaynaklar
- URL eşlemesi: URL'leri kararlı tanımlayıcılara dönüştürme
- Yapılandırma yönetimi: Adlandırılmış yapılandırma öğelerini izleme
- Veri çoğaltma önleme: Aynı kayıtları tanımlama
- Federation: Sistemler arası tutarlı kimlikler
Sıkça Sorulan Sorular
UUID v5, UUID v3'ten daha mı iyi?
Evet, çoğu kullanım durumu için. UUID v5, UUID v3'te kullanılan MD5 algoritmasından daha güçlü kriptografik SHA-1 kullanır. Ancak her ikisi de deterministik oluşturma sağlar.
UUID v5 değerleri çakışabilir mi?
Çakışmalar teorik olarak mümkündür ancak SHA-1'in özellikleri nedeniyle pratikte son derece nadirdir. Farklı ad alanları veya ad dizeleri kullanmak çakışma riskini neredeyse ortadan kaldırır.
SHA-1, UUID v5 için yeterince güvenli mi?
UUID amaçları için, SHA-1 kriptografik zayıflıklarına rağmen uygundur. UUID v5 güvenlik amaçlı değil, tutarlı tanımlayıcılar oluşturmak için tasarlanmıştır.
Kendi ad alanımı UUID v5 için oluşturabilir miyim?
Evet. RFC 4122 standart ad alanlarını (DNS, URL, OID, X.500) tanımlasa da, genellikle v4 rastgele UUID olan geçerli herhangi bir UUID ile özel ad alanları oluşturabilirsiniz.
Aynı ad her zaman aynı UUID v5'i oluşturur mu?
Evet, ancak sadece aynı ad alanı içinde. Farklı ad alanlarındaki aynı ad farklı UUID'ler oluşturur, bu da tanımlayıcıları organize etmek için önemli bir özelliktir.