UUID v5 Generator

Генерируйте детерминированные идентификаторы UUID v5 на основе имени из UUID пространства имен и имени полностью в браузере.

Входные данные
Выберите UUID пространства имен и имя. UUID v5 хеширует оба значения, поэтому одна и та же пара всегда возвращает один и тот же UUID.

Используйте одно из стандартных пространств имен или вставьте любой допустимый UUID.

Стандартные пространства имен

DNS, URL, OID и X.500 — это стандартные UUID пространств имен, определенные для UUID на основе имени.

Это может быть домен, URL, путь, имя пользователя или любая стабильная строка, которую нужно идентифицировать.

UUID v5
Результат обновляется локально при изменении пространства имен или имени.

Результат обновляется локально при изменении пространства имен или имени.

Версия 5Вариант RFC 4122Детерминированный

Генерируйте идентификаторы UUID v5 из UUID пространства имен и имени, не отправляя ни одно из этих значений на сервер. UUID v5 полезен, когда нужен стабильный идентификатор, который можно позже воссоздать из тех же входных данных, например ID для доменного имени, URL, пути к объекту, имени учетной записи или записи фикстуры.

Как работает UUID v5

UUID v5 объединяет UUID пространства имен со строкой имени, хеширует эти байты с помощью SHA-1, а затем применяет биты версии и варианта RFC 4122. Поскольку входные данные детерминированы, example.com внутри пространства имен DNS всегда создает один и тот же UUID: cfbff0d1-9375-5685-968c-48ce8b15ae17.

Выбор пространства имен

Используйте ns:DNS для доменных имен, ns:URL для URL, ns:OID для идентификаторов объектов и ns:X.500 DN для отличительных имен X.500. Вы также можете вставить собственное пространство имен UUID, когда вашему приложению нужны идентификаторы, ограниченные продуктом, клиентом, набором данных или миграцией.

Когда использовать

Выбирайте UUID v5, когда воспроизводимость важнее случайности. Он хорошо подходит для детерминированного импорта, тестовых фикстур, записей в пространствах имен и систем, где один и тот же логический элемент должен получать один и тот же ID при каждом запуске. Для секретных токенов или непредсказуемых публичных ID используйте вместо этого генератор случайных значений.