Генератор і валідатор UUID
Створюйте криптографічно випадкові UUID v4 або сортовані v7 — по одному чи тисячу одразу — й аналізуйте будь-який UUID або GUID, щоб дізнатися його версію та вбудовану мітку часу.
Працює в браузеріБез реєстраціїНічого не завантажується
Як користуватися: Генератор UUID
- Виберіть v4 для повністю випадкового ID або v7 для ID, що сортуються за часом створення.
- Укажіть, скільки потрібно (до 1 000), і натисніть Згенерувати.
- За бажанням увімкніть верхній регістр, приберіть дефіси або обгорніть у фігурні дужки для GUID у стилі Microsoft.
- Натисніть на великий UUID, щоб скопіювати його, або скористайтеся Копіювати / Завантажити .txt для пакета.
- Вставте будь-який UUID в аналізатор, щоб перевірити його й дізнатися версію, варіант і мітку часу.
Що таке UUID?
UUID (Universally Unique Identifier), на платформах Microsoft відомий як GUID, — це 128-бітне значення, записане 32 шістнадцятковими цифрами в п'яти групах: 8-4-4-4-12. Формат визначено в RFC 9562, який 2024 року замінив RFC 4122. Одна цифра кодує версію (13-та hex-цифра), а старші біти 17-ї цифри — варіант.
UUID v4 чи UUID v7
| v4 | v7 | |
|---|---|---|
| Вміст | 122 випадкові біти | 48-бітна мітка часу Unix у мілісекундах + 74 випадкові біти |
| Порядок сортування | Випадковий | Хронологічний |
| Індекс у БД | Випадкові вставки фрагментують B-tree індекси | Додається в кінець, набагато дружніше до індексів |
| Розкриває час створення | Ні | Так |
Використовуйте v7 для первинних ключів у базі даних та ID подій, де важливий порядок вставки. Використовуйте v4, коли ID не має видавати час створення. Цей генератор зберігає суворе зростання v7 навіть під час створення багатьох ID за одну мілісекунду.
Наскільки вони унікальні?
За 122 випадкових бітів потрібно згенерувати близько 2,7 квінтильйона UUID v4, щоб імовірність хоча б однієї колізії сягнула 50%. Ця сторінка використовує криптографічно стійкий генератор випадкових чисел браузера (crypto.getRandomValues) і ніколи — Math.random().
Генерація UUID у коді
// JavaScript (browsers, Node 19+)
crypto.randomUUID()
# Python
import uuid; uuid.uuid4()
-- PostgreSQL 13+
SELECT gen_random_uuid();Поширені запитання
Чи можна використовувати ці UUID у продакшні?
Чим UUID відрізняється від GUID?
{3F2504E0-4F89-11D3-9A0C-0305E82C3301}. Отримати такий формат можна за допомогою опцій вище.Чи можна дізнатися час створення з UUID?
Чи варто використовувати UUID як первинні ключі в базі даних?
uuid або 16-байтовому бінарному, а не у вигляді 36-символьного рядка.Що таке nil UUID?
00000000-0000-0000-0000-000000000000, що використовується як заглушка в значенні «немає UUID». RFC 9562 також визначає max UUID із самих f.