Toolbox Hub
Все инструменты

UUID Generator

Generate random UUIDs

Generate random UUIDs Запускается локально в вашем браузере

Count:
3129f1fa-a3c8-43c7-9cf5-ed3e8bbe9527

About the

Генератор UUID создает универсальные уникальные идентификаторы версии 4 с использованием криптографически безопасного генератора случайных чисел браузера в стандартной форме 8-4-4-4-12, например 3f2504e0-4f89-41d3-9a0c-0305e82c3301. UUID версии 4 содержит 122 случайных бита, поэтому вероятность коллизии нескольких миллиардов идентификаторов намного ниже вероятности аппаратного сбоя за тот же период. Инструмент генерирует данные в пакетном режиме, поэтому вы можете заполнить файл фикстуры или исходную таблицу за один проход, а не щелкать двадцать раз.

Where people use the

  • Заполнение файла фикстуры или начального скрипта реалистичными идентификаторами.
  • Создание идентификаторов запросов для набора тестов API.
  • Генерация первичных ключей для строк, импортированных из электронной таблицы.
  • Создание неугадываемых имен файлов для загрузок, которые еще не прошли авторизацию.

How to use the

  1. 1

    Выберите, сколько идентификаторов вам нужно

    Установите количество от 1 до нескольких сотен. Каждый из них генерируется независимо из свежих случайных байтов.

  2. 2

    Выберите формат

    По умолчанию используется стандартный нижний регистр с дефисами. Формы с заглавными буквами и без дефисов также доступны для систем, которые их ожидают.

  3. 3

    Генерировать

    Каждый идентификатор появляется сразу, по одному на строку, и готов к копированию как блок.

  4. 4

    Скопируйте и вставьте в свои данные

    Используйте кнопку копирования, чтобы избежать пробелов в конце, а затем вставьте прямо в SQL, JSON или столбец электронной таблицы.

Советы и лучшие практики

  • Храните UUID в собственном столбце UUID, а не в строковом типе переменной длины, что позволяет экономить пространство и быстрее индексировать.
  • Если вам нужны сортируемые ключи, сгенерируйте в коде версию 7 вместо версии 4 здесь.
  • Никогда ничего не извлекайте из UUID путем его анализа; биты случайны и не имеют смысла.

Часто задаваемые вопросы

Действительно ли эти идентификаторы случайны?

Да. Они берутся из crypto.getRandomValues, криптографически безопасного источника платформы, а не из Math.random. Затем биты версии и варианта устанавливаются в соответствии с требованиями спецификации, оставляя 122 бита случайности.

Должен ли я использовать версию 4 или версию 7?

Версия 4, если идентификатор всегда ищется только по точному совпадению. Версия 7, если это первичный ключ в базе данных, поскольку его префикс является меткой времени, поэтому вставки остаются ближе к концу индекса, а не разбрасываются по нему и фрагментируют B-дерево.

Могу ли я создать здесь версию 1, 3 или 5?

Нет. Версия 1 требует MAC-адреса и состояния часов, а версии 3 и 5 представляют собой детерминированные хэши пространства имен и имени. Это производные значения, а не случайные, поэтому они принадлежат коду, а не генератору случайных чисел.

Безопасно ли отображать UUID в URL-адресе?

Это неугадано, и это полезно, но неугадаемое — это не то же самое, что разрешенное. Не рассматривайте неугаданный идентификатор как проверку контроля доступа; проверяйте разрешения отдельно.

Что такое биты версии и варианта?

Тринадцатая шестнадцатеричная цифра фиксирована и равна 4 для версии 4, а семнадцатая ограничена цифрами 8, 9, a или b для варианта RFC 4122. Вот почему паттерн всегда выглядит как 8-4-4-4-12 с 4 в третьей группе.

Нужно ли мне беспокоиться о дубликатах?

Не на практике. Вам нужно будет сгенерировать примерно 2,7 раза по десять до восемнадцатого идентификатора, прежде чем появится пятидесятипроцентная вероятность одного столкновения. В любом случае сохраняйте ограничение уникальности для столбца, поскольку оно почти ничего не стоит.

Сопутствующие инструменты