Идентификатор на версия на UUID
Определяйте версията и варианта на всеки UUID. Поддържа версии 1–8, Nil и Max UUID с подробна информация.
Вход
Изход
Резултат
Няма стойност
Прочети ме
Какво е версия на UUID?
UUID (Universally Unique Identifier) е 128-битов идентификатор, стандартизиран от RFC 4122 и RFC 9562. Всеки UUID съдържа поле за версия, което указва как е бил генериран. Версията е кодирана в 13-тата шестнадесетична цифра (горният полубайт на 7-мия байт) и определя алгоритъма и източниците на данни, използвани за създаване на идентификатора.
В момента са дефинирани осем версии (от v1 до v8), плюс две специални форми: Nil UUID (всички нули) и Max UUID (всички единици). Всяка версия служи за различна цел — някои вграждат времеви маркери за хронологично сортиране, други използват криптографски хешове за детерминирано генериране, а трети разчитат на случайни числа за простота. Познаването на версията ви помага да разберете свойствата, последиците за сигурността и предназначението на даден UUID.
Полето за вариант, кодирано отделно, идентифицира коя спецификация за UUID следва идентификаторът. Повечето съвременни UUID използват варианта RFC 4122/RFC 9562, но по-старите системи могат да произвеждат варианти NCS или Microsoft.
Описание на инструмента
Този инструмент приема произволен UUID като вход и идентифицира неговия номер на версия, наименование на версията, вариант, метод на генериране и подробно описание на начина, по който работи тази версия. Поддържа всички стандартни версии (от v1 до v8), както и Nil и Max UUID. Просто поставете UUID и незабавно вижте пълния му анализ.
Примери
| Входен UUID | Версия | Наименование |
|---|---|---|
550e8400-e29b-41d4-a716-446655440000 |
4 | Случаен (v4) |
6ba7b810-9dad-11d1-80b4-00c04fd430c8 |
1 | Базиран на времеви маркер (v1) |
018f3e88-5c00-7b3a-8512-2d4a3f8e9c01 |
7 | Базиран на Unix Epoch времеви маркер (v7) |
00000000-0000-0000-0000-000000000000 |
Nil | Nil UUID |
ffffffff-ffff-ffff-ffff-ffffffffffff |
Max | Max UUID |
Функции
- Открива всички версии на UUID от v1 до v8, плюс Nil и Max UUID
- Идентифицира варианта (RFC 4122/9562, NCS, Microsoft или Reserved)
- Показва описание на разбираем език, обясняващо как се генерира версията
- Показва метода на генериране, използван за създаване на UUID
- Незабавна идентификация в реално време при въвеждане или поставяне
Случаи на употреба
- Отстраняване на грешки в разпределени системи: Определете дали UUID в логовете ви са базирани на времеви маркер (v1/v6/v7) или случайни (v4), за да разберете дали съдържат вградени времеви маркери, които можете да извлечете.
- Оптимизация на бази данни: Установете дали първичните ви ключове използват сортируема версия на UUID (v6, v7) или случайна (v4), която може да причини фрагментация на индекса.
- Одит на сигурността: Открийте v1 UUID, които могат да разкрият MAC адреси или времеви маркери, помагайки ви да оцените рисковете от разкриване на информация.
Как работи
Инструментът анализира шестнадесетичната структура на UUID, за да извлече две ключови полета:
- Версия: Прочита се от 13-тата шестнадесетична цифра (индекс 12 в изчистения шестнадесетичен string). Този полубайт директно кодира номера на версията (1–8). Nil и Max UUID се откриват чрез проверка дали всички битове са нула или всички битове са единица.
- Вариант: Определя се от най-значимите битове на 17-тата шестнадесетична цифра (индекс 16). Битовият шаблон съответства на едно от четирите семейства варианти: NCS, RFC 4122/9562, Microsoft или Reserved.
Версии на UUID с един поглед
| Версия | Наименование | Ключово свойство |
|---|---|---|
| v1 | Базиран на времеви маркер | Времеви маркер + MAC адрес |
| v2 | DCE Security | Времеви маркер + MAC + POSIX UID/GID |
| v3 | Базиран на наименование (MD5) | Детерминиран от пространство от имена + наименование |
| v4 | Случаен | 122 случайни бита |
| v5 | Базиран на наименование (SHA-1) | Детерминиран, по-силен хеш от v3 |
| v6 | Пренаредено базиран на времеви маркер | Сортируем вариант на v1 |
| v7 | Базиран на Unix Epoch времеви маркер | Unix ms времеви маркер + случаен, идеален за ключове в БД |
| v8 | Персонализиран | Специфичен за доставчик или експериментален |
| Nil | Nil UUID | Всички 128 бита зададени на нула |
| Max | Max UUID | Всички 128 бита зададени на единица |
Често задавани въпроси
Каква е разликата между версия и вариант на UUID? Версията указва алгоритъма за генериране (базиран на времеви маркер, случаен, базиран на хеш и др.), докато вариантът идентифицира коя спецификация следва UUID (RFC 4122, NCS, Microsoft). Повечето UUID, с които ще се сблъскате, ще бъдат от вариант RFC 4122/9562.
Коя версия на UUID трябва да използвам? За повечето приложения v4 (случаен) е най-простият и най-широко поддържан. Ако се нуждаете от сортируеми по времеви маркер идентификатори за първични ключове в бази данни, v7 е съвременната препоръка. Използвайте v5, когато се нуждаете от детерминирани UUID, производни от наименование.
Може ли този инструмент да извлече времевия маркер от UUID? Този инструмент идентифицира само версията и варианта. За да извлечете вградени времеви маркери от v1, v6 или v7 UUID, използвайте специализирания инструмент UUID Time Extractor.