Генератор UUID

Генеруйте універсально унікальні ідентифікатори (UUID) використовуючи алгоритми на основі часових міток для запобігання дублікатам.

Гарячі клавіші: R для регенерації UUID або C для копіювання

Як працюють UUID

UUID v1 (На основі часової мітки): Використовує поточну часову мітку (інтервали 100 наносекунд з 15 жовтня 1582) в поєднанні з MAC-адресою або випадковим ідентифікатором вузла. Це забезпечує унікальність між різними машинами та запобігає дублікатам навіть при одночасній генерації.

UUID v4 (Випадковий): Використовує криптографічно стійкі випадкові числа. Хоча теоретично можливі дублікати, ймовірність настільки низька (1 з 2^122), що вона незначна для практичних цілей.

UUID v7 (Сучасна часова мітка): Найновіша версія UUID, яка поєднує Unix часову мітку (48 біт) з випадковими даними (74 біти). Це забезпечує переваги сортування за часом v1, зберігаючи конфіденційність v4, що робить його ідеальним для первинних ключів бази даних.

Формат: UUID - це 128-бітні значення, відображені як 32 шістнадцяткові цифри у форматі: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Поширені сценарії застосування

UUID (також відомі як GUID) дають вам практично необмежений запас унікальних ідентифікаторів без координації з центральним органом. Кілька місць, де їх зазвичай використовують:

Первинні ключі бази даних

UUID дозволяють кільком сервісам або шардам генерувати ключі незалежно, без колізій. UUID v7 усе частіше є переважним, бо початкова позначка часу тримає вставки просторово близькими, а індекси - компактними.

Розподілені системи

Коли події створює багато вузлів, UUID на подію усуває вузьке місце централізованої послідовності й зберігає журнали відстежуваними між сервісами.

Ідентифікатори для публічного використання

UUID v4 в URL не показує, скільки записів існує, і не відкриває дверей для атак перебором, як це робить зростаюче ціле число.

Ключі ідемпотентності

Клієнти генерують UUID для кожного запиту, щоб сервер міг розпізнавати повторні спроби й не обробляти ту саму дію двічі.

Яку версію використовувати?

  • Використовуйте v4, якщо вам потрібна проста випадковість без додаткових властивостей - це найбезпечніший типовий вибір для більшості застосунків.
  • Використовуйте v7, якщо ідентифікатор буде первинним ключем бази даних або зберігатиметься в будь-якому індексі, де порядок вставки має значення. Вбудована позначка часу групує рядки разом і різко покращує продуктивність запису в масштабі.
  • Використовуйте v1 лише тоді, коли вам конкретно потрібно вивести ідентифікатор із позначки часу та ідентифікатора вузла. У сучасних застосунках v7 - кращий вибір для того самого сценарію, без витоку MAC-адреси.

Часті запитання

Що таке UUID?

UUID (універсально унікальний ідентифікатор) - це 128-бітове значення, зазвичай записане як 32 шістнадцяткові цифри у форматі xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Різні версії генерують значення за різними стратегіями (випадково, за позначкою часу або й те, й інше).

Яка різниця між UUID та GUID?

Це одне й те саме. GUID (глобально унікальний ідентифікатор) - назва, яку вживають в екосистемі Microsoft; UUID - назва, що вживається в RFC 4122 та всюди інде. Формат і гарантії унікальності ідентичні.

Чи гарантовано UUID є унікальними?

Математично не гарантовано - але ймовірність колізії для UUID v4 становить приблизно 1 на 2^122, що значно нижче порогу для будь-якого практичного застосування. Для UUID v1 та v7 позначка часу й біти вузла/випадковості на практиці запобігають колізіям.

UUID v4 чи UUID v7 для первинних ключів бази даних?

UUID v7, як правило, кращий для первинних ключів. Оскільки його початкові біти - це Unix-позначка часу, нові рядки вставляються близько одне до одного на диску, що зберігає індекси компактними, а запис - швидким. Використовуйте v4 лише тоді, коли порядок вставки абсолютно не має бути передбачуваним.

Чи потрібен мені генератор UUID v1?

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

Чи є цей генератор UUID безкоштовним?

Так. Усе генерування відбувається у вашому браузері, обмежень немає, а обліковий запис не потрібен. Ви можете генерувати окремі UUID тут або перемкнутися на пакетний генератор - до 500 за раз.

Ми майже не використовуємо файли cookie

Ми використовуємо лише суворо необхідні файли cookie, які підвищують безпеку сайту та покращують ваш досвід користування. Ми не відстежуємо вашу поведінку чи активність.