NanoID генератор

Генеришите NanoID вредности онлајн: стандардно 21 карактер безбедан за URL, око 126 бита насумичности, са прилагођеном дужином и алфабетом.

Формат
Генерисани идентификатори
Спремно. Генеришите NanoID вредности у свом прегледачу.

Како се овај ID гради

Структура
Стандардно 21 карактер безбедан за URL из скупа A-Z, a-z, 0-9, доње црте и цртице.
Ентропија
Око 126 бита са подразумеваним алфабетом од 64 карактера и дужином од 21 карактера.
Време
Нема временске ознаке; NanoID вредности су непрозирне осим ако сами не дефинишете значење у прилагођеном алфабету.
Ризик од колизије
Ризик од колизије се мења са дужином и алфабетом. Подразумевана подешавања су у истом практичном опсегу безбедности као и UUID v4.
Пример
ojlfzy636Cj9h6z-e4RVf

Ваши идентификатори се генеришу локално уз помоћ јаке случајности у прегледачу. Ништа се не шаље на BroBroGo.

Честа питања

Зашто користити NanoID?

NanoID је краћи од UUID-а, стандардно је безбедан за URL и задржава високу насумичност када користите подразумевану дужину и алфабет.

Могу ли да променим алфабет?

Да. Наменска NanoID страница нуди контролу над дужином и алфабетом. Мањи алфабети или краће дужине повећавају ризик од колизије.

Нано ИД генератор – кратки, прилагодљиви идентификатори без судара

Нано ИД (Nano ID) је формат за генерисање јединствених идентификатора који је осмишљен да буде компактнији од UUID-а, а да притом задржи упоредиву отпорност на сударе. Подразумевана дужина Нано ИД-а износи 21 карактер – знатно краће од UUID-а (36 карактера) и ULID-а (26 карактера). Ова страница омогућава потпуну контролу над дужином и скупом дозвољених карактера (азбуком), што је чини значајно флексибилнијом од стандардних решења. Генерисање се одвија у потпуности у прегледачу, користећи јаке криптографске случајне вредности (crypto.getRandomValues), тако да се ни један податак не шаље на сервер BroBroGo.

Шта Нано ИД чини другачијим од UUID и ULID

За разлику од UUID-а који има фиксну дужину од 36 знакова (укључујући цртице) и ULID-а са 26 знакова, Нано ИД са подразумеваних 21 карактером нуди бољи однос дужине и сигурности. Рачун је једноставан: број могућих комбинација расте експоненцијално са повећањем дужине и величине азбуке. Нано ИД подразумевано користи URL-безбедну азбуку од 64 карактера (A-Z, a-z, 0-9, - и _). За дужину од 21 карактера то даје 64^21 ≈ 1,4 × 10^38 могућих вредности – практично иста количина као UUID верзија 4 (2^122 ≈ 5,3 × 10^36). Међутим, Нано ИД заузима 42% мање простора у бази података или URL-у.

На овој страници сва три параметра (дужина, азбука и број ИД-ова) су подесива. Промена било ког од њих одмах поново генерише ИД-ове. То омогућава инжењерима да прилагоде идентификаторе строгим ограничењима формата – на пример, када су потребне само цифре, само мала слова, или када треба избећи двосмислене знакове попут O, 0, l и 1.

Улазни параметри и како их подесити

Страница нуди следеће контроле:

Параметар Дозвољени опсег/вредности Подразумевано
Формат Нано ИД (тренутно једини) Нано ИД
Број ИД-ова 1–100 (поставка корисника)
Дужина 2–36 карактера (клизач) 21
Азбука Текстуално поље, минимум 2 различита карактера A-Za-z0-9-_

Азбука је уређивачко текстуално поље. Ако се смањи на само један јединствени карактер (нпр. само x), резултати се бришу, број приказаних ИД-ова постаје 0, а дугме „Копирај све“ се онемогућава. Ово је намерно: са једним карактером сваки ИД дужине L био би само понављање тог истог карактера, што нема никакву вредност и не може да обезбеди јединственост.

Дужина се подешава клизачем од 2 до 36. Краће вредности (нпр. 4–6) су корисне за кратке линкове или кодове за једнократну употребу, док дуже (30+) пружају високу сигурност за дугорочне кључеве. Напомена: за дужину од 2 карактера и азбуку од 64 знакова постоји само 4096 могућности – вероватноћа судара је велика ако се генерише много ИД-ова.

Број ИД-ова може бити од 1 до 100. Промена ове вредности такође покреће поновно генерисање.

Излаз и статусне поруке

Након генерисања, страница приказује листу јединствених Нано ИД-ова. Поред листе налазе се:

  • Број ИД-ова: тачан број генерисаних идентификатора.
  • Статусна порука:
    • „Спремно.“ – када је страница учитана, без резултата.
    • „Генерисано.“ – након успешног генерисања.
    • „Копирано све!“ – након клика на дугме „Копирај све“.
    • „Азбука мора да садржи најмање 2 различита карактера.“ – ако је азбука неважећа.

Кликом на појединачни ИД он се копира у клипборд. Дугме „Копирај све“ копира све ИД-ове одвојене новим редом.

Случајеви на ивици и грешке које треба избегавати

Најчешћа грешка је постављање азбуке са премало јединствених знакова. Азбука мора имати најмање два различита карактера. Ако је унесено abc, то је у реду (три различита). Ако је унесено aaa или само a, систем детектује само један јединствени карактер и резултати се бришу. Ово спречава генерисање бескорисних низова.

Други проблем: коришћење превелике азбуке са непотребним понављањима истог карактера. На пример, азбука aaaaaaabc има само 3 различита карактера (a, b, c). Ово не утиче на функционалност, али смањује ефективну величину простора. Најбоље је користити скуп без понављања.

Дужина 2–36: ако је постављена дужина 2, а азбука има 64 знака, имамо 4096 могућих ИД-ова. Ако се затражи 100 ИД-ова, вероватноћа судара (по рођенданском парадоксу) је веома висока (преко 70%). Страница не спречава ову ситуацију, али корисник треба да буде свестан да је за мале дужине потребна пажња. За дужину 21 и азбуку 64, вероватноћа судара након милијарду ИД-ова је занемарљива (~ 10^-15).

Ко треба да користи овај алат

  • Програмери веб АПИ-ја и кратких линкова: Нано ИД се често користи за генерисање јединствених токена у URL-овима (нпр. https://example.com/r/abc123...). Краћа дужина од UUID-а смањује величину линка.
  • Архитекте система: Када је потребно прилагодити дужину и скуп знакова ограничењима schemе базе података или формата извештаја.
  • Они који брину о приватности: Генерисање се одвија искључиво у прегледачу, без икаквог слања података. Чак и веза са сервером BroBroGo не постоји током овог процеса.
  • Сви који граде системе великог обима: Скраћивање ИД-ова са 36 на 21 карактер смањује простор за складиштење за ~40% и смањује пропусни опсег при преносу.

Често постављана питања (ФАК)

1. Да ли се Нано ИД-ови могу копирати као цели низ?
Да. Поред копирања појединачног ИД-а кликом, дугме „Копирај све“ копира све генерисане ИД-ове (сваки у новом реду) у клипборд.

2. Шта се дешава ако променим дужину након генерисања?
Промена било ког параметра (дужине, азбуке, броја) одмах покреће поновно генерисање. Претходни резултати се губе.

3. Да ли је могуће генерисати ИД-ове само од цифара?
Да. Поставите азбуку на 0123456789 (или 0-9 ако желите). Подразумевана азбука садржи и слова и специјалне знакове, али је можете потпуно прилагодити.

4. Колико је безбедно генерисање у прегледачу?
Користи се crypto.getRandomValues, који је криптографски сигуран генератор псеудо-случајних бројева (CSPRNG). То је исти механизам који користе веб апликације за сигурне токене. Никакви подаци не напуштају ваш прегледач.

5. Зашто се резултати бришу када азбука има само један карактер?
Са само једним карактером, сваки ИД дужине L био би низ од L понављања тог карактера (нпр. aaaa...). Такав низ није јединствен и нема практичну вредност. Страница то спречава јасном грешком.

6. Да ли могу да генеришем више од 100 ИД-ова одједном?
Не, горња граница је 100. За веће количине потребно је покренути генерисање више пута. Ово је намерно да се избегне преоптерећење прегледача и осигура брз одзив.