UltKit
Изображения11
PDF13
Документы и данные7
Видео6
Аудио4
Другие инструменты22

Генератор UUID

Создавайте случайные UUID версии 4, от одного до ста за раз, и копируйте их списком. Они берутся из криптографически стойкого генератора случайных чисел вашего браузера, а встроенная проверка покажет версию и вариант любого вставленного UUID.

Символов: 0 · слов: 0 · строк: 0

Всё работает в этой вкладке браузера. Ваш текст никуда не загружается и не сохраняется.

Версии UUID

Версия — первая цифра третьей группы; вариант закодирован в первой цифре четвёртой группы (8, 9, a или b для UUID по RFC). Примеры — тестовые векторы из RFC 9562.

ВерсияОсноваПример
v1Григорианская временная метка + ID узла (MAC)c232ab00-9414-11ec-b3c8-9f6bdeced846
v3Хеш MD5 от пространства имён + имени5df41881-3aed-3515-88a7-2f4a814cf09e
v4122 случайных бита919108f7-52d1-4320-9bac-f847db4148a8
v5Хеш SHA-1 от пространства имён + имени2ed6657d-e927-568b-95e1-2665a8aea6a2
v6Временная метка v1 в другом порядке, чтобы ID сортировались по времени1ec9414c-232a-6b00-b3c8-9f6bdeced846
v7Миллисекунды Unix + случайные биты, сортируемый017f22e2-79b0-7cc3-98c4-dc0c0c07398f
v8Собственная структура, задаваемая приложением2489e9ad-2ee2-8e00-8ec9-32d5f69181c0

Что такое UUID и как его читать

UUID (универсальный уникальный идентификатор, в программах Microsoft его называют GUID) — это 128-битное число, записанное в виде 32 шестнадцатеричных цифр группами 8-4-4-4-12, например f47ac10b-58cc-4372-a567-0e02b2c3d479. Он был стандартизован в RFC 4122 в 2005 году; в мае 2024 года этот документ заменил RFC 9562, который сохраняет прежние версии и добавляет три новые. Две позиции фиксированы: первая цифра третьей группы обозначает версию (4 в 4372), а первая цифра четвёртой группы показывает вариант — для любого UUID, соответствующего RFC, это 8, 9, a или b.

Версия 4 заполняет остальные 122 бита случайными данными. Это пространство настолько велико, что для 50%-ной вероятности хотя бы одного повтора понадобилось бы сгенерировать около 2,7 квинтиллиона (2,7 × 10¹⁸) идентификаторов, поэтому системы создают ID v4 независимо на множестве машин без согласования. На этой странице используется crypto.randomUUID или, если его нет, crypto.getRandomValues, но никогда Math.random, результат которого не рассчитан на непредсказуемость. Параметры Верхний регистр и Без дефисов меняют только форматирование; значение остаётся тем же, и большинство парсеров принимают любой регистр.

v4, v7 и другие версии

Версии 1 и 6 строятся из метки времени и идентификатора узла, изначально — MAC-адреса компьютера, что раскрывает, где и когда был создан ID. Версии 3 и 5 хешируют пространство имён и имя с помощью MD5 или SHA-1, поэтому одинаковые входные данные всегда дают один и тот же UUID. Версия 8 — свободная структура для собственных схем. Самая важная новинка — версия 7: она начинается с 48-битной метки времени Unix в миллисекундах, остальное заполняется случайными битами, так что ID сортируются по времени создания.

Именно из-за такой упорядоченности v7 стоит рассмотреть для первичных ключей в базах данных. Случайные ключи v4 попадают в произвольные места B-дерева, разбивают страницы и ухудшают локальность кэша по мере роста таблицы, а ключи v7 поступают примерно по возрастанию, как столбец с автоинкрементом, но при этом их можно генерировать без центрального счётчика. Выбирайте v4, если нужен ID, который ничего не раскрывает, в том числе время создания; выбирайте v7, если важны скорость вставки и упорядоченность по времени. UUID — это идентификатор, а не секрет: для паролей и API-секретов используйте отдельный генератор паролей. Другие кодировщики и анализаторы есть в разделе инструменты для разработчиков.

Часто задаваемые вопросы

Могут ли два случайно сгенерированных UUID совпасть?
Теоретически да, на практике нет. При 122 случайных битах даже миллиард UUID v4 в секунду на протяжении примерно 86 лет даст лишь около 50% вероятности одного повтора, если источник случайности надёжен.
Чем UUID отличается от GUID?
По сути никакой. GUID — это название Microsoft для того же 128-битного идентификатора. Некоторые инструменты Microsoft показывают GUID в верхнем регистре или в фигурных скобках, и проверка здесь принимает такой вид.
Как узнать версию UUID?
Посмотрите на первую цифру третьей группы: 4 — случайный, 7 — упорядоченный по времени, 1 — метка времени плюс узел. Вставьте UUID в поле «Проверить UUID», чтобы увидеть версию и вариант.
Стоит ли использовать UUIDv7 вместо v4 для ключей базы данных?
Часто да. Ключи v7 упорядочены по времени, поэтому B-деревья остаются компактными, а вставка быстрой. Оставайтесь на v4, если время создания, встроенное в ID v7, должно быть скрыто.
Безопасно ли использовать UUID как токен для сброса пароля?
UUID v4 из надёжного генератора содержит 122 случайных бита, этого достаточно, чтобы его нельзя было угадать, но во многих библиотеках есть специальные функции для токенов с явным сроком действия. Никогда не используйте в качестве секретов версии на основе времени, такие как v1 или v7.