Генератор ULID онлайн

Генерируйте сортируемые ULID, декодируйте встроенную метку времени и конвертируйте между ULID и UUID в браузере. Ничего не загружается.

Генератор ULID работает целиком в вашем браузере. Случайность берётся из Web Crypto API, а ULID, которые вы генерируете, декодируете или конвертируете, никогда не покидают ваше устройство и не попадают в ArrayKit.

Открыть генератор UUID

Об инструменте Генератор ULID

Генератор ULID создаёт ULID — лексикографически сортируемый идентификатор, упаковывающий 48-битную метку времени в миллисекундах и 80 бит случайности в компактную 26-символьную строку Crockford base32. Сгенерируйте один ULID или пакет из сотен, включите монотонный режим, чтобы ID, созданные в одну и ту же миллисекунду, всё же сортировались в порядке создания, и переключите регистр под формат, который предпочитает ваша база данных. Режим декодирования разворачивает процесс: вставьте любой ULID и прочитайте точное время создания как миллисекунды эпохи и метку времени ISO-8601. Встроенный конвертер превращает ULID в эквивалентный 128-битный UUID и обратно, не теряя ни бита. Удобно, когда нужны ключи базы данных, сортируемые по времени, ID для корреляции логов или альтернатива UUID. Случайные байты берутся из Web Crypto API вашего браузера, и каждый ULID строится на вашем устройстве, так что ничего из сгенерированного никогда не отправляется на сервер.

Возможности

Как использовать Генератор ULID

  1. Оставьте выбранной вкладку «Генерировать» и задайте, сколько ULID нужно
  2. Включите «Монотонный» для упорядоченных по времени ключей или выключите для независимых случайных суффиксов
  3. Скопируйте ULID или весь пакет из поля вывода
  4. Переключитесь на «Декодировать», чтобы прочитать метку времени ULID, или на «ULID в UUID» для конвертации

Пример

Ввод

01ARZ3NDEKTSV4RRFFQ69G5FAV

Результат

timestamp: 1469922850259 (2016-07-30T23:54:10.259Z)
uuid: 01563e3a-b5d3-d676-4c61-efb99302bd5b

Первые 10 символов декодируются во время создания; все 128 бит отображаются в UUID.

Частые ошибки и устранение неполадок

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

Что такое ULID и чем он отличается от UUID?
ULID — это 128-битный идентификатор, записанный как 26 символов Crockford base32. В отличие от случайного UUIDv4, его ведущие биты — это метка времени в миллисекундах, так что ULID сортируются в порядке создания как обычный текст, оставаясь глобально уникальными.
Как работает монотонная генерация ULID?
Когда несколько ULID генерируются в пределах одной миллисекунды, монотонный режим переиспользует случайное поле этой миллисекунды и прибавляет к нему единицу для каждого нового ID вместо получения свежей случайности. Это гарантирует, что каждый ULID строго больше предыдущего.
Можно ли восстановить время создания из ULID?
Да. Первые 10 символов кодируют 48-битную метку времени в миллисекундах. Вставьте ULID в режим декодирования, и инструмент покажет точное значение в мс эпохи и соответствующую дату и время ISO-8601.
Обратима ли конвертация ULID в UUID?
Да. И ULID, и UUID содержат 128 бит, так что конвертер отображает каждый бит без потерь. Сконвертируйте ULID в UUID и обратно, и вы получите исходный ULID в точности.
Почему алфавит пропускает I, L, O и U?
ULID используют Crockford base32, который опускает I, L, O и U, чтобы ID легко читались и их было трудно набрать с ошибкой. При декодировании инструмент для удобства всё же принимает I и L как 1, а O как 0.
Приватны ли генерируемые здесь ULID?
Да. Каждый ULID строится в вашем браузере с помощью Web Crypto API для случайности. ID, которые вы генерируете, декодируете или конвертируете, никогда не отправляются в ArrayKit или на какой-либо сервер.

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

Все инструменты ArrayKit