Вероятность коллизии и безопасность
Разбираемся, действительно ли UUID уникален и можно ли использовать его как токен безопасности.
Вероятность коллизии
v4 состоит из 122 случайных бит, что даёт до 5×10³⁶ вариантов. При реальных масштабах коллизии практически не происходят, но генерировать значения обязательно нужно из криптографического источника случайности (getRandomValues).
Предсказуемость
v1 и v7 содержат временную метку, поэтому по ним можно предположить время создания. Для сессионных и секретных токенов, которые должно быть трудно угадать, безопаснее использовать v4 или специализированный генератор токенов.
Замечание по безопасности
UUID гарантирует лишь «уникальность», но не «секретность». В аутентификации и авторизации используйте UUID только как уникальный ключ, а секретные значения храните в виде отдельных токенов безопасности.