NordVPN
SponsoredStrict no-logs VPN with 6,400+ servers in 111 countries. Threat Protection blocks ads, trackers, and malware while you work online.
Get NordVPN →Нажмите для генерации одного или нескольких UUID. v4 — полностью случайные идентификаторы, v7 — сортируемые по времени создания, удобные для первичных ключей в базах данных.
UUID v4 — полностью случайный: 122 случайных бита плюс биты версии/варианта, что даёт около 5,3 × 10³⁶ возможных значений. Коллизия двух UUID v4 практически невозможна. Используйте v4 везде, где не нужна сортировка: идентификаторы API-запросов, анонимные идентификаторы пользователей.
UUID v7 (RFC 9562, опубликован в 2024 году) начинается с 48-битной метки Unix-времени в миллисекундах, за которой следуют 74 случайных бита. Они лексикографически сортируются в порядке создания, что критически важно для производительности БД — первичные ключи, упорядоченные по времени, всегда вставляются в конец B-дерева без случайного разбиения страниц. Используйте v7 для первичных ключей в новых таблицах.
Оба варианта — v4 и v7 — используют crypto.getRandomValues, безопасный источник случайности браузера, тот же примитив, что используют HTTPS и менеджеры паролей. v4 заполняет 122 бита случайными значениями. v7 делит 48 бит метки времени + 74 случайных бита плюс маркеры версии/варианта согласно RFC.
Генерация происходит в браузере. UUID не сохраняются и не передаются. При генерации 100 UUID v4 вероятность коллизии между ними ничтожно мала — значительно ниже вероятности того, что космические лучи изменят бит в вашем процессоре.
UUID v4 в качестве первичных ключей снижают производительность по сравнению с автоинкрементными числами, потому что случайные значения вызывают разбиение страниц B-дерева при вставке. UUID v7 решает эту проблему — используйте v7, если хотите преимущества UUID без потерь производительности индекса.
Не раскрывайте UUID пользователям там, где угадываемость важна. UUID v4 имеют 122 бита энтропии и непредсказуемы. UUID v7 раскрывают время создания, что нормально для большинства задач, но плохо, если время создания является конфиденциальным.
UUID состоят из 36 символов с дефисами (32 шестнадцатеричных + 4 дефиса). Занимают 16 байт в бинарном виде или 36 байт в текстовом. Для столбцов с высокой кардинальностью рассмотрите хранение в виде бинарного BLOB / нативного типа UUID вместо VARCHAR(36).
Да. Оба — v4 и v7 — используют crypto.getRandomValues, безопасный API случайных чисел. v4 имеет 122 бита энтропии, v7 — 74.
Потому что UUID v7 сортируются по времени создания, поэтому вставки всегда попадают в конец индекса B-дерева, а не в случайные позиции. Это исключает разбиение страниц и значительно улучшает производительность записи.
Теоретически да. Для v4 потребовалось бы сгенерировать ~10¹⁸ UUID прежде, чем 50% вероятность коллизии. У v7 временной компонент снижает это до ~2⁷⁴ в пределах одной миллисекунды — всё равно практически невозможно.
Да. GUID — название Microsoft для UUID. Тот же формат, те же гарантии уникальности.
8-4-4-4-12 шестнадцатеричных цифр с дефисами. Всего 32 hex-символа + 4 дефиса = 36 символов. Нижний регистр по соглашению RFC.
v1 включает MAC-адрес устройства, что является утечкой приватности. v7 пришёл на смену v1 для упорядоченных по времени ID без раскрытия аппаратных идентификаторов.
Не напрямую здесь. Закодируйте 16 байт UUID как URL-safe Base64 для получения 22-символьного идентификатора. Полезно для создания коротких URL.
Нет. Генерация происходит полностью в вашем браузере.
Strict no-logs VPN with 6,400+ servers in 111 countries. Threat Protection blocks ads, trackers, and malware while you work online.
Get NordVPN →Managed cloud hosting for WordPress and web apps on DigitalOcean, Vultr, and AWS. Fast setup, no server headaches.
Try Cloudways →Hire freelancers for design, writing, dev, and marketing — or sell your own services. Millions of gigs at every budget.
Browse Fiverr →