UUID UUID Generator

Бесплатно · Без регистрации · Без установки

Валидатор UUID

Вставьте по одному значению в строке, чтобы проверить корректность UUID, узнать его версию и вариант, а для v1, v6 и v7 — увидеть метку времени, спрятанную внутри.

  • Понимает UUID, GUID и 32 hex-символа
  • Расшифровывает время v1 / v6 / v7
  • Данные не покидают браузер

Валидатор UUID

Validator
До 200 строк. Скобки, кавычки, верхний регистр и отсутствие дефисов допускаются.

Результат 0

Здесь появятся результаты.

Создаётся локально через Web Crypto API — данные не покидают ваш браузер. Быстро: Ctrl + Enter — Обновлено

Что такое Валидатор UUID

Валидатор UUID отвечает на два разных вопроса. Первый — структурный: является ли строка корректным 128-битным идентификатором: 32 hex-символа, обычно записанные как 8-4-4-4-12, с правильно выставленными ниблом версии и битами варианта согласно RFC 9562. Второй — смысловой: что именно содержит значение?

Инструмент проверяет и то, и другое. Сначала значение нормализуется, поэтому фигурные и круглые скобки, кавычки, верхний регистр и отсутствие дефисов допускаются. Затем выводится версия, вариант и — там, где структура это позволяет — встроенное время. Инструмент сознательно не утверждает, что UUID был когда-либо выдан: UUID создаются без центрального реестра, поэтому «корректный» может означать только «правильно построенный и самосогласованный».

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

  1. Вставьте по одному значению в строке — до 200 строк за раз.
  2. Нажмите Проверить. Каждая строка разбирается независимо, поэтому одна ошибка не мешает остальным.
  3. Изучите таблицу: корректность, нибл версии и расшифрованное описание содержимого.

Сценарии

  • Отладка ответов API, когда идентификатор может оказаться UUID, GUID, слагом или чем-то ещё.
  • Проверка данных перед импортом: все ли строки действительно 32 hex-символа, нет ли обрезанных значений?
  • Выяснение реальной версии в системе: v4 для случайных ключей, v7 при опоре на порядок вставки, v1 для старого Windows-стека.

Структура

Тринадцатый hex-символ содержит версию, семнадцатый — вариант. Всё остальное — полезная нагрузка: у v4 она случайная, у v7 первые 48 бит — метка времени Unix в миллисекундах, у v1 и v6 — 60-битный счётчик 100-наносекундных тиков с 1582-10-15.

Именно поэтому расшифровать можно не все версии. UUID v3 и v5 — это MD5- или SHA-1-хэш пространства имён и имени, а хэш необратим: проверить структуру можно, а восстановить исходное имя — нет.

Сравнение Валидатор UUID с другими форматами

ВариантКогда использовать
UUID v1Время + node. Расшифровываются и 60-битная метка времени, и поле node.
UUID v4122 случайных бита. Узнать можно только корректность формата.
UUID v7Сначала 48-битное время Unix, затем случайные биты. Метка времени читается напрямую.
UUID v3 / v5Хэш пространства имён и имени. Структура проверяется, входные данные — нет.

Примеры кода

JavaScript

// Строгая проверка: версия 1-8 и нибл варианта RFC.
const STRICT = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;

STRICT.test('550e8400-e29b-41d4-a716-446655440000'); // true
STRICT.test('550e8400-e29b-01d4-a716-446655440000'); // false, версия 0

Python

import uuid

try:
    u = uuid.UUID('550e8400-e29b-41d4-a716-446655440000')
    print(u.version, u.variant)   # 4, 'specified in RFC 4122'
except ValueError as exc:
    print('не UUID:', exc)

PostgreSQL

-- Запретить попадание мусора в таблицу
ALTER TABLE items ADD CONSTRAINT items_id_is_uuid
  CHECK (id::text ~ '^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$');

-- PostgreSQL 18 читает метаданные напрямую
SELECT uuid_extract_version(id), uuid_extract_timestamp(id) FROM items LIMIT 5;

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

Что делает UUID некорректным?

Три причины: после удаления разделителей остаётся не 32 hex-символа; нибл версии (13-й символ) равен 0, 9 или выше — таких версий в RFC нет; биты варианта (17-й символ) не совпадают ни с одним определённым вариантом. Регистр, скобки и отсутствие дефисов ошибкой не являются.

Можно ли расшифровать время из любого UUID?

Нет. Встроенные часы есть только у v1, v6 и v7. v4 полностью случаен и полезной нагрузки не несёт. v3 и v5 — хэши, и обратить их нельзя.

Корректный UUID означает, что запись существует?

Нет. UUID специально устроены так, чтобы любая машина могла создать их без реестра, поэтому по строке невозможно узнать, сохранён ли этот идентификатор где-либо.