Блог
Русский

Генератор UUID онлайн — v4 и v7 пачкой

Пакетная генерация UUID v4 и сортируемых v7

Работает в браузере · файлы никуда не загружаются

Что это

UUID — это 128-битный идентификатор, который можно создавать независимо на любой машине с ничтожной вероятностью повтора. Поэтому он встречается в ключах баз данных, именах файлов и трассировке запросов. Инструмент создаёт UUID версии v4 или v7, до 1000 штук за одно нажатие.

Как пользоваться

  1. Выберите версию: v4 полностью случайный, v7 упорядочен по времени.
  2. Укажите количество — от 1 до 1000.
  3. При необходимости включите заглавные буквы или отключите дефисы.
  4. Список обновляется сразу. Кнопка копирования помещает весь список в буфер обмена, по одному UUID на строку.
  5. Нажмите «Сгенерировать снова», чтобы получить новую партию.

Как это работает

  • Формат соответствует RFC 9562 (заменил RFC 4122): 32 шестнадцатеричные цифры в группах 8-4-4-4-12.
  • v4 берётся из crypto.randomUUID браузера: полубайт версии 4, биты варианта 10 и 122 случайных бита.
  • v7 собирается вручную: 48-битная метка времени Unix в миллисекундах, версия 7, 12-битный счётчик, биты варианта 10 и 62 случайных бита.
  • Порядок сортировки гарантирован внутри одной партии (и между партиями в одной сессии браузера). Если несколько идентификаторов приходятся на одну миллисекунду, увеличивается 12-битный счётчик. Если часы стоят или идут назад, значение никогда не становится меньше предыдущего, поэтому сортировка строк даёт порядок создания. Если счётчик переполнился бы в пределах миллисекунды, метка времени сдвигается на единицу вперёд.
  • Вся случайность берётся из crypto.getRandomValues; Math.random не используется.

Примеры

Вариант Вид
v4 xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx (y — 8, 9, a или b)
v7 tttttttt-tttt-7xxx-yxxx-xxxxxxxxxxxx (t — метка времени в миллисекундах, y — 8, 9, a или b)
Без дефисов Сплошные 32 шестнадцатеричные цифры
Заглавные То же значение с заглавными A–F

Сгенерируйте партию v7 и отсортируйте строки по алфавиту — порядок не изменится.

Частые вопросы

Что выбрать — v4 или v7?

v4 подходит, когда нужен просто уникальный идентификатор. v7 удобен, например, для первичных ключей в базе данных: идентификаторы, отсортированные по времени создания, бережнее к индексам.

Могут ли два UUID совпасть?

Теоретически да, но у v4 122 случайных бита, поэтому при обычных объёмах совпадение практически не грозит. В v7 есть счётчик, поэтому идентификаторы, созданные в одну миллисекунду, остаются уникальными и упорядоченными.

Не проблема ли, что в v7 есть метка времени?

Первые 48 бит v7 — время создания в миллисекундах. Используйте v7 только там, где раскрытие времени создания допустимо, а в остальных случаях выбирайте v4.

Сохраняются ли где-нибудь UUID?

Нет. Они создаются криптографическим генератором случайных чисел браузера и никуда не отправляются.

Не нашли нужный инструмент?