Neden UUID / GUID'ler oldukları biçimde?


14

Genel Benzersiz Tanımlayıcılar (GUID), bir güvenlik nedeni olduğunu düşündüğüm belirli bir biçime sahip gruplanmış bir dizedir.

Bir GUID genellikle metinde beş gruba ayrılan onaltılık basamak dizisi olarak yazılır, örneğin:

3F2504E0-4F89-11D3-9A0C-0305E82C3301

Neden GUID / UUID dizeleri X uzunluğunun onaltılık kullanılarak kodlanmış rastgele baytlar değil?

Bu metin gösterimi, tire işaretleriyle ayrılmış aşağıdaki alanları içerir:

| Hex digits | Description
|-------------------------
| 8            | Data1
| 4            | Data2
| 4            | Data3
| 4            | Initial two bytes from Data4
| 12           | Remaining six bytes from Data4

UUID standartlarının birkaç versiyonu da vardır .

Sürüm 4 UUID'ler genellikle dahili olarak 128 bitlik ham bir dizi olarak saklanır ve genellikle aşağıdaki gibi bir biçimde görüntülenir:

Uuid: xxxxxxxxxxxx-4xxx-yxxx-xxxxxxxxxxxx


4
Hayır, muhtemelen güvenlik nedeniyle değil, bit dizisi tire ile veya tire olmadan aynı entropiye sahiptir. GUID'lerin "burada bir dizi onaltılık karakter, md5 .. ya da belki sha1 .. hayır, bekle, olabilir ..." gitmek yerine bir bakışta tanınabileceğini düşünürdüm. Ayrıca, GUID'ler genellikle sadece rastgele bayt değildir.



Yanıtlar:



2

Kısa çizgilerle metin gösterimi Guid / UUID'nin dört alanını beş gruba ayırmaktadır (son alan ilk iki bayttan sonra kendiliğinden ayrılır): Guid Text Encoding

Temsilin güvenlikle ilgisi yoktur, çünkü onu hesaplamanın farklı yöntemleri vardır ve mutlaka güvenli olmayan benzersiz bir tanımlayıcı olması amaçlanmıştır.

Alanların bölünmesinin en olası nedeni (standart bundan bahsetmese de) bileşen parçalarının okunabilirliği / ayrılması içindir.


2
Bu bize formatın ne olduğunu, zaten soruda olan bilgiyi söyler. OP'nin neden istediğini açıklamıyor .
Keith Thompson

1
Daha iyi okunabilirlik ve tanımlama için onları alanlara ayırmaktır. Belki de sonuncusu uzunluğu nedeniyle daha da bölünmüştü.
Anahtar teslim

1
mantıklı. Aynı nedenle telefon numaraları, kredi kartı numaraları ve diğer birçok uzun numaralar yazdırıldığında veya yazıldığında gruplara ayrılır.
jwenting
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.