Генератор UUID

Генеруйте стандартні UUID онлайн. Ця сторінка створює випадкові UUID v4 зі 122 випадковими бітами та звичним 36-символьним форматом.

Формат
Згенеровані ID
Готово. Генеруйте UUID у вашому браузері.

Як влаштований цей ID

Структура
UUID v4: шістнадцяткові групи у форматі 8-4-4-4-12 з бітами варіанта RFC.
Ентропія
122 випадкових біти; версія та варіант займають 6 бітів зі 128-бітного значення.
Час
Мітка часу або дані пристрою не кодуються.
Ризик колізії
Межа парадоксу днів народження для 122 випадкових бітів є мізерно малою для звичайних ідентифікаторів додатків, тестів та баз даних.
Приклад
cd03f79d-090c-47e5-ba19-fbf5bdc8cabb

Ваші ідентифікатори генеруються локально за допомогою надійної випадковості браузера. Нічого не надсилається на BroBroGo.

Поширені запитання

Який саме тип UUID генерує ця сторінка?

Він генерує значення UUID v4: випадкові UUID зі стандартним дефісним форматом. Використовуйте сторінку UUID v4, якщо вам потрібен той самий генератор із деталізованими налаштуваннями саме для v4.

Чи надсилаються UUID на сервер?

Ні. Генерація відбувається у вашому браузері за допомогою Web Crypto API, тому значення залишаються виключно на вашому пристрої.

Що таке UUID v4 і як працює цей генератор

UUID v4 — це 36-символьний ідентифікатор у стандартному форматі 8-4-4-4-12, що складається з 32 шістнадцяткових цифр і чотирьох дефісів (якщо дефіси включені). Його основна суть — 122 біти випадковості без вкладеної мітки часу. Генератор на сторінці створює один або кілька таких ідентифікаторів (до 100) повністю в браузері, використовуючи сильний криптографічний генератор псевдовипадкових чисел. Користувач керує кількістю ID (від 1 до 100), регістром літер (нижній за замовчуванням) і наявністю дефісів (увімкнено за замовчуванням). Зміна будь-якого параметра миттєво перегенеровує весь набір.

Ніяких даних не надсилається на сервер — усе відбувається локально, що гарантує приватність і можливість роботи офлайн. Після генерації користувач бачить список ID, кількість (наприклад, «10 згенеровано»), а також може скопіювати окремий ID кліком або всі одразу кнопкою «Copiar всі». Початковий статус — «Ready.», після генерації — «Generated.», після копіювання всіх — «Copied all!».

Чим ця сторінка відрізняється від інших генераторів

Багато онлайн-генераторів UUID v4 пропонують лише базову функцію: натиснути кнопку й отримати один ID. Ця сторінка дає значно більше контролю. По-перше, можна задати кількість ID до 100 — це зручно, коли потрібно створити, скажімо, 50 тестових ключів одразу. По-друге, перемикачі регістру та дефісів дають змогу адаптувати вигляд ідентифікаторів під конкретні вимоги: деякі системи очікують верхній регістр, інші — нижній, а дехто хоче уникати дефісів для компактності (тоді виходить 32 символи без дефісів).

Ключова відмінність — повна прозорість і локальна обробка. Користувач не передає дані на сервер, що важливо для безпеки, особливо якщо ID використовуються як токени доступу або сесійні ключі. Крім того, сторінка належить до набору форматів: UUID v4, UUID v7, ULID, NanoID. Якщо вибрати інший формат, параметри регістру та дефісів можуть змінюватися, але в межах UUID v4 вони працюють саме так.

Вхідні параметри та вихідні дані

Вхідні параметри для UUID v4:

  • Формат: вибір із чотирьох варіантів (UUID v4, UUID v7, ULID, NanoID). Для цього артикля розглядається лише UUID v4.
  • Кількість: ціле число від 1 до 100 включно. Значення поза цим діапазоном не приймаються.
  • Верхній регістр: перемикач (так/ні). За замовчуванням — ні (нижній регістр). При ввімкненні всі літери стають великими: F47AC10B-58CC-4372-A567-0E02B2C3D479 замість f47ac10b-58cc-4372-a567-0e02b2c3d479.
  • Включати дефіси: перемикач (так/ні). За замовчуванням — так. Якщо вимкнути, ID складається з 32 шістнадцяткових цифр без дефісів: f47ac10b58cc4372a5670e02b2c3d479.

Вихідні дані:

  • Список згенерованих ID: рядки зазначеного формату.
  • Покажчик кількості: текст біля списку, наприклад «50 ID».
  • Статусні повідомлення: «Ready.», «Generated.», «Copied all!».

Зміна будь-якого з параметрів негайно запускає повторну генерацію всього набору. Це логічно, оскільки нові значення мають бути випадковими, а не просто зміненим регістром попередніх.

Правила використання та граничні випадки

