🆔 UUID Araçları

Tüm RFC 4122 sürümlerini ve ULID gibi modern alternatifleri destekleyen eksiksiz UUID/GUID oluşturma ve doğrulama araç seti, dağıtık sistemler için.

UUID nedir?

UUID (Evrensel Benzersiz Tanımlayıcı) küresel olarak benzersiz olacak şekilde tasarlanmış standartlaştırılmış bir tanımlayıcı formatıdır. UUID'ler genellikle 32 onaltılık rakam olarak temsil edilen 128 bit değerlerdir ve beş grup halinde tirelerle ayrılarak gösterilir: 123e4567-e89b-12d3-a456-426614174000.

UUID'ler RFC 9562 standardı ile tanımlanır (önceki RFC 4122'nin yerini alır) ve merkezi kayıt veya koordinasyon gerektirmeden bilgi tanımlamak için bilgisayar platformlarında kullanılır.

UUID Formatı

Tüm UUID'ler 36 karakterden oluşan ortak bir formata sahiptir (32 onaltılık rakam artı 4 tire) ve şu desenle düzenlenmiştir:

xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx

Nerede:

  • x herhangi bir onaltılık rakamdır (0-9, a-f)
  • M UUID sürümünü gösterir (1-7)
  • N UUID varyantını gösterir (genellikle modern UUID'ler için 8, 9, A veya B)

Gizlilik ve İşleme

Tüm UUID oluşturma ve doğrulama işlemleri tarayıcınızda yerel olarak, kriptografik olarak güvenli rastgele sayı üretimi kullanılarak yapılır. Araçlar tanımlayıcılarınızı hiçbir yere göndermez - her şey cihazınızda işlenir, bu da bu araçları hassas sistem tanımlayıcılarını işlemek için güvenli kılar.

UUID v4 Oluşturucu

Sistem bilgilerini açığa çıkarmadan veritabanı birincil anahtarları ve oturum belirteçleri için mükemmel kriptografik rastgele UUID v4 tanımlayıcıları oluşturun.

UUID v1 Oluşturucu

Oluşturma zamanı ve MAC adresini gömerek izlenebilirlik gerektiren dağıtık sistemler için zaman damgalı UUID v1 tanımlayıcıları oluşturun.

UUID v3 Oluşturucu

Aynı girdiden tutarlı kimlikler için ad alanı ve isim üzerinde MD5 hash kullanarak deterministik UUID v3 tanımlayıcıları oluşturun.

UUID v5 Oluşturucu

DNS isimleri veya URL'lerden daha iyi çarpışma direnci için SHA-1 hash kullanarak güvenli isim tabanlı UUID v5 tanımlayıcıları oluşturun.

UUID v6 Oluşturucu

Zaman damgası sıralamasını geliştirilmiş veritabanı indeksleme performansıyla birleştiren modern UUID v6 tanımlayıcıları oluşturun.

UUID v7 Oluşturucu

Modern dağıtık sistemler için milisaniye hassasiyetinde Unix epoch zaman damgaları kullanarak son teknoloji UUID v7 tanımlayıcıları oluşturun.

ULID Oluşturucu

URL güvenli, sıralanabilir UUID alternatifleri için 26 karakterli kodlamayla Evrensel Benzersiz Sıralanabilir Tanımlayıcılar oluşturun.

Kısa UUID Oluşturucu

QR kodları ve URL'ler için uzunluğu 36'dan 22 karaktere düşürmek üzere base62 kodlaması kullanarak kompakt Kısa UUID tanımlayıcıları oluşturun.

Nil UUID Oluşturucu

Veritabanı başlatma ve varsayılan durumlar için boş veya null UUID değerlerini temsil eden RFC 4122 Nil UUID'si (tümü sıfır) oluşturun.

UUID Kod Çözücü ve Doğrulayıcı

Her sürümden UUID'leri analiz edin ve doğrulayın; hata ayıklama için zaman damgaları, sürüm numaraları ve varyant detayları gibi gömülü bilgileri çıkarın.

Toplu UUID Oluşturucu

Veritabanı doldurma, yük testi ve toplu veri işlemleri için binlerce UUID'yi aynı anda oluşturun ve dışa aktarma özelliklerinden yararlanın.

UUID Sürümleri ve Kullanım Durumları

Bu araçlar tüm RFC standart UUID sürümlerini ve dağıtık sistemler, veritabanları ve URL dostu uygulamalarda belirli ihtiyaçları karşılayan modern alternatifler olan ULID gibi seçenekleri destekler. Rastgele ID'lere, zaman damgası tabanlı tanımlayıcılara veya kompakt alternatiflere ihtiyacınız olsun, doğru UUID formatı sisteminizin güvenilir şekilde ölçeklenmesini sağlar.

Standart UUID'ler: Farklı kullanım durumları için sürüm 1, 3, 4, 5, 6 ve 7'de RFC uyumlu tanımlayıcılar oluşturun.

Modern Alternatifler: Sözlük sıralı ID'ler için ULID'ler ve kompakt uygulamalar için Kısa UUID'ler oluşturun.

Toplu Oluşturma: Veritabanı doldurma ve yük testi için binlerce UUID'yi aynı anda oluşturun.

Analiz Araçları: Mevcut UUID'leri çözümleyerek gömülü bilgileri çıkarın ve format uyumluluğunu doğrulayın.

UUID Sürümleri Karşılaştırması

VersionNameOluşturma YöntemiTime-orderedKullanım Durumları
UUID v1TimestampMevcut zaman damgası + node ID (MAC)Evet (kısmen)Kayıt, dağıtık sistemler
UUID v3İsim tabanlı (MD5)Namespace + isim için MD5 hash'iNoAynı girdi için tutarlı ID'ler
UUID v4RandomRastgele veya yarı rastgele sayılarNoGenel amaç, en yaygın
UUID v5İsim tabanlı (SHA-1)Namespace + isim için SHA-1 hash'iNoDaha güçlü hash ile tutarlı ID'ler
UUID v6Yeniden düzenlenmiş Zaman DamgasıSıralama için düzenlenmiş zaman damgasıYesVeritabanı anahtarları, zaman sıralı kayıtlar
UUID v7Unix Epoch Zaman DamgasıUnix zaman damgası + rastgele veriYesModern sıralanabilir tanımlayıcılar
Nil UUIDSıfır UUIDTüm sıfırlarN/AÖzel değer, başlatılmamış işaretleyici

UUID'lerin Avantajları

  • Koordinasyon Gerektirmez: Merkezi koordinasyon olmadan ID oluşturun
  • Küresel Benzersizlik: Son derece düşük çakışma olasılığı
  • Sabit Uzunluk: Tutarlı 36 karakterlik dize gösterimi
  • Cross-Platform: Neredeyse tüm programlama dillerinde desteklenir
  • Versatile: Farklı kullanım durumları için farklı sürümler

Standart Olmayan UUID Alternatifleri

ID TürüDescriptionAdvantagesDisadvantages
GUIDMicrosoft'un UUID uygulamasıUUID ile fonksiyonel olarak eşdeğerEski sistemlerde bazı uygulama farklılıkları
ULIDEvrensel Benzersiz Sözlük Sıralı TanımlayıcıSözlük sıralı, zaman damgası önce, büyük/küçük harf duyarsızDaha yeni, daha az yaygın benimsenme
Snowflake IDTwitter'ın dağıtık ID sistemiZaman sıralı, kompakt (64-bit)Merkezi koordinasyon gerektirir
CUID/CUID2Çakışmaya dayanıklı ID'lerKısa, istemci tarafı oluşturma için uygunResmi standart değil
Nano IDKüçük, güvenli, URL dostu benzersiz dize ID oluşturucuUUID'den daha küçük, yapılandırılabilir alfabeStandartlaştırılmamış
Kısa UUIDStandart UUID'lerin daha kısa kodlamasıDaha kompakt gösterimStandart UUID'ye dönüştürme gerektirir
Nil UUIDTüm bitleri sıfır olan UUIDÖzel anlamsal anlamBenzersiz değil (özel değer olarak kullanılır)
Minecraft UUIDTireli veya tiresiz UUID'lerStandart UUID'lerle uyumluSadece biçimlendirme farkları

Pratik Uygulamalar

  • Veritabanı Birincil Anahtarları: Özellikle dağıtık veya çoğaltılmış veritabanlarında
  • Dağıtık Sistemler: Birden çok sistemde varlıkları tanımlama
  • Web Uygulamaları: Oturum tanımlayıcıları, anonim kullanıcı takibi
  • İçerik Yönetimi: Belge ve medya tanımlayıcıları
  • APIs: İzleme ve hata ayıklama için istek ve işlem tanımlayıcıları
  • Nesnelerin İnterneti: Merkezi kayıt olmadan cihaz tanımlama
  • Veri Senkronizasyonu: Birden çok veri deposundaki kayıtları tanımlama
  • Yazılım Lisanslama: Benzersiz ürün veya lisans anahtarları

Sıkça Sorulan Sorular

Verileriniz sunucunuza gönderiliyor mu?

Hayır. Tüm UUID oluşturma ve doğrulama işlemleri tarayıcınızda JavaScript kullanılarak yerel olarak yapılır. Tanımlayıcılarınız ve verileriniz cihazınızdan hiç ayrılmaz.

Hangi UUID sürümünü kullanmalıyım?

Genel kullanım için UUID v4 (rastgele), zaman damgası tabanlı için v1 (MAC adresi ile), modern zaman damgası tabanlı sistemler için v6/v7, isimlerden deterministik ID'ler için v3/v5 ve sıralanabilir alternatifler için ULID kullanın.

UUID'ler gerçekten benzersiz mi?

Evet. Doğru oluşturulduğunda, UUID'lerin çakışma olasılığı o kadar düşüktür ki pratik amaçlar için benzersiz kabul edilirler. Rastgele UUID'ler (v4) 2^122 olası değere sahiptir.

UUID ile ULID arasındaki fark nedir?

ULID'ler 26 karakter uzunluğundadır (UUID'ler için 36'ya karşı), oluşturulma zamanına göre sözlük sıralıdır, URL güvenlidir ve büyük/küçük harf duyarsızdır, aynı benzersizlik garantilerini korur.

Bunları veritabanı birincil anahtarları olarak kullanabilir miyim?

Evet. UUID v4 dağıtık veritabanları için mükemmeldir, v6/v7 ise veritabanı indeksleme performansını artıran zaman damgası sıralaması sağlar. ULID benzer avantajları daha kısa uzunlukla sunar.

Resources