Генератор UUID (версия 4)

Сгенерируйте UUID версии 4 (псевдо-случайный), случайный 128-битный идентификатор, который можно считать уникальным. UUID также известен как Globally Unique Identifier (GUID).

Сгенерированный UUID:

 

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

Подробнее о версии 4 UUID

UUID версии 4 генерируется с помощью псевдослучайного или случайного генератора чисел для создания 128-битного идентификатора. Вот какие шаги необходимы для генерации UUID версии 4:

  1. Сгенерируйте 16 байт (128 бит) случайных данных с помощью криптографически стойкого генератора случайных чисел. Эти данные могут быть получены с помощью криптографических библиотек, API операционной системы или аппаратных генераторов случайных чисел.

  2. Установите номер версии. Номер версии для UUID версии 4 равен 0100 в двоичном формате или 4 в шестнадцатеричном. Это значение записывается в старшие 4 бита 7-го байта UUID.

  3. Установите вариант. Номер варианта для UUID версии 4 равен 10 в двоичном формате или 8, 9, A или B в шестнадцатеричном. Это значение записывается в старшие 2 бита 9-го байта UUID.

  4. Объедините сгенерированные случайные данные с номером версии и номером варианта для формирования 128-битного UUID.

  5. Отформатируйте UUID в виде строки из 32 шестнадцатеричных цифр, разделённых на пять групп дефисами. Формат строки обычно выглядит так: xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx, где каждый x обозначает шестнадцатеричную цифру, а y — шестнадцатеричную цифру, обозначающую вариант.

Вот пример того, как может быть сгенерирован UUID версии 4:

  1. Сгенерируйте 16 байт случайных данных: 6c 8c 75 1f 0d aa a7 21 98 c1 46 11 10 f2 03 67.

  2. Установите номер версии: 0100.

  3. Установите номер варианта: 1000 (или 8, 9, A или B в шестнадцатеричном формате).

  4. Объедините случайные данные, номер версии и номер варианта для формирования UUID: 6c8c751f-0daa-4217-98c1-461110f20367.

  5. Полученный UUID является уникальным идентификатором, дублирование которого крайне маловероятно.

Обратите внимание, что хотя UUID версии 4 с очень высокой вероятностью является уникальным, его уникальность не гарантируется в любых условиях. В редких случаях возможно появление дубликатов UUID, если две системы сгенерируют одинаковые случайные данные в одно и то же время. Однако вероятность генерации дубликата UUID чрезвычайно мала.