UUID генератор и валидатор

Създавайте криптографски случайни v4 или сортируеми v7 UUID, по един или хиляда наведнъж, и анализирайте всеки UUID или GUID, за да видите версията и вградения времеви печат.

Работи в браузъраБез регистрацияНищо не се качва

Генерирани UUID

Как да използвате: UUID генератор

  1. Изберете v4 за напълно случаен ID или v7 за ID, които се сортират по време на създаване.
  2. Задайте колко ви трябват (до 1 000) и натиснете Генерирай.
  3. По избор превключете на главни букви, премахнете тиретата или оградете с фигурни скоби за GUID в стил Microsoft.
  4. Щракнете върху големия UUID, за да го копирате, или използвайте Копирай / Изтегли .txt за партида.
  5. Поставете произволен UUID в анализатора, за да го валидирате и да видите версията, варианта и времевия печат.

Какво е UUID?

UUID (Universally Unique Identifier), наричан GUID на платформите на Microsoft, е 128-битова стойност, записана като 32 шестнайсетични цифри в пет групи: 8-4-4-4-12. Форматът е дефиниран в RFC 9562, който замени RFC 4122 през 2024 г. Една цифра кодира версията (13-ата hex цифра), а горните битове на 17-ата цифра кодират варианта.

UUID v4 срещу UUID v7

v4v7
Съдържание122 случайни бита48-битов Unix времеви печат в милисекунди + 74 случайни бита
Ред на сортиранеСлучаенХронологичен
Индекс в базата данниСлучайните вмъквания фрагментират B-tree индекситеДобавя се в края, много по-щадящо за индексите
Разкрива времето на създаванеНеДа

Използвайте v7 за първични ключове в бази данни и ID на събития, където редът на вмъкване има значение. Използвайте v4, когато ID не трябва да издава кога нещо е създадено. Този генератор поддържа v7 ID строго нарастващи дори когато много от тях се създават в една и съща милисекунда.

Колко уникални са те?

При 122 случайни бита ще трябва да генерирате около 2,7 квинтилиона v4 UUID, преди да достигнете 50% шанс за една-единствена колизия. Тази страница използва криптографски сигурния генератор на случайни числа на браузъра (crypto.getRandomValues), никога Math.random().

Генериране на UUID в код

// JavaScript (browsers, Node 19+)
crypto.randomUUID()
# Python
import uuid; uuid.uuid4()
-- PostgreSQL 13+
SELECT gen_random_uuid();

Често задавани въпроси

Безопасни ли са тези UUID за продукция?
Да. Генерират се локално със сигурния генератор на случайни числа на Web Crypto API и следват RFC 9562. Нищо не се изпраща към сървър и не се записва в логове.
Каква е разликата между UUID и GUID?
Те са едно и също. GUID е името на Microsoft и често се пише с главни букви и фигурни скоби, като {3F2504E0-4F89-11D3-9A0C-0305E82C3301}. Използвайте опциите по-горе, за да получите този формат.
Мога ли да получа времето на създаване от UUID?
Само за версиите, базирани на време. v7 съхранява Unix милисекунди в първите си 48 бита, а v1 и v6 съхраняват времеви печат със стъпка 100 наносекунди. Поставете такъв в анализатора, за да видите датата. v4 не съдържа информация за време.
Да използвам ли UUID като първични ключове в базата данни?
Те работят добре за разпределени системи и публични ID. Предпочитайте v7 пред v4, за да попадат новите редове в края на индекса, и ги съхранявайте в нативна колона uuid или 16-байтова двоична колона, а не като низ от 36 символа.
Какво е nil UUID?
Стойността от само нули 00000000-0000-0000-0000-000000000000, използвана като заместител със значение „няма UUID“. RFC 9562 дефинира и max UUID от само f.

Свързани инструменти