UUID

UUID (англ. Universally Unique Identifier) — стандарт ідентифікації, який використовується при створенні програмного забезпечення, затверджений Open Software Foundation (OSF) як частина Розподіленого комп'ютерного середовища (DCE). Основне призначення UUID — дозволити розподіленим системам унікально ідентифікувати інформацію без центру координації. Таким чином, кожен може створити UUID і використовувати його для ідентифікації чого-небудь із достатнім рівнем впевненості, що даний ідентифікатор не буде ненавмисно використано для чогось іншого. Тому інформацію, відмічену за допомогою UUID, можна пізніше додати до загальної бази даних без необхідності вирішення конфлікту імен. Одним із прикладів застосування даного стандарту є Globally Unique Identifier (GUID) фірми «Microsoft». Також широко використовується в Лінуксі (файлова система ext2/ext3, шифрування розділів LUKS, GNOME, KDE) та Mac OS X — усі вони використовуть реалізацію, отриману з бібліотеки uuid, що міститься в пакеті e2fsprogs.

UUID — це 16-байтний (128-бітний) номер. У шістнадцятковій системі числення UUID має вигляд рядка цифр, розділених дефісами на п'ять груп за схемою 8-4-4-4-12 — разом 36 символів (32 цифри і 4 дефіси). Наприклад:

550e8400-e29b-41d4-a716-446655440000

Загальна кількість унікальних ключів UUID становить 2128 = 25616 або близько 3,4 × 1038. Це означає, що генеруючи 1 трильйон ключів кожної наносекунди, перебрати всі можливі значення вдасться лише за 10 мільярдів років.

UUID задокументовано як частину ISO/IEC 11578:1996 «Information technology Open Systems Interconnection Remote Procedure Call (RPC)» і пізніше в ITU-T Rec. X.667[1] | ISO/IEC 9834-8:2005. Міжнародне співтовариство IETF опублікувало стандарт RFC 4122, який технічно є ідентичним ITU-T Rec. X.667 | ISO/IEC 9834-8.

Іноді UUID умисно застосовують повторно, для ідентифікації одних і тих же речей у різних контекстах. Наприклад, в Microsoft Component Object Model кожен компонент повинен підтримувати стандартний інтерфейс «IUnknown». Для цього створено окремий UUID, який репрезентує інтерфейс «IUnknown». В усіх випадках, коли використовується «IUnknown», — як для реалізації підтримки цього інтерфейсу самим компонентом, так і при доступі процесів до «IUnknown» у компоненті — завжди відбувається посилання за одним і тим же ідентифікатором: 00000000-0000-0000-C000-000000000046.

Див. також

Примітки

  1. ITU-T Rec. X.667 (англ.)

Посилання

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.