Что такое UUID
UUID (Universally Unique Identifier, он же GUID в терминологии Microsoft) — это 128-битный идентификатор, который записывается как 36 символов: 32 шестнадцатеричные цифры и четыре дефиса, например 550e8400-e29b-41d4-a716-446655440000. Главное его свойство в том, что сгенерировать одинаковый UUID на разных машинах практически невозможно, и для этого не нужен ни центральный сервер, ни общий счётчик. Именно поэтому UUID стал стандартом там, где идентификаторы создаются в распределённых системах.
Где применяют UUID
- Базы данных — первичные ключи, которые приложение генерирует ещё до вставки строки, не спрашивая у базы «следующий id».
- API и логи — идентификаторы запросов (request id), по которым удобно связывать записи в разных сервисах.
- Файлы и загрузки — уникальные имена, исключающие конфликты при одновременной записи.
- Сессии и токены — временные идентификаторы пользователей и устройств.
- Тестовые данные — быстрая генерация пачки уникальных ключей для миграций и нагрузочных тестов.
Версии UUID
Существует несколько версий стандарта. Версия 4 — полностью случайная, её и создаёт этот генератор: она не раскрывает время создания и не привязана к оборудованию, поэтому подходит для большинства задач. Версия 1 основана на времени и MAC-адресе, версия 5 — на хешировании имени, а более новая версия 7 добавляет к случайности временную метку, чтобы идентификаторы шли по возрастанию — это ускоряет вставку в индексы баз данных. Если специальных требований нет, версия 4 — безопасный выбор по умолчанию.
Как работает этот генератор
Идентификаторы создаются прямо в браузере функцией crypto.randomUUID() — тем же криптографически стойким источником случайности, что применяется для защиты соединений. Значения не отправляются на сервер и не логируются. Можно сгенерировать сразу до 500 UUID и скопировать их одной кнопкой, а также получить варианты в верхнем регистре или без дефисов — под требования конкретной базы или API.
Могут ли UUID совпасть
Теоретически — да, практически — нет. У UUID версии 4 около 2¹²² возможных значений. Чтобы вероятность хотя бы одного совпадения достигла 50%, пришлось бы генерировать порядка миллиарда идентификаторов в секунду в течение примерно 85 лет. Для любых реальных объёмов данных коллизией UUID можно смело пренебречь.
Частые вопросы
Что такое UUID и чем он отличается от GUID?
UUID — универсальный уникальный идентификатор из 128 бит, записываемый как 36 символов с дефисами. GUID — то же самое в терминологии Microsoft. UUID версии 4 генерируется случайно.
Могут ли два UUID совпасть?
Теоретически да, практически нет: вариантов UUID v4 — 2¹²², то есть больше 5 ундециллионов. Чтобы получить 50% шанс хотя бы одного совпадения, нужно генерировать миллиард UUID в секунду около 85 лет.
Обновлено: 2 июля 2026