Перейти к содержанию
TextArray
100% локально

Генератор нано-идентификаторов

Создавайте короткие, безопасные для URL-адресов Nano ID с криптографически безопасной случайностью.

Выходные данные

Генератор нано-идентификаторов

Создавайте Nano ID — короткие уникальные идентификаторы, безопасные для URL-адресов — по одному в строке, от одного до тысячи за раз. Стандартный Nano ID представляет собой 21 символ, взятый из 64-символьного алфавита (A–Z, a–z, 0–9, подчеркивание и дефис), который упаковывает около 126 бит случайности в строку, на треть короче UUID. Каждый символ поступает из криптографически безопасного генератора случайных чисел браузера с отбраковочной выборкой, поэтому ни один символ не становится более вероятным, чем другой.

Установите длину от 2 до 128 символов и выберите алфавит, который подходит для вашей работы. Стандартным является классический набор Nano ID. Никакие двойники не удаляют символы, которые люди путают при чтении идентификаторов вслух или их перепечатке — 0/O/o, 1/I/l/i и 5/S/s, а также подчеркивание и дефис — оставляя 51 однозначный символ, идеально подходящий для кодов купонов и всего, что напечатано. Нижний регистр + цифры подходят для систем, в которых регистр складывается, например, для субдоменов или тегов электронной почты, а шестнадцатеричный нижний регистр дает простые шестнадцатеричные токены.

Nano ID сияет везде, где UUID кажется громоздким: ключи базы данных, которые вы раскрываете в URL-адресах, короткие ссылки, имена файлов для загрузки, ключи кэша, коды приглашений и идентификаторы запросов в журналах. При стандартном 21 символе математика столкновений будет на вашей стороне — вам нужно будет генерировать примерно миллиард идентификаторов в секунду в течение более столетия, прежде чем вероятность одного столкновения достигнет 1%.

Все происходит локально в вашем браузере. Идентификаторы генерируются на вашем устройстве, никогда не запрашиваются с сервера и нигде не регистрируются, поэтому их можно безопасно использовать в производственных системах прямо с этой страницы.

FAQ

Что такое нано-идентификатор?
Nano ID — это короткий уникальный идентификатор, популяризированный библиотекой nanoid JavaScript: 21 символ из 64-символьного URL-безопасного алфавита (A–Z, a–z, 0–9, _ и -), сгенерированного на основе криптографически безопасной случайности. Он помещается везде, где подходит строковый идентификатор — URL-адреса, имена файлов, атрибуты HTML — без экранирования.
Насколько вероятны столкновения?
Стандартный 21-символьный Nano ID содержит около 126 бит случайности, что лишь немного меньше, чем UUID v4 (122 бита). Генерируя миллиард идентификаторов в секунду, потребовалось бы более столетия, чтобы достичь вероятности одного столкновения в 1%. Более короткие идентификаторы быстро снижают этот запас безопасности, поэтому оставляйте 21 символ, если пространство идентификатора не маленькое.
Nano ID, UUID или ULID — что мне использовать?
UUID v4 — это совместимый стандарт: 36 символов с дефисами, поддерживаемый повсеместно. ULID состоит из 26 символов и сортируется по времени создания, что нравится базам данных. Nano ID — это компактный вариант: 21 символ, URL-безопасен, нет требований к фиксированному формату. Если вы контролируете оба конца и хотите иметь короткие идентификаторы, Nano ID подойдет по умолчанию.
Что удаляет алфавит «недвойников»?
Он удаляет классические смешанные группы 0/O/o, 1/I/l/i и 5/S/s, а также подчеркивание и дефис, оставляя 51 однозначный символ. Используйте его для идентификаторов, которые люди читают вслух, печатают или перепечатывают — каждый символ несет в себе немного меньше случайности, поэтому добавьте один или два символа длины, чтобы компенсировать это.
Сгенерированные идентификаторы куда-нибудь отправляются?
Нет. Идентификаторы генерируются в вашем браузере с помощью crypto.getRandomValues и никогда не покидают ваше устройство, поэтому вы можете использовать их для рабочих ключей и значений, связанных с секретами.