Что такое Генератор UUID v1
UUID v1 строится из текущей метки времени (в 100-наносекундных единицах с 1582 года) плюс 48-битный идентификатор узла. Временная часть делает значения v1 естественно сортируемыми по порядку создания.
Цифра версии — 1, биты варианта соответствуют RFC 4122. Исторически узлом был MAC-адрес машины; современные генераторы используют случайный узел, чтобы не раскрывать аппаратную идентичность.
Как использовать
- Укажите, сколько UUID нужно (1–1000).
- Включите параметры форматирования: верхний регистр, дефисы и фигурные скобки.
- Нажмите Сгенерировать, затем копируйте, копируйте всё или выгружайте в .txt/.csv.
Сценарии
- Идентификаторы событий и логов, где важен хронологический порядок.
- Распределённые системы, которым нужны примерно сортируемые по времени ключи без центральных часов.
- Замена auto-increment ID, видимым в публичных URL (не раскрывает число строк).
Структура
Структура: time_low(32) - time_mid(16) - time_hi_and_version(16) - clock_seq(16) - node(48). Первые три поля несут метку времени, поэтому сортировка по строке приблизительно совпадает с порядком создания.
Сравнение Генератор UUID v1 с другими форматами
| Option | When to use |
|---|---|
UUID v1 | Время + узел; сортировка по времени создания |
UUID v4 | Полностью случайный; без времени |
UUID v7 | Современный, упорядоченный по времени с точностью до миллисекунды |
Code examples
JavaScript
const { v1 } = require('uuid');
const id = v1(); // напр. '2ed6657d-badc-11d1-1234-001631e8b748'
Python
import uuid
id = uuid.uuid1() # встраивает ID узла + метку времени
Frequently asked questions
Раскрывает ли UUID v1 мой MAC-адрес?
Классический v1 использовал MAC, но современные реализации (включая эту страницу) подставляют случайный 48-битный узел, поэтому аппаратный адрес не раскрывается.
Почему выбрать v1 вместо v4?
Выбирайте v1, когда нужны значения, сортируемые по времени создания и почти не совпадающие даже без случайности. Для чистой уникальности без временного сигнала проще v4.
Могут ли два v1 UUID совпасть?
Только если один узел сгенерирует два ID в одном 100-наносекундном тике и последовательность часов не сдвинется — на практике крайне маловероятно.