Інструменти розробника · UUID генератор
Редагування 1 UUIDs Може Leak MAC Адреса та час створення
· Чому це питання
Опубліковано ToolAcre · Редакція журналу
Увійти криптографія веб-сайт

На основі часу UUID вбудовується 60-розрядний час і час 48- ідентифікатор вузла, який часто є справжньою адресою карти. Ця публікація показує, що зовнішній вигляд може прочитати з одного і чому випадкове покоління не дозволяє.
Визначальник, який іменує ваш ноутбук — чому ID у експортному документі може бути більш ніж ID
Версія 1 UUID з таймера MAC адреса та значення послідовності годинника. Мистецтво 60-розрахунковий часовий апарат являє собою кількість 100-наносекундні інтервали з 15 Жовтень 1582дата Грегорської календарної реформи. Мистецтво 48-розміщене поле вузла традиційно містить IEEE 802 MAC адреса мережевого інтерфейсу, який генерував UUID. Коли ви експортуєте документ, запустіть інструмент або збережіть файл, який поповнює версію 1 UUID, будь-який, хто пізніше декодує UUID може прочитати, коли він був створений і, якщо поле вершини є реальним MAC адреса, яка створена її машиною. Ця інформація витікає мовчно з того, що з'являється, що витікає непрозорий ідентифікатор.
Анатомія в1 UUID — поля часової ланки, послідовність годинника та поле вершини, і де кожен сидить в поле 36 голоси
Витік інформації є тонким, але непрямим для конфіденційності та інтрибутації. Якщо ви співпрацюєте з співавтором на документі та картковій карті MAC адреса знаходиться в вбудованому v1 UUIDs, спостерігач дізнається обладнання в установі або місці. Якщо ви експортуєте документ в певному обсязі, то часовий запас в кожному v1 UUID пов'язує, коли робота відбувалася. Автор намагається підтримувати псевдонімність, може бути деанонімізований шляхом кореляції UUID часові темпи з відомими датами публікації або документоотворними подіями. Визначальники з’являються без документів, оскільки вони відформатовані як опаку 36-заголовки, але вони не опалюють на всіх, хто знає формат v1 і піклується про їх декодування.
Що таке спостерігач дізнається — коли було створено запис і, якщо вершина є апаратною адресою, яка машина або постачальник, створену ним
Анатомія в1 UUID чіткі, які можна витягувати, оскільки структура є детерміналістичною та публічно документованою. RFC 9562 визначає макет: 32 bits для time_low, 16 bits для time_mid, 4 bits для версії, встановленого до 1, 12 bits для time_high, 2 bits для варіанту, 14 bits для clock_seq і 48 bits для вузла. Поле часу 60 bits загальний, який при поєднанні і інтерпретації як 100-наносекундні інтервали з 1582 вносити точний творіння миттєво в межах 100 наносекунди. Мистецтво 48-розташувати поле вузла зазвичай тримається MAC адреса як 48-місце ціле. Декодування – детерміністизація: читання байтів, маскування та переведення полів та інтерпретація значень. Ні біржографії бере участь UUID структура робить кодування повністю прозорим і реверсивним.
Історія з обережністю — як ідентифікатори, які вводять в документи, використовуються для слідування авторства, описаних без спекуляції
RFC 9562 визнає історію конфіденційності та рекомендує проти v1 для нових додатків, оскільки витрати, що виважають переваги. Специфікація включає в себе v4 випадкові та v7 часові альтернативи з розглядуми конфіденційності, що задокументовані. верстка 1 зберігає за собою зворотну сумісність з розгортаннями систем, але новий код не повинен генерувати v1 UIDs без ретельного огляду безпеки і чіткого обґрунтування для впливу. У 1980-ті роки, коли витоки конфіденційності не були первинними занепокоєннями та відстеженням було прийнятною функцією для ідентифікації розподіленої системи.
Управлений приклад — декодування зразка v1 UUID вручну в часові поля та вузли
Термін дії є важливим для розуміння впливу, оскільки v1 UUID у документі, створеному у документі 1998 включає кодування часової мітки 1998-час, який корисний для судових рішень, але це сама проблема. Якщо у вас є історичні документи з v1 UUIDs і ви пізніше поділяєте їх, часові заставки. Не можна ретроактивно видалити історичний факт, що UUID ви можете припинити створення нових v1 UUIDs. Деякі програми намагалися пом'якшити MAC витік адреси, замінюючи реальний MAC з випадковим псевдонімом, але часовий апарат повністю читається і декодується.
Що v4 і v7 зміна — випадкові UUIDs несуть дані машини; v7 все ще розкриває час створення, який може або не може бути прийнятним
У роботі прикладі розглянуто декодування на практиці RFC 9562 приклад векторів. Візьміть v1 UUID як f81d4fae-7dec-11d0-a765-00a0c91e6bf6 від специфікації. байтів в порядку f81d4fae 7dec 11d0 a765 00a0c91e6bf6. В третьому групі є поле версії: 11d0 в шістках 0001 0001 1101 0000 в бінарних. Перший 4 bits , 0001, яка версія 1. Список часу розщеплюється по першій, другій та частини третьої групи: time_low f81d4fae в десятковий 4170404526, time_mid 7dec в десятковий 32236, time_high 1d0 від третьої групи після видалення версії нікель в десятковому режимі 464. Поєднання цих в 60-розраховано значення грошових коштів 100-наносекундні інтервали з 1582.
Що це не криється — випадаючий вузол варіант деяких v1 пропозицій, які пом'якшують, але не видаляє часовий час
Поле вершини в четвертому і п'ятому групах є a765 00a0c91e6bf6, який кодує інформацію про машин, якщо біт 0 вказує на автентичність. Якщо найменший значний біт першого окету поля вершини нульовий, то це вказує на реальний IEEE адреса; якщо встановити один, це вказує на значення псевдоміну, створене для конфіденційності. У цьому прикладі a765 в шістці 10100111 01100101 в бінарних; найменший значний біт 1, так що це випадковий псевдонед, не реальний MAC. Однак, старі реалізація іноді зберігають реальну MAC адреси безпосередньо, і якщо вони зробили 48-bit node польових декодатів до ідентифікатора мережевої картки. IEEE зберігає реєстр реєстр MAC префікси; знаючи, що мережева картка почалася з певного префікса звужує виробника і потенційно модель комп'ютера в експлуатації.
Поспішайте: дізнайтесь, що ви розголошуєте свої ідентифікаційні дані — ToolAcre генератор виводить кожного ідентифікатора з CSPRNG, так що немає MAC адреса або часовий апарат для витікання
RFC 9562 верстка 4 і за навмисно не вдається цього витоку, використовуючи лише випадкові дані, а не закодовані дані. Версія 4 UUID , 122 bits криптографічно випадкових даних з 4 bits для поля версії та 2 bits для варіантного поля. Читання бітів не розкриває нічого, крім того, що UUID є дійсним; немає часу для видалення, не існує даних машин для вилучення. верстка 7 містить часову заставу для сортування переваг, але цей часовий апарат виходить з Unix epoch знайомий і стандартизований, а не заплутаний 1582- на основі значення та специфікація явно документів, які часові дані присутні в ідентифікаторі. Властивості конфіденційності залежать від версій.