Ana içeriğe geç
FreeOnlineTools Go
Türkçe
Açıklama

UUID Nedir? Evrensel Benzersiz Tanımlayıcıların Tam Açıklaması

FreeOnlineTools Team tarafından · 2026-09-02 güncellendi

Hızlı Yanıt

UUID, 36 karakter (32 hex rakam artı 4 tire) olarak temsil edilen 128-bit identifier'dır. UUID'ler koordinasyon olmadan pratik olarak benzersizdir —collision olasılığı ihmal edilebilir. UUID v4 (random) en yaygın sürümdür. Ücretsiz UUID Generator kullanın.

giriiş

UUID (Universally Unique Identifier), Microsoft terminolojisinde GUID (Globally Unique Identifier) de denir, merkezi koordinasyon olmadan pratik olarak benzersiz olması garanti edilen 128-bit identifier'dır. UUID'ler RFC 4122 tarafından tanımlanır ve veritabanı primary key, request ID, session token ve dağıtık sistem identifier olarak yaygın kullanılır. En yaygın sürüm, rastgele bit kullanan UUID v4'tür.

Adım adım

  1. UUID yapısını anlayın

    Bir UUID 128 bittir ve 5 grupta 32 onaltılık basamak olarak görüntülenir: 8-4-4-4-12, tirelerle ayrılmış (ör. 550e8400-e29b-41d4-a716-446655440000). 13. rakam sürümü (v4 için 4), 17. rakam ise varyantı gösterir.

  2. UUID sürümlerini öğrenin

    v1: zamana dayalı (zaman damgası + MAC adresi) — zaman sıralıdır ancak kimlik sızdırır. v3: MD5 karma işlemiyle isme dayalı. v4: rastgele — en yaygın olanı, gizlilik kaygısı yok. v5: SHA-1 karması ile isme dayalı. v6 ve v7: v1'e göre geliştirilmiş gizlilikle zaman sıralıdır.

  3. Çarpışma olasılığını anlayın

    UUID v4'ün 2^122 olası değeri vardır. 103 trilyon UUID'nin çarpışma olasılığı %50'dir. Pratik kullanım için (milyonlarca kimlik), çarpışma olasılığı fiilen sıfırdır; UUID'leri koordinasyon olmadan bağımsız olarak oluşturabilirsiniz.

  4. UUID'leri uygun şekilde kullanın

    Neredeyse tüm kullanım durumları için v4'ü kullanın (veritabanı kimlikleri, istek kimlikleri, oturum belirteçleri). Veritabanı konumu için zaman sıralı kimliklere ihtiyacınız varsa v7'yi kullanın. Güvenlik açısından hassas bağlamlarda v1'den kaçının; bir zaman damgası ve MAC adresi içerir.

Örnekler

UUID v4 (rastgele)

Giriş: crypto.getRandomValues ​​ile oluşturulmuştur

Çıkış: 550e8400-e29b-41d4-a716-446655440000

UUID v1 (zamana dayalı)

Giriş: Zaman damgası + MAC adresi

Çıkış: a3bbf0ee-d6e4-11ed-a5b3-3c9703e8b4a1

Sıfır UUID

Giriş: All zeros

Çıkış: 00000000-0000-0000-0000-000000000000

Yaygın Sorunlar

  • UUID'ler için Math.random()'un kullanılması kriptografik olarak güvenli değildir. Tarayıcılarda crypto.getRandomValues() veya crypto.randomUUID() öğesini kullanın.
  • UUID'leri dize olarak depolama — UUID dizesi 36 bayttır; UUID türü (16 bayt) olarak saklandığında daha verimlidir. Mevcut olduğunda veritabanlarında yerel UUID türünü kullanın.
  • V1'i güvenlik açısından hassas bağlamlarda kullanmak —v1, ne zaman ve nerede oluşturulduğuna ilişkin bilgileri sızdırabilecek bir zaman damgası ve MAC adresi yerleştirir. Anonimlik için v4'ü kullanın.
  • UUID'lerin gerçekten benzersiz olduğunu varsayarsak, pratik olarak benzersizdirler (çarpışma olasılığı göz ardı edilebilir), ancak benzersiz oldukları matematiksel olarak garanti edilmez.

İpuçları

  • Neredeyse tüm kullanım durumları için UUID v4'ü kullanın; rastgeledir, gizlilik kaygısı yoktur ve tüm modern veritabanları tarafından desteklenir.
  • Kitaplığı olmayan yerleşik bir v4 oluşturucu için modern tarayıcılarda crypto.randomUUID() işlevini kullanın.
  • Daha iyi depolama ve dizin performansı için UUID'leri dizeler (36 bayt) yerine veritabanlarında (16 bayt) UUID/GUID türü olarak saklayın.
  • Tarayıcınızda anında UUID'ler oluşturmak için UUID Oluşturucumuzu kullanın; kayıt gerektirmez, tamamen özeldir.

İlgili Araçlar

İlgili Kılavuzlar

Referanslar