Генератор коротких идентификаторов
Генерируйте случайные короткие идентификаторы (в стиле nanoid) с полностью настраиваемым алфавитом и длиной, используя защищённый криптографический API браузера. Генерация 100% локальная, ничего не отправляется на сервер.
Как это работает
В отличие от UUID (36 символов с дефисами), короткий идентификатор остаётся читаемым в URL, имени файла или трекинговом коде и при этом обладает достаточной энтропией для уникальности. Выберите готовый или собственный алфавит, длину и количество идентификаторов: каждый символ выбирается случайно через защищённый криптографический API браузера (crypto.getRandomValues), а не через простой Math.random().
Какую длину выбрать, чтобы избежать коллизий?
При буквенно-цифровом алфавите из 62 символов идентификатор из 10 символов уже даёт около 62¹⁰ возможных комбинаций — этого с запасом хватает для большинства задач (идентификаторы сессий, трекинговые коды, ключи сервисов сокращения ссылок). Если нужно сгенерировать миллионы идентификаторов, выбирайте 14–16 символов, чтобы ещё сильнее снизить риск коллизий.
Зачем нужен алфавит «без неоднозначных символов»?
Когда идентификатор приходится переписывать вручную (код получения, напечатанный код активации), символы 0/O и 1/I/l легко перепутать в зависимости от шрифта. Пресет «без неоднозначных символов» исключает их, чтобы уменьшить число ошибок при вводе.
Конфиденциальность: генерация полностью выполняется в вашем браузере, идентификаторы не передаются и не хранятся на сервере.