NanoID генератор
Генерирайте защитени, URL-приятелски уникални ID-та с NanoID. Персонализирайте размер, азбука и количество за tokens, ключове на база данни и кратки идентификатори.
Вход
Изход
Прочети ме
Какво е NanoID?
NanoID е малък, безопасен за URL генератор на уникални ID-та за JavaScript. Той произвежда компактни случайни низове, които са статистически уникални — подобни на UUID v4, но по-кратки по подразбиране (21 символа срещу 36) и проектирани да бъдат URL-приятелски без никакво кодиране. Всеки символ е избран от внимателно балансирана азбука, така че всеки възможен ID е еднакво вероятен, което елиминира отклонението в разпределението.
NanoID използва криптографски силен генератор на случайни числа (crypto.getRandomValues в браузъри, crypto.randomFill в Node.js), което прави генерираните ID-та подходящи за контексти, чувствителни към сигурност, като session tokens и еднократни връзки. Дължината по подразбиране от 21 символа дава приблизително 2,1 × 10³⁰ възможни комбинации — сравнима с UUID v4 — докато компактният формат спестява честотна лента и място за съхранение.
Описание на инструмента
Този онлайн генератор на NanoID ви позволява да създавате един или повече NanoID-та мигновено в браузъра си без нужда от инсталация. Можете да контролирате дължината на ID-та, колко ID-та да генерирате и коя азбука да се използва — от защитеното по подразбиране до шестнадесетична, буквено-цифрова, само цифри или напълно персонализиран набор от символи.
Примери
Азбука по подразбиране, размер 21:
V1StGXR8_Z5jdHi6B-myT
useandom-26T198340PX7
bfghjklqvwyzrictV1StGШестнадесетична азбука, размер 16:
3f9a1c2b4e7d0f85
a0c4e8f23b6d917cСамо цифри, размер 8:
04817263
93571048Персонализирана азбука (abc123), размер 12:
b2ca31b1ca2b
3a1c2b3c1ab2Функции
- Регулируема дължина: Задайте размера на ID-та от 1 до 64 символа (по подразбиране 21)
- Масово генериране: Генерирайте до 1000 ID-та наведнъж
- Предварително зададени азбуки: Изберете от Подразбиране, Цифри, Малки букви, Главни букви, Буквено-цифрова, Шестнадесетична, Главна шестнадесетична, Без подобни символи или напълно персонализиран набор от символи
- Предварително зададена азбука без подобни символи: Премахва символи, които са визуално неясни (например
0,O,I,l) за четливи за човека ID-та - Изтегляне като файл: Запазете всички генерирани ID-та в
nanoids.txtс един клик
Случаи на употреба
- Разработка на приложения: Използвайте NanoID-та като първични ключове в бази данни или като идентификатори на записи в API-та, където е предпочитан кратък, безопасен за URL низ пред пълен UUID.
- Генериране на токени: Генерирайте кратки случайни токени за връзки за нулиране на пароли, кодове за приканване или slug-ове за препоръки, където четливостта и безопасността за URL са важни.
- Тестване и макетни данни: Бързо произведете партида реалистично изглеждащи уникални идентификатори, за да попълните тестови приспособления или прототипни данни.
Обяснени опции
| Опция | Описание |
|---|---|
| Размер | Брой символи във всеки генериран ID (1–64). Подразбиранието от 21 дава ~126 бита ентропия, еквивалентно на UUID v4. |
| Количество | Колко ID-та да генерирате в една партида (1–1000). |
| Азбука | Наборът от символи, от които да се черпи. По-големи, по-разнообразни азбуки увеличават ентропията на символ. |
| Персонализирана азбука | Видима, когато е избрана опция Персонализирана. Въведете всички символи; дубликатите се премахват автоматично, за да се предотврати изкривено разпределение. |
Как работи
NanoID избира всеки символ чрез генериране на случаен байт, маскиране му, за да се впише в размера на азбуката, и повторен опит, ако резултатът попада извън валидния диапазон — техника, наречена rejection sampling. Това гарантира перфектно плоско разпределение във всички символи на азбуката, независимо дали размерът на азбуката е степен на две. Азбуката по подразбиране (useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict) е безопасна за URL (без +, / или =) и има 64 символа, което прави всеки символ да носи точно 6 бита ентропия.