UUID Üretici ve Çözücü — v1, v4, v5, v7 Toplu Mod
Ücretsiz UUID üretici — v1, v4, v5 ve v7 UUID'leri anında oluşturun. UUID'yi çözün ve doğrulayın. 50'ye kadar toplu üretim. Tamamen tarayıcıda.
UUID Nedir?
UUID (Universally Unique Identifier), RFC 9562 (IETF, Mayıs 2024) ile standartlaştırılmış, merkezi koordinasyon olmadan dağıtık sistemler arasında çakışmasız kimlikler üretmek üzere tasarlanmış 128 bitlik küresel olarak benzersiz bir tanımlayıcıdır. UUID, modern yazılımda en yaygın kullanılan tanımlayıcı biçimidir — veritabanı birincil anahtarlarında, API istek izlemede, oturum yönetiminde ve mikroservis mimarilerinde kullanılır.
UUID'ler, kanonik 8-4-4-4-12 biçiminde 32 onaltılık basamak olarak yazılır; örneğin `550e8400-e29b-41d4-a716-446655440000`. Spesifikasyon IETF tarafından yürütülmektedir; RFC 9562, daha önceki RFC 4122'nin (2005) yerini alır ve UUID 6, 7 ve 8 sürümlerini resmi olarak tanıtır.
Yaygın olarak kullanılan beş UUID sürümü vardır. Sürüm 1 (v1), geçerli zaman damgasını ve üreten makinenin MAC adresini kodlar; böylece her UUID hem zamanda hem mekânda benzersizdir. Sürüm 3 (v3) ve sürüm 5 (v5) deterministiktir — bir ad alanı ve adı sırasıyla MD5 veya SHA-1 ile özetlerler ve aynı girdiler için her zaman aynı UUID'yi üretirler. Sürüm 4 (v4) en yaygın olanıdır: 122 biti kriptografik olarak güvenli rastgele verilerle doldurur ve 5,3 × 10³⁶'dan fazla olası değer sağlar (RFC 9562, Bölüm 5.4). Sürüm 7 (v7) en yeni standarttır: RFC 9562 Bölüm 5.7'de belirtildiği gibi, "UUID sürüm 7, yaygın şekilde uygulanan ve iyi bilinen Unix Epoch zaman damgası kaynağından türetilen zaman sıralı bir değer alanına sahiptir" — 48 bitlik milisaniye zaman damgasını rastgele verilerle birleştirerek hem benzersiz hem de oluşturulma zamanına göre doğal olarak sıralanabilen UUID'ler üretir.
UUID'ler, dağıtık sistemlerde, veritabanlarında, API'lerde ve merkezi koordinasyon olmadan benzersiz tanımlayıcılara ihtiyaç duyulan her yerde vazgeçilmezdir. Bağımsız sistemler arasında kimlik çakışması riskini ortadan kaldırırlar; bu da onları mikroservisler, event sourcing ve çok kiracılı mimariler için ideal kılar.
Bu araç, tüm UUID sürümlerini Web Crypto API kullanarak tamamen tarayıcınızda üretir — hiçbir UUID sunucuya iletilmez. Sunucu tabanlı üreticilerin aksine yükleme, log tutma veya veri saklama yoktur. Üretim veritabanı anahtarları, API tanımlayıcıları ve güvenlik açısından hassas uygulamalar için güvenle kullanılabilir. Mevcut UUID'lerin sürümünü, varyantını ve gömülü verisini incelemek için onları çözebilir ve doğrulayabilirsiniz.
UUID'ler, diğer geliştirici ilkelleriyle yakından bağlantılıdır. UUID v1 ve v7, doğrudan Unix zaman damgalarını gömer; UUID v3 ve v5, temel olarak MD5 ve SHA-1 özetlerini kullanır; UUID karakter dizileri ise sıklıkla bir JSON biçimlendirici ile incelenmesi en uygun olan JSON payload'larının içinde taşınır. UUID biçimi, sürümleri ve gerçek dünya kullanım senaryolarına kapsamlı bir giriş için eksiksiz UUID rehberimizi okuyun. Bir veritabanı birincil anahtarı için UUID v4, v7, ULID ve Snowflake kimlikleri arasında seçim yapıyorsanız kimlik seçim karşılaştırmamıza bakın.
// Generate a UUID v4 using the Web Crypto API
const uuid = crypto.randomUUID();
console.log(uuid);
// → '550e8400-e29b-41d4-a716-446655440000'
// Manual v4 generation with crypto.getRandomValues()
function generateUUIDv4() {
const bytes = new Uint8Array(16);
crypto.getRandomValues(bytes);
bytes[6] = (bytes[6] & 0x0f) | 0x40; // version 4
bytes[8] = (bytes[8] & 0x3f) | 0x80; // variant 10
const hex = Array.from(bytes, b => b.toString(16).padStart(2, '0')).join('');
return `${hex.slice(0,8)}-${hex.slice(8,12)}-${hex.slice(12,16)}-${hex.slice(16,20)}-${hex.slice(20)}`;
} Temel Özellikler
UUID v7 Desteği (RFC 9562)
Zaman sıralı, veritabanı dostu tanımlayıcılar için gömülü Unix zaman damgaları içeren en yeni UUID v7 biçimini üretir. RFC 9562 standardını destekleyen az sayıdaki çevrimiçi araçtan biridir.
UUID Çözücü ve Doğrulayıcı
Herhangi bir UUID'yi ayrıştırarak sürümünü, varyantını, zaman damgasını (v1/v7), saat dizisini ve düğüm bilgisini ortaya çıkarır. Bir karakter dizisinin doğru biçimlendirilmiş bir UUID olup olmadığını anında doğrular.
Çoklu Sürüm Desteği
UUID'leri beş sürümde üretir — v1 (zaman tabanlı), v3 (MD5), v4 (rastgele), v5 (SHA-1) ve v7 (zaman sıralı rastgele) — tümü RFC 9562 ile uyumludur.
Toplu Üretim
Tek seferde 50'ye kadar benzersiz UUID üretir. Her UUID, tam kriptografik rastgelelik veya doğru sürüme özgü kodlama ile bağımsız olarak oluşturulur.
Çoklu Çıktı Biçimleri
UUID'leri standart küçük harf, BÜYÜK HARF, tiresiz veya küme parantezli {GUID} biçiminde üretir — sisteminizin veya framework'ünüzün gerektirdiği biçimle birebir eşleşir.
Kriptografik Güvenlik
Gerçek rastgele sayı üretimi için Web Crypto API'yi (crypto.getRandomValues()) kullanır — modern tarayıcıların ve güvenlik araçlarının kullandığı standardın aynısıdır.
%100 Tarayıcı Tabanlı
Tüm UUID'ler tarayıcınızda yerel olarak üretilir. Hiçbir şey sunucuya gönderilmez — ürettiğiniz tanımlayıcılar tamamen gizli kalır.
UUID Sürüm Karşılaştırması
Kullanım durumunuz için doğru UUID sürümünü seçin.
| Sürüm | Temel | Sıralanabilir | Gizlilik | En İyi Kullanım |
|---|---|---|---|---|
| v1 | Zaman damgası + MAC adresi | Oluşturulma zamanına göre | MAC ve zamanı açığa çıkarır | Zaman tabanlı sıralama gerektiren eski sistemler |
| v4 | 122 bit kriptografik rastgele | Hayır | Tamamen anonim | Genel amaçlı — en yaygın kullanılan sürüm |
| v5 | Ad alanı + adın SHA-1 özeti | Hayır | Deterministik, tekrarlanabilir | Bilinen girdilerden tutarlı kimlikler (URL'ler, DNS) |
| v7 | Unix zaman damgası (ms) + rastgele | Oluşturulma zamanına göre | Yalnızca oluşturulma zamanını açığa çıkarır | Modern veritabanları — sıralanabilir, indeks dostu (RFC 9562) |
UUID ve Diğer Kimlik Biçimleri
ULID
26 karakter, Crockford Base32UUID v7 gibi sözlüksel olarak sıralanabilir ancak Crockford Base32 kodlaması kullanır (36'ya karşı 26 karakter). UUID v7, artık daha geniş araç desteğine sahip IETF tarafından standartlaştırılmış alternatiftir.
nanoid
21 karakter, URL güvenli alfabeDaha kısa ve URL güvenlidir; kompaktlık önemli olduğunda idealdir. Resmi bir standart değildir — UUID'nin sahip olduğu yerel veritabanı türleri ve platformlar arası kütüphanelerden yoksundur.
CUID2
Değişken uzunluk, alfanümerikÇakışma direnciyle yatay ölçeklendirme için tasarlanmıştır. UUID kadar yaygın benimsenmemiştir; yerel veritabanı desteği yoktur. Standartlaştırılmış zaman sıralı kimlikler için UUID v7'yi değerlendirin.
UUID Sürüm Örnekleri
UUID v4 (Rastgele)
550e8400-e29b-41d4-a716-446655440000
En yaygın kullanılan sürümdür. 122 bit kriptografik rastgelelik, 5,3 x 10^36'dan fazla olası değer sağlar — koordinasyon olmadan benzersizliğin gerektiği hemen hemen her kullanım durumu için uygundur.
UUID v7 (Zaman sıralı)
01906b5e-4a3e-7234-8f56-b8c12d4e5678
48 bitlik milisaniye Unix zaman damgasını rastgele verilerle birleştirir. UUID'ler kronolojik olarak sıralanır; bu da indeks yerelliğinin önemli olduğu veritabanı birincil anahtarları için onları ideal kılar. Yeni projelerde v1 ve v4 yerine önerilir.
UUID v1 (Zaman tabanlı)
6ba7b810-9dad-11d1-80b4-00c04fd430c8
60 bitlik bir zaman damgasını ve üreten makinenin 48 bitlik MAC adresini kodlar. Zamanda ve mekânda benzersizliği garanti eder ancak donanım kimlik bilgisini sızdırabilir. RFC 9562'de v6/v7 tarafından geride bırakılmıştır.
UUID v5 (SHA-1 Ad tabanlı)
886313e1-3b8a-5372-9b90-0c9aee199e5d
DNS ad alanının 'python.org' adıyla SHA-1 kullanılarak özetlenmesiyle üretilen deterministik UUID'dir. Aynı ad alanı ve ad her zaman aynı UUID'yi üretir; bu da v5'i tekrarlanabilir tanımlayıcılar için ideal kılar.
Nasıl Kullanılır
- 1
UUID Sürümünü Seçin
v1 (zaman tabanlı), v3 (MD5 ad tabanlı), v4 (rastgele), v5 (SHA-1 ad tabanlı) veya v7 (zaman sıralı rastgele) arasından seçim yapın. Her sürümün farklı bir amacı vardır — v4, genel kullanım için en yaygın olanıdır.
- 2
Seçenekleri Yapılandırın
v3 ve v5 için bir ad alanı (DNS, URL, OID, X.500 veya özel) seçin ve özetlenecek bir ad girin. Miktarı 1 ile 50 arasında ayarlayın ve bir çıktı biçimi seçin: standart küçük harf, BÜYÜK HARF, tiresiz veya küme parantezli {GUID}.
- 3
UUID'leri Üretin
Üret düğmesine tıklayın. Her UUID, kriptografik güvenlik için Web Crypto API (crypto.getRandomValues()) kullanılarak oluşturulur. Zaman damgaları (v1/v7) ve özetler (v3/v5) gibi sürüme özgü alanlar doğru şekilde kodlanır.
- 4
Kopyalayın ve Kullanın
Herhangi bir UUID'nin yanındaki Kopyala düğmesine tıklayarak panonuza kopyalayın veya tüm üretilen UUID'leri tek seferde almak için Tümünü Kopyala'yı kullanın. Mevcut bir UUID'nin sürümünü, varyantını, zaman damgasını ve gömülü diğer bilgilerini analiz etmek için Çöz sekmesine geçin.
Yaygın Kullanım Durumları
- Veritabanı Birincil Anahtarları
- Veritabanı düğümleri arasında koordinasyon olmadan benzersiz birincil anahtar olarak UUID v4 veya v7 kullanın. UUID v7, zaman sıralı yapısı B-tree indeks performansını iyileştirdiği için özellikle uygundur.
- Dağıtık Sistemler
- Mikroservisler, mesaj kuyrukları ve event sourcing sistemleri arasında bağımsız olarak benzersiz tanımlayıcılar üretin. UUID'ler merkezi bir kimlik üretim hizmetine olan ihtiyacı ortadan kaldırır.
- API Geliştirme
- RESTful ve GraphQL API'leri için benzersiz istek kimlikleri, korelasyon kimlikleri ve idempotency anahtarları oluşturun. UUID'ler, dağıtık servis sınırları arasında istekleri izlemeyi kolaylaştırır.
- Oturum ve Token Yönetimi
- Kimlik doğrulama akışları için benzersiz oturum tanımlayıcıları ve geçici tokenler üretin. UUID'ler, geniş kullanıcı tabanlarında oturum çakışmalarını önlemek için yeterli benzersizliği sağlar.
- Test ve Geliştirme
- Otomatik testler için test verileri, sahte tanımlayıcılar ve benzersiz fixture kimlikleri hızla üretin. Toplu üretim, geliştirme veritabanlarını ve test paketlerini doldurmayı kolaylaştırır.
Teknik Ayrıntılar
- UUID Yapısı
- UUID, 8-4-4-4-12 biçiminde 32 onaltılık karakter olarak temsil edilen 128 bittir (16 bayt). 48-51. bitler (13. onaltılık basamak) sürüm numarasını kodlar. 64-65. bitler, UUID düzenini tanımlayan varyant alanını kodlar. Kalan bitler sürüme özgü payload'ı taşır: zaman damgası, rastgele veri veya özet çıktısı.
- Sürüm Bitleri
- 48-51. bitler (7. baytın yüksek nibble'ı) UUID sürümünü kodlar: 0001 = v1 (zaman tabanlı), 0011 = v3 (MD5 ad tabanlı), 0100 = v4 (rastgele), 0101 = v5 (SHA-1 ad tabanlı), 0110 = v6 (yeniden sıralanmış zaman), 0111 = v7 (Unix epoch zamanı). Bu dört bit üretim sırasında her zaman açıkça ayarlanır.
- Varyant Alanı
- 64-65. bitler (9. baytın en anlamlı iki biti) varyantı tanımlar. 10x deseni RFC 4122/9562 UUID'lerini gösterir (büyük çoğunluk). 110 deseni karışık endian bayt sıralı Microsoft GUID'lerini gösterir. 0xx deseni NCS geriye dönük uyumlu UUID'leri gösterir (eski). 111 deseni gelecekteki kullanım için ayrılmıştır.
- RFC 9562 Standardı
- Mayıs 2024'te yayımlanan RFC 9562, kesin UUID spesifikasyonu olarak RFC 4122'nin yerini alır. UUID 6, 7 ve 8 sürümlerini resmi olarak tanıtır. Sürüm 6, sıralanabilirlik için v1 alanlarını yeniden düzenler. Sürüm 7, 48 bitlik milisaniye Unix zaman damgasını rastgele verilerle birlikte kullanır ve yeni zaman tabanlı UUID'ler için önerilen sürümdür. Sürüm 8, özel, uygulamaya özgü UUID'ler için bir biçim sağlar. RFC 9562 ayrıca v1'i v6/v7 lehine resmi olarak kullanımdan kaldırır.
En İyi Uygulamalar
- Doğru Sürümü Seçin
- Sıralama veya determinizmin gerekmediği genel amaçlı benzersiz tanımlayıcılar için v4 kullanın. Veritabanı birincil anahtarları için v7 kullanın — zaman sıralı yapısı önemli ölçüde daha iyi indeks performansı sağlar. Adlardan türetilen deterministik kimliklere ihtiyacınız olduğunda v5 kullanın (daha güçlü özetleme için v3 yerine v5'i tercih edin).
- Veritabanı Birincil Anahtarları için UUID v7 Kullanın
- UUID v7'nin zaman sıralı yapısı B-tree eklemelerini ardışık tutar; rastgele v4 UUID'lere kıyasla indeks parçalanmasını yaklaşık %90 azaltır. Bu, daha hızlı yazmalar, daha küçük indeksler ve daha iyi önbellek kullanımı anlamına gelir. Çoğu modern veritabanı (PostgreSQL 17+, MySQL 8.0+) bu desen için optimize edilmiş yerel UUID desteğine sahiptir.
- UUID'leri Asla Güvenlik Tokenı Olarak Kullanmayın
- UUID'ler benzersizlik için tasarlanmıştır, gizlilik için değil. UUID v1, üretim zaman damgasını ve MAC adresini sızdırır. UUID v4, öngörülebilir bir yapıya sahip yalnızca 122 bit entropiye sahiptir. Güvenlik tokenleri, API anahtarları veya oturum gizli anahtarları için UUID yapı yükü olmadan 128 veya 256 bit saf rastgele veri üretmek üzere özel bir CSPRNG kullanın.
- Ayrıştırmadan Önce Doğrulayın
- UUID biçimini ayrıştırmadan veya saklamadan önce her zaman düzenli ifadeyle doğrulayın. Sistem sınırlarında — API uç noktalarında, form gönderimlerinde ve veritabanı girdilerinde — hatalı biçimlendirilmiş girdileri reddedin. Bu, geçersiz tanımlayıcıların sisteminizde yayılmasından kaynaklanan enjeksiyon saldırılarını, veri bozulmasını ve hata ayıklaması zor hataları önler.
Sıkça Sorulan Sorular
UUID nedir?
UUID sürümleri arasındaki farklar nelerdir?
UUID v4'ü mü v7'yi mi kullanmalıyım?
UUID çakışma olasılığı nedir?
UUID ile GUID arasındaki fark nedir?
UUID v4 kriptografik olarak güvenli mi?
Bir UUID biçimi nasıl doğrulanır?
UUID'ler iyi veritabanı birincil anahtarları mı? (Performans, güvenlik ve en iyi sürüm)
Ad alanı UUID'si (v3/v5) nedir?
UUID nil değeri nedir?
UUID v7 nedir ve neden kullanmalıyım?
Bir UUID nasıl çözülür?
UUID, ULID ve nanoid — hangisini kullanmalıyım?
Bir mikroservis geliştiriyorum ve PostgreSQL birincil anahtarlarım için UUID v4 ile v7 arasında karar vermem gerekiyor — hangisini seçmeliyim ve neden?
Ekibim, veritabanı kimlikleri olarak UUID'leri mi yoksa otomatik artan tam sayıları mı kullanacağı konusunda tartışıyor — gerçek dünya ödünleşimleri nelerdir?
İlgili Araçlar
Tüm araçları görüntüleyin →JWT Çözücü
Güvenlik Araçları
Ücretsiz JWT çözücümüzle JWT token'larını online çözün. header, payload, signature, son kullanma, algoritma ve claim'leri anında inceleyin. %100 tarayıcıda çalışır — token'ınız cihazınızdan ayrılmaz. Kayıt yok, izleme yok.
MD5 Özet Üretici ve Dosya Sağlama Aracı
Güvenlik Araçları
MD5, SHA-256, SHA-1 ve SHA-512 özetlerini online ücretsiz üretin. Tarayıcınızda metin veya dosya özeti alın, sağlama değerlerini doğrulayın ve sonuçları kopyalayın. Kayıt gerekmez.
Rastgele Şifre Üretici — Özelleştirilebilir ve Güvenli
Güvenlik Araçları
Anında güçlü rastgele şifreler üretin — ücretsiz, %100 tarayıcınızda. Uzunluk ve karakterleri özelleştirin, entropi analiziyle 50'ye kadar toplu üretim.
Sayı Tabanı Dönüştürücü — Binary, Hex, Decimal ve Octal
Dönüştürme Araçları
Binary, hex, decimal, octal ve herhangi bir taban (2-36) arasında anında dönüştürün. Ücretsiz ve gizli — tüm işlem tarayıcınızda yapılır.
Base64 Çözücü ve Kodlayıcı
Kodlama ve Biçimlendirme
Base64'ü ücretsiz çevrimiçi kodlayın ve çözün. Tam UTF-8 ve emoji desteğiyle gerçek zamanlı dönüştürme. %100 tarayıcıda — kayıt gerekmez.
Resimleri Çevrimiçi Sıkıştırın — JPEG, PNG ve WebP
Dönüştürme Araçları
JPEG, PNG ve WebP'yi %80'e kadar küçültün — tarayıcınızda, yükleme yok. 20 resim toplu, kalite ayarı, öncesi/sonrası karşılaştırma. Ücretsiz ve gizli.