Хоча генератор простий, варто знати кілька важливих нюансів:

  1. Діапазон кількості: лише 1–100. Якщо ввести 0 або 101, сторінка не згенерує ID — можливо, покаже помилку або проігнорує. Точна поведінка залежить від інтерфейсу, але за факт-шитом значення поза межами не приймаються.

  2. Миттєва регенерація при зміні будь-якого параметра: це означає, що не можна спочатку згенерувати 10 ID у нижньому регістрі з дефісами, а потім просто вимкнути дефіси й отримати ті самі ID без дефісів. Натомість з’являться нові випадкові значення. Тож якщо потрібні однакові ID у різних форматах, треба генерувати окремо.

  3. Відсутність хронологічного порядку: UUID v4 не містить часової мітки, тому при сортуванні вони розташовуються довільно. Це важливо для баз даних: використання UUID v4 як первинного ключа може призвести до фрагментації індексу через випадкове розташування нових записів. Якщо потрібна впорядкованість за часом, варто розглянути UUID v7 або ULID.

  4. Колізії: імовірність збігу двох UUID v4 надзвичайно мала завдяки 122 бітам випадковості. На практиці можна генерувати мільярди ID без реального ризику дубліката, але теоретично колізія можлива. Для більшості застосувань це не проблема.

  5. Локальна генерація: усе відбувається в браузері. Якщо браузер не підтримує crypto.getRandomValues(), генератор може не працювати, але сучасні браузери підтримують. Ніяких запитів до сервера — це плюс для конфіденційності.

Хто потребує UUID v4 і для чого

UUID v4 — це універсальний інструмент для ситуацій, де потрібні унікальні, непередбачувані ідентифікатори без прив’язки до часу. Ось типові сценарії:

  • Токени безпеки та сесійні ключі: висока ентропія робить UUID v4 придатним для одноразових токенів, які важко вгадати.
  • Анонімізація даних: заміна особистих ідентифікаторів на випадкові UUID v4 у тестових базах або для експорту даних.
  • Зовнішні ідентифікатори об’єктів: коли API або система потребує унікального ключа, який не можна передбачити (наприклад, для ідентифікації ресурсу без розкриття порядкового номера).
  • Генерація тестових даних: розробники часто створюють сотні ID для заповнення тестових таблиць.
  • Несортовані ключі: якщо час створення не важливий, але потрібна рівномірна випадковість, UUID v4 — хороший вибір.

Водночас для первинних ключів у реляційних базах даних із великою кількістю записів варто зважити на ризик фрагментації індексу (через випадкове сортування B-дерев). У таких випадках розумніше використовувати UUID v7 (який має часовий префікс) або традиційні автоінкрементні ключі.

Технічні деталі: структура, ентропія, безпека

UUID v4 визначений у стандарті RFC 4122. Його структура:

  • 16 октетів (128 біт).
  • Біти розподілені так: 4 біти версії (завжди 0100 для v4), 2 біти варіанту (зазвичай 10 для стандартного RFC 4122), і 122 біти випадковості.
  • Візуальне представлення: 32 шістнадцяткові цифри, згруповані як 8-4-4-4-12, розділені дефісами.

Ентропія: 122 біти випадковості забезпечують приблизно 10^36 можливих значень. Ймовірність колізії для n згенерованих ID приблизно дорівнює n² / (2 * 2^122). Навіть для 10^30 ID вона залишається надзвичайно малою. Тому на практиці UUID v4 вважають унікальними без додаткової перевірки.

Безпека: генерація відбувається через crypto.getRandomValues() (або аналогічний CSPRNG), що є криптографічно стійким. Випадковість не передбачувана, що робить UUID v4 прийнятним для багатьох застосувань безпеки, хоча для суворих криптографічних вимог іноді рекомендують спеціалізовані токени.

Вплив параметрів на вигляд:

  • З дефісами: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
  • Без дефісів: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (32 символи)
  • Нижній регістр: a1b2c3d4-e5f6-7890-abcd-ef1234567890
  • Верхній регістр: A1B2C3D4-E5F6-7890-ABCD-EF1234567890

Усі ці варіанти є стандартними UUID v4, просто різне представлення. Внутрішня 128-бітова структура не змінюється.

Часті запитання (FAQ)

1. Чи можна використовувати згенеровані ID як первинні ключі в базі даних? Так, але з обережністю. UUID v4 мають випадковий порядок, тому вставки будуть розкидані по всій таблиці, що може сповільнити роботу індексу (особливо на великих таблицях). Якщо важлива продуктивність, розгляньте UUID v7 (впорядковані за часом) або послідовні числа.

2. Яка ймовірність отримати два однакових UUID v4? Вкрай мала. Для практичних обсягів (мільйони ID) — практично нульова. Формула наближено: для 1 трильйона ID імовірність хоча б однієї колізії — менше ніж 10^-12.

3. Чи можна відновити час створення UUID v4? Ні, UUID v4 не містить мітки часу. Він випадковий. Якщо потрібен час, використовуйте UUID v7 або ULID.

4. Чому сторінка генерує нові ID при зміні регістру чи дефісів? Тому що кожна зміна параметра запускає нову випадкову генерацію. Це зроблено для простоти: користувач очікує, що після зміни налаштувань він побачить ID у новому форматі, а не конвертовані старі. Якщо потрібні ті самі ID в іншому форматі, згенеруйте їх окремо.

5. Чи безпечно використовувати цей генератор для створення токенів? Так, оскільки все відбувається локально, без передачі даних на сервер. Якість випадковості — криптографічна. Однак пам’ятайте, що токени мають бути достатньо довгими; UUID v4 (122 біти) — зазвичай достатньо.

6. Що станеться, якщо я введу кількість більше 100? Сторінка не прийме значення поза діапазоном 1–100. Можливо, поле введення проігнорує некоректне число або покаже помилку. Рекомендується дотримуватися ліміту. Якщо потрібно більше ID, згенеруйте кілька партій.