UUID oluşturucu

Web sitesine ekleyin Meta bilgi

Diğer araçlar

UUID/GUID oluştur

UUID/GUID oluştur

Küresel Benzersiz Tanımlayıcı (GUID) olarak da bilinen Evrensel Benzersiz Tanımlayıcı (UUID), bilgisayar sistemlerinde yaygın olarak kullanılmaktadır.

Sistem tarafından değişkenlere ve sabitlere dayalı olarak üretilen 128 bitlik bir koddur: geçerli saat, MAC adresi, SHA-1 hash, MD5 ad alanı. Kısa çizgilerle ayrılmış 32 karakterlik alfasayısal bir kod olarak görüntülenen bir UUID oluşturmanın nihai sonucu keyfi görünebilir, ancak aslında karmaşık hesaplamaların sonucudur. Bu nedenle, bir bilgisayar bir kodu "icat etmez", bunun yerine belirli bir zamanda alakalı olan belirli teknik niceliklerden oluşturur.

Aynı UUID'nin farklı zamanlarda iki farklı bilgisayarda oluşturulma olasılığı sıfıra eğilimlidir, bu da koordinasyon merkezine başvurmadan nokta/yerel veri tanımlaması için elde edilen kodların kullanılmasını mümkün kılar. Bugün UUID/GUID, hem çevrimiçi hem de çevrimdışı ağlarda her yerde bulunur ve yalnızca küresel İnternet alanında değil, bağımsız bilgisayar sistemlerinde de etkili bir şekilde çalışır.

UUID Geçmişi

128 bitlik UUID kodları ilk olarak 1980'lerde Amerikan şirketi Apollo Computer tarafından kullanıldı. Etki Alanında/İşletim Sisteminde kullanılan daha basit 64 bit kodları temel aldılar ve Open Software Foundation bilgi işlem ortamında yaygın kullanım buldular.

İlk Windows platformlarının gelişiyle birlikte, küresel olarak benzersiz tanımlayıcı genelleştirildi ve standartlaştırıldı. Microsoft, Apollo Computer'ın DCE tasarımını benimsedi ve URN ad alanını RFC 4122'de kaydettirdi. 2005'te RFC 4122, IETF tarafından yeni bir standart olarak önerildi ve UUID, ITU içinde standartlaştırıldı.

2002'nin başlarında, UUID'ler yerel veritabanlarında birincil anahtarlar olarak kullanılırken sistem performansı sorunları belirlendi. Bunlar, bilgisayarın sistem saatine dayalı olarak rastgele olmayan bir son ek eklenerek 4. sürümde düzeltildi. Sözde COMB (Combined GUID Time Identifier) ​​yaklaşımı, kod çoğaltma risklerini artırdı, ancak aynı zamanda Microsoft SQL Server ile çalışırken performansı önemli ölçüde iyileştirdi.

BT teknolojilerinin gelişmesiyle birlikte, evrensel benzersiz tanımlayıcı son derece uzmanlaşmış bir teknik araç olmaktan çıktı ve bugün herkes onu kullanabiliyor. Oluşturulan kodların tekrarlanma olasılığı sıfıra eşit değildir, ancak buna eğilimlidir ve herhangi bir dijital bilgi bunlar tarafından tanımlanabilir ve ardından minimum tekrarlama riskiyle tek veri dizilerinde birleştirilebilirler.

UUID Avantajları

Küresel benzersiz kod oluşturucular, merkezi veri mutabakatı/senkronizasyonu gerektirmez ve tüm kullanıcılar tarafından ücretsiz olarak kullanılabilir. UUID'nin başlıca avantajları şunları içerir:

  • Kodların minimum "çarpışma" (tekrar) riski. Yoğun kullanımlarına rağmen tekrarlanma olasılığı sıfıra yakın.
  • UUID'leri birincil (benzersiz) anahtarlar olarak kullanarak farklı veri dizilerini birleştirme yeteneği.
  • Birden çok dağınık sunucuda basitleştirilmiş veri dağıtımı.
  • Çevrimdışı kod oluşturma yeteneği.

xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx biçiminde yazılan benzersiz tanımlama kodları, dağınık sistemlerin tek bir veri merkezinden koordinasyon olmadan bilgileri tanımasına olanak tanır: neredeyse sıfır hata / tekrar olasılığı ile. Bu özelliğin yanı sıra kullanım kolaylığı ve bilgisayar performansı için küçük gereksinimler, UUID'yi çok çeşitli BT sektörlerinde ve otonom bilgi işlem sistemlerinde talep edilir ve vazgeçilmez kılar.

Evrensel olarak benzersiz tanımlayıcı

Evrensel olarak benzersiz tanımlayıcı

UUID, farklı algoritmalar ve değişkenler/sabit değerler kullanarak kodlar üretebilir.

Tanımlayıcının, oluşturulduğunda sistem tarih/saati ve MAC adresleri, DCE güvenlik protokolleri, MD5 hash, SHA-1 hash ve ad alanını kullanan toplam 5 sürümü vardır.

Her durumda, nihai sonuç xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx (onaltılık gösterimde, küçük Latin harfleri ve rakamlardan oluşan ve tirelerle beş bloğa bölünmüş bir sayı: 8-4) biçiminde görüntülenir. -4-4- 12), M versiyonu, N ise UUID varyantını temsil eder.

Bu nedenle, sistem bir seferde 36 karakter kullanır (26 harf ve 10 rakam), bu nedenle, dünya çapında milyonlarca kullanıcı tarafından günlük olarak oluşturulmalarına rağmen, 32 basamaklı kodların tekrarlanma olasılığı sıfıra yakındır.

UUID sürümleri

Sürüm 1

Kod oluşturulurken benzersiz tanımlayıcının ilk sürümü, bilgisayarın MAC adresini ve sayısal değerini saniyede 1 kez değiştiren sistem saatini temel alır. Üretim süreci beş aşamadan oluşur:

  • Alttaki 32 bitlik bilgi UTC etiketinden alınır. 8 onaltılık karaktere dönüştürülürler ve 4 bayt yer kaplarlar.
  • Aynı UTC etiketinden ortalama 16 bit bilgi alınır ve 2 bayt alan 4 onaltılık karaktere dönüştürülür.
  • UTC etiketinin üstteki 12 bitlik bilgisi alınır ve 4 onaltılık karaktere daha dönüştürülür.
  • 1-3 bit daha saat sırasına düşer ve bir dereceye kadar rastgelelik / belirsizlik sunarak çarpışma risklerini azaltır. Sistem zamanı, aynı bilgisayarda aynı anda çalışan iki veya daha fazla tanımlayıcının "geçişmemesi" için koşullu olarak yavaşlatılır veya geri alınır.
  • Kalan 6 bayt, cihazın MAC adresine göre oluşturulan sabit bir değerdir. 12 onaltılık karakterden oluşur ve 48 bit boyutundadır.

UUID'nin ilk sürümünün algoritması ayrılmaz bir şekilde sistem saatine bağlı olduğundan, saat sırasının kullanılması zorunludur. Aksi takdirde, aynı kodları oluşturma riskleri, sistem zamanının şu veya bu değerde "donduğu" saniye boyunca birçok kez artar.

Sürüm 2

İkinci versiyon, birincisinden çok az farklıdır ve pratikte nadiren kullanılır. Bir saat dizisi yerine, diğer bilgisayarlarda tekrarlanmayan veya çok nadiren tekrarlanan kullanıcı verilerine veya diğer benzersiz değerlere bağlı bir sistem tanımlayıcısı kullanır. İkinci sürümde rastgeleliğin etkisi en aza indirilmiştir ve dağıtılmış bilgi işlem ortamının güvenliğini artırmak için kullanılabilir.

Sürüm 3 ve 5

Pek çok ortak noktaları var: Kodlar, yani rastgele olmayan değerler oluşturmak için benzersiz adlar ve adlar (MD5 alanından) kullanıyorlar. Yalnızca sürüm 3 standart karma kullanır, sürüm 5 ise SHA-1 karma kullanır. Bu tür tanımlayıcılar rastgele değişkenlere daha az bağımlıdır.

Sürüm 4

Bu UUID sürümünün oluşturulması %90'dan fazla rastgeledir. Sabit değerler için 6 bit ve rastgele değerler için 122 bit vardır. Algoritmanın uygulaması, 128 bit bilginin önce rastgele üretilmesi ve bunların 6'sının sürüm ve varyant verileriyle değiştirilmesidir.

Dördüncü sürümdeki sözde rasgele sayı üretecinin rolü maksimumdur ve çok basit bir algoritmaya sahipse tekrarlama/çarpışma riskleri önemli ölçüde artar. Buna rağmen, açık ara en yaygın olan ve pratikte sıklıkla kullanılan dördüncü versiyondur.

UUID seçenekleri

Benzersiz UUID, bilgisayar teknolojisi geliştikçe birkaç kez iyileştirildi ve bugün çeşitli versiyonlarda sunuluyor.

Seçenek 0

Eski Apollo Network Computing System 1.5 1988 biçimindeki veritabanlarıyla çalışacak şekilde tasarlanmıştır. Bu seçenek, bunlarla geriye dönük olarak uyumludur ve NCS geçmiş UUID'leriyle çakışmaz.

Seçenek 1 ve 2

Modern veri bloklarını ve dizilerini tanımlamak için kullanılır ve kurallı metin biçiminde değişken bitlerin yazılma sırası dışında birbirlerinden farklı değildirler. Yani seçenek 1, big-endian bayt sırasını kullanır ve seçenek 2, başlık-endian'ı kullanır. İlki ana olandır ve ikincisi, Microsoft Windows'un eski GUID'leriyle çalışmak için ayrılmıştır.

Seçenek 3

Şu anda kullanımda değil. Önceki seçeneklerin olasılıkları tükendiğinde gelecekte kullanılmak üzere ayrılmış bir sürümdür.

Çoğu sistem tanımlayıcıyı big-endian olarak kodlar, ancak istisnalar da vardır. Örneğin, Microsoft COM/OLE kitaplıklarında sıralama, title-endian ve big-endian bloklarından kod üretirken karışık-endian kullanır. Birincisi, UUID'nin ilk üç bileşeni, ikincisi ise son ikisidir.