Объяснение
Как работает Генератор UUID
Генератор UUID создаёт универсально уникальные идентификаторы (Universally Unique Identifiers) прямо в браузере. UUID v4 основан на 122 битах криптографической случайности и является самым распространённым типом UUID для приложений без привязки ко времени.
Стандартный формат использует дефисы: 8-4-4-4-12 шестнадцатеричных символов (например, 550e8400-e29b-41d4-a716-446655440000). Биты 48-51 кодируют версию (4), биты 64-65 — вариант (10). Можно также генерировать компактные UUID без дефисов или заглавными буквами.
Генерация использует браузерный Web Crypto API (crypto.randomUUID или crypto.getRandomValues) для криптографически безопасных случайных значений.
Типичные ошибки
- Использование UUID как средства безопасности: UUID уникальны, но не секретны. Они не подходят как токены доступа или замена паролей.
- Считать уникальность гарантированной: UUID уникальны с астрономически высокой вероятностью, но не дают математической гарантии. Для абсолютной уникальности нужна централизованная регистрация.
- Использование UUID v4 для сортируемых записей: UUID v4 не имеет временного порядка. Для сортируемых идентификаторов лучше подходят UUID v7 (RFC 9562) или ULID.
- Использование UUID как индекса базы данных без учёта производительности: Случайные UUID могут вызывать фрагментацию в B-Tree-индексах. UUID v7 или последовательные идентификаторы производительнее в качестве первичных ключей.
Ограничения этого инструмента
- Только UUID v4 — нет поддержки v1 (по времени), v5 (по имени) или v7 (упорядоченный по времени).
- Генерируется локально, без централизованной регистрации или проверки дубликатов.
- Не подходит как токен безопасности — для этого используйте специализированные крипто-токены.
- Нет проверки введённых UUID — только генерация.
Источники
- RFC 9562: Universally Unique IDentifiers (UUIDs). IETF, 2024. Определяет UUID v7 и обновляет UUID v4.
- RFC 4122: A Universally Unique IDentifier (UUID) URN Namespace. IETF, 2005. Исходное определение UUID v4.
- Web Crypto API: crypto.randomUUID() — W3C/MDN. Нативный браузерный API для генерации UUID v4.