UUID Sürüm 5 Oluşturucu (SHA-1 İsim Tabanlı)

Ad alanı ve isim kullanarak SHA-1 karma ile tutarlı UUID'ler oluşturun

Ad Alanı AyarlarıSHA-1

Sürüm v3 ve v5 UUID'ler, deterministik UUID'ler oluşturmak için bir ad alanı ve isim gerektirir.

Geçerli bir UUID olmalıdır. Ön tanımlı bir ad alanı seçmek için açılır menüyü kullanın.
UUID oluşturmak için karma yapılacak herhangi bir metin dizisi.

Bu örnekleri deneyin:

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

  1. Bir ad alanı UUID'si seçin (önceden tanımlı veya özel)
  2. Ad alanı UUID'si ve ad dizesini birleştirin
  3. Birleştirilen değerin SHA-1 karmasını hesaplayın
  4. Sürüm bitlerini (0101) ve varyant bitlerini (10) ayarlayın
  5. 32 onaltılık rakam olarak tirelerle birleştirin: 8-4-4-4-12 formatı

Avantajlar ve Dikkat Edilmesi Gerekenler

AdvantagesConsiderations
  • Deterministik (aynı girdi = aynı UUID)
  • Ad alanlı organizasyon
  • Ağ veya zaman bağımlılığı yok
  • Gizlilik endişesi yok (MAC adresi yok)
  • Zaman sıralı değil
  • Aynı girdi her zaman aynı UUID'yi oluşturur
  • Ad alanı seçimi benzersizliği etkiler
  • SHA-1'in bilinen kriptografik zayıflıkları var

UUID v5 Yapısı

BitsContent
0-47SHA-1 karmasının ilk 48 biti
48-51Sürüm (v5 için 0101)
52-63SHA-1 karmasının sonraki 12 biti
64-65Varyant (RFC4122 için 10)
66-127SHA-1 karmasının kalan 62 biti

UUID v5 ve diğer sürümler

VersionDayandığıKullanım durumuPrivacy
UUID v1Zaman + MACZaman sıralı kimlikler⚠️ MAC adresini açığa çıkarır
UUID v3Ad alanı + MD5Deterministik Kimlikler✅ Gizli
UUID v4RandomGüvenli rastgele kimlikler✅ Gizli
UUID v5Ad alanı + SHA-1Deterministik Kimlikler✅ Gizli
UUID v6Zaman (yeniden sıralanmış)Sıralanabilir kimlikler⚠️ MAC adresini açığa çıkarır
UUID v7Zaman + rastgeleSıralanabilir kimlikler✅ Gizli

Önceden Tanımlı Ad Alanları

NamespaceUUIDPurpose
DNS6ba7b810-9dad-11d1-80b4-00c04fd430c8Alan adları için
URL6ba7b811-9dad-11d1-80b4-00c04fd430c8URL'ler için
OID6ba7b812-9dad-11d1-80b4-00c04fd430c8ISO OID'leri için
X.500 DN6ba7b814-9dad-11d1-80b4-00c04fd430c8X.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.

Resources