Mi ez az oldal és mire való?
Ez az oldal egyedi azonosítókat generál a Nano ID formátumban. A felhasználó megadja a kívánt azonosítóhosszt és a felhasználható karakterek készletét, a tool pedig egy vagy több ID-t állít elő, amelyek tömörek, URL-barátok és ütközésállóak. A generálás teljes egészében a böngészőben történik a crypto.getRandomValues() használatával, így sem a paraméterek, sem a kimenet nem hagyja el a számítógépet.
Miben más ez az oldal, mint a többi?
A piacon elérhető generátorok többsége UUID-t vagy ULID-t állít elő. A UUID 36 karakteres, a ULID 26 karakteres – ezek fix hosszúságok. A Nano ID alapértelmezett hossza 21 karakter, ami rövidebb a UUID-nél, miközben összehasonlítható ütközésállóságot nyújt. Ennél is fontosabb, hogy a hosszúság és az ábécé egyaránt szabadon állítható:
- A hosszúság 2 és 36 karakter között bármi lehet.
- Az ábécé egy szerkeszthető szöveges mező, amelyben tetszőleges karaktereket megadhatunk, de legalább 2 különböző karaktert tartalmaznia kell.
- Bármely beállítás módosítása azonnal újragenerálja az ID-kat.
- Ha az ábécét egyetlen karakterre csökkenti a felhasználó, a tool törli a találatokat, a darabszámot 0-ra állítja és letiltja a “Copy all” gombot.
A generált ID-k alapértelmezetten URL-barát karaktereket használnak, így nem kell külön kódolni őket.
Bemenetek és kimenetek
Bemenetek
| Mező | Leírás | Alapértelmezés |
|---|---|---|
| Formátum | Nano ID (legördülő menüből választható) | Nano ID |
| Darabszám | 1 és 100 közötti egész szám | 1 |
| Hosszúság | Csúszka, 2–36 karakter | 21 karakter |
| Ábécé | Szerkeszthető szöveges mező | URL-barát karakterek (abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-) |
Kimenetek
| Kimenet | Leírás |
|---|---|
| Generált ID-k listája | Egyedi Nano ID-k felsorolása |
| Darabszám | A generált azonosítók száma |
| Állapotszöveg | Kész / Generálva / Összes másolva! / Hibaüzenet érvénytelen ábécénél |
Az állapotsor a következő üzeneteket jelenítheti meg:
- Ready. – alapállapot, amikor nincs folyamatban generálás
- Generated. – sikeres generálás után
- Copied all! – az összes ID vágólapra másolásakor
- Alphabet needs at least 2 different characters. – ha az ábécé nem tartalmaz legalább két különböző karaktert
Szabályok és peremfeltételek
A tool viselkedése szigorú szabályokra épül, amelyeket a felhasználónak érdemes ismernie:
-
Érvénytelen ábécé esetén minden törlődik. Ha a felhasználó az ábécé mezőt egyetlen karakterre csökkenti (például csak
abetűre), a generált ID-k listája azonnal eltűnik, a darabszám 0 lesz, a “Copy all” gomb letiltásra kerül. Ez azért van így, mert egy egykarakteres ábécével minden előállítható ID azonos lenne (pl. 21 darababetű), ami semmilyen egyediséget vagy véletlenszerűséget nem biztosít. -
Minden változtatás regenerációt indít. Nemcsak a “Generálás” gomb hiányzik – a hosszúság, az ábécé, a darabszám vagy a formátum bármilyen módosítása automatikusan új ID-kat generál. A felhasználónak nem kell külön lépést tennie.
-
Egyéni ID másolása. Bármelyik ID-ra kattintva az adott azonosító egyetlen művelettel a vágólapra kerül. A “Copy all” gomb az összes generált ID-t egyszerre másolja.
-
Nincs szerveroldali feldolgozás. Sem a megadott paraméterek, sem a generált ID-k nem kerülnek elküldésre a BroBroGo szervereire. A
crypto.getRandomValues()böngészőbeli implementációja biztosítja a kriptográfiai erősségű véletlenszámokat.
Kinek érdemes használnia?
- Fejlesztőknek, akik rövid, URL-barát és ütközésálló azonosítókat keresnek web API-khoz, QR-kódokhoz vagy adatbázis-kulcsokhoz.
- Rendszertervezőknek, akik szigorú formátumkorlátokhoz igazodva szeretnék testreszabni az ID hosszát és karakterkészletét.
- Adatvédelmet előtérbe helyező felhasználóknak, akik számára fontos, hogy a generálás lokálisan, szerverkapcsolat nélkül történjen.
- Nagy volumenű rendszerek építőinek, ahol a rövidebb ID-k csökkentik a tárhely- és sávszélesség-igényt.
Hogyan viszonyul a Nano ID a UUID-hoz és a ULID-hez?
| Jellemző | UUID (4-es verzió) | ULID | Nano ID (alapértelmezett) |
|---|---|---|---|
| Hosszúság | 36 karakter | 26 karakter | 21 karakter |
| Karakterkészlet | 0-9, a-f (hex) | 0-9, A-Z (Crockford) | a-z, A-Z, 0-9, _, - (URL-safe) |
| Entrópia (körülbelül) | 122 bit | 128 bit | 122 bit (64^21) |
| Testreszabhatóság | Nem | Nem | Igen (hossz és ábécé) |
| URL-barát | Nem (kötőjelek) | Igen | Igen |
A 21 karakteres Nano ID esetében a kombinációk száma 64^21, ami nagyságrendileg 2^126. Ez gyakorlatilag megegyezik a UUID 4-es verziójának 122 bites véletlen entrópiájával – a különbség a mindennapi használat során nem érzékelhető. A Nano ID előnye a rövidebb hosszúság és a testreszabhatóság. Ha például 36 karakterre növeli a hosszt, az ütközésállóság még a UUID-nél is magasabb lehet.
Gyakori kérdések
1. Miért 21 karakter a Nano ID alapértelmezett hossza?
A 21 karakteres alapértelmezés a Nano ID specifikációjából származik. Ez az a hossz, ahol a tömörség és az ütközésállóság közötti egyensúly a gyakorlati alkalmazások túlnyomó többségében optimális. 64 karakterből álló ábécé esetén 64^21 lehetséges kombináció létezik, ami gyakorlatilag kizárja a véletlenszerű ütközéseket.
2. Mit tegyek, ha összetéveszthető karaktereket szeretnék elkerülni (pl. 0 vs O, 1 vs l)?
Az ábécé mezőben tetszőlegesen szűkítheti a karakterkészletet. Például a ABCDEFGHJKLMNPQRSTUVWXYZabcdefghjkmnpqrstuvwxyz23456789 készlet kizárja a félreolvasható karaktereket. Ne feledje: minél kisebb az ábécé, annál hosszabb ID szükséges az azonos ütközésállóság eléréséhez.
3. Mi történik, ha az ábécében kevesebb mint 2 karakter van?
A tool érvénytelen állapotba kerül. A generált ID-k listája törlődik, a darabszám 0-ra áll és a “Copy all” gomb letiltásra kerül. Az állapotsor a következő hibaüzenetet jeleníti meg: “Alphabet needs at least 2 different characters.” Ennek oka, hogy egyetlen karakter használatával nem lehet véletlenszerű, egyedi azonosítókat előállítani.
4. Biztonságos a böngészőben generálni ID-kat?
Igen. A crypto.getRandomValues() a böngésző beépített kriptográfiai véletlenszám-generátora, amelyet HTTPS-kapcsolatok létesítésére is használnak. Mivel a generálás lokálisan történik, és semmilyen adat nem kerül a szerverre, a generált ID-k privátak és kiszámíthatatlanok maradnak.
5. Hogyan másolhatok ki egyetlen ID-t a listából?
Kattintson a kívánt ID-ra. Ekkor az adott azonosító automatikusan a vágólapra kerül. Az összes ID egyetlen kattintással történő másolásához használja a lista felett található “Copy all” gombot.
6. Változik-e a generálás, ha módosítom a darabszámot?
Igen. A darabszám (1–100) minden módosításakor a tool új ID-kat generál a megadott paraméterekkel. A generált ID-k mindegyike egyedi, és a megadott hosszúságot és ábécét használja.