Az eszközről
Az UUID-k (Universally Unique Identifiers, más néven GUID a Microsoft-kontextusban) 128 bites azonosítók, amelyek egymástól függetlenül, elhanyagolható ütközési valószínűséggel generálhatók a rendszerek között. A szabványos forma 32 hexadecimális karakterből áll, 8-4-4-4-12 csoportokban, kötőjelekkel elválasztva (550e8400-e29b-41d4-a716-446655440000). Több verzió létezik különböző generálási stratégiákkal; A v4 (véletlenszerű) a leggyakoribb.
A v4 UUID-k egyediségüket 122 bites véletlenszerűségből származtatják (hat bit rögzítve van a verzióhoz és a változathoz). Az ütközés valószínűsége olyan kicsi, hogy gyakorlati okokból az UUID-k koordináció nélkül globálisan egyedinek tekinthetők – két, egymástól függetlenül UUID-t generáló rendszer semmilyen reális időtávon nem hoz létre ismétlődést.
Ez a generátor szabványos hexadecimális kötőjeles formátumban állítja elő a v4 UUID-ket. A véletlenszerűség a böngésző kriptográfiailag biztonságos véletlenszám-generátorából (window.crypto.getRandomValues) származik, amely biztonsági szempontból érzékeny célokra alkalmas. A tömeges generálás támogatott tesztrögzítők vagy vetési adatbázisok kitöltéséhez.
Miért kell UUID-ket generálni?
Az UUID-k lehetővé teszik az elosztott rendszerek számára, hogy azonosítókat generáljanak anélkül, hogy a központi adatbázissal koordinálnák. Mindegyik szolgáltatás helyben tud azonosítókat előállítani anélkül, hogy egy számlálóhoz oda-vissza utazna, és az így kapott azonosítók garantáltan nem ütköznek máshol generált azonosítókkal. Ez lehetővé teszi a skálázott architektúrákat, ahol az azonosító generálása nem jelent szűk keresztmetszetet.
Az UUID-k az azonosítókat is kitalálhatatlanná teszik. A szekvenciális numerikus azonosítók információkat szivárogtatnak ki – teljes felhasználók száma, fiók életkora, regisztrációs sebesség. Az UUID-k nem árulnak el semmit. Az azonosítókat a felhasználók számára felfedő API-k a biztonság és a szilánkos háttérrendszerekkel való előrehaladási kompatibilitás szempontjából egyaránt hasznot húznak az UUID-ből.
Használati útmutató
Kattintson a Generálás gombra, és szerezzen be egy v4 UUID-t.
- Válassza ki a számot: Egyszerre egy UUID-t generálhat, vagy tömegesen generálhat akár több ezret is a tesztadatok kitöltéséhez.
- Válasszon formátumot: Az alapértelmezett formátum kötőjelekkel (550e8400-e29b-41d4-a716-446655440000). Kompakt (kötőjel nélkül), nagybetűs és kapcsos zárójeles {550e8400-...} változatok is rendelkezésre állnak.
- Generál: A böngésző crypto.randomUUID() (vagy egy v4 tartalék a crypto.getRandomValues használatával) új UUID-ket állít elő. Minden generáció független és nem determinisztikus.
- Másolás vagy letöltés: Másoljon egyetlen UUID-t a vágólapra, vagy töltsön le tömeges listákat szöveges vagy CSV-fájlként.
Gyakori használati esetek
Műszaki részletek
Az UUID-k 128 bitesek, 32 hexadecimális számjegyként jelennek meg, öt, kötőjellel elválasztott csoportban. A csoportosítás (8-4-4-4-12) tisztán kozmetikai jellegű; az érték egyetlen 128 bites egész szám. A v4 UUID-k 122 bites véletlenszerűséget kódolnak, a fennmaradó 6 bit pedig rögzített: a verzió mező (4 bit, 4 érték) azonosítja a változatot.
Böngésző támogatás: A crypto.randomUUID() elérhető a modern böngészőkben (Chrome 92+, Firefox 95+, Safari 15.4+), és közvetlenül állít elő v4 UUID-t. A régebbi böngészők a crypto.getRandomValues 16 véletlenszerű bájtját kézzel kombinálják a helyesen beállított verzió/változat bitekkel.
Ütközés valószínűsége: 2^122 lehetséges véletlenszerű UUID esetén elhanyagolható annak az esélye, hogy két azonos értéket generáljunk. Még 10^9 generált UUID esetén is körülbelül 10^-18 az egyetlen ütközés valószínűsége – körülbelül 10 billiószor kisebb valószínűséggel, mintha véletlenszerűen választanának ki egy atomot a Földön.
Gyakran ismételt kérdések
- Mi az UUID?
- Az UUID (Universally Unique Identifier) egy 128 bites címke, amely az információk egyedi azonosítására szolgál a felek közötti koordináció nélkül. A v4 UUID így néz ki: 550e8400-e29b-41d4-a716-446655440000. Gyakorlatilag garantáltan egyedülálló lesz a világ összes rendszerében.
- Két UUID lesz valaha egyforma?
- Elméletileg lehetséges, de gyakorlatilag lehetetlen. Az UUID v4 2^122 lehetséges értékkel rendelkezik (5,3 × 10^36). 100 éven keresztül másodpercenként 1 milliárd UUID-t kell generálnia, hogy 50%-os esélye legyen egyetlen ütközésre.
- Mikor használjam az UUID-ket az automatikus növekményes azonosítókkal szemben?
- Az UUID-k jobbak az elosztott rendszerekben, az offline alkalmazásokban, és amikor nem szeretné, hogy az azonosítók információkat (például a felhasználók számát) fedjenek fel. Az automatikus növelés egyszerűbb, kompaktabb és gyorsabb az adatbázis indexeléséhez.
- Ezek az UUID-k kriptográfiailag biztonságosak?
- Ez az eszköz a crypto.getRandomValues() függvényt használja, amely kriptográfiailag biztonságos véletlenszámokat biztosít. Az UUID v4 alkalmas munkamenet-jogkivonatokhoz és azonosítókhoz, de nagy biztonságú alkalmazások esetén fontolja meg a célra épített tokengenerátorokat.
- Mi a helyzet az UUID v5-tel vagy v7-tel?
- A v5 determinisztikusan egy névtéren belüli névből származtatja az UUID-t (hasznos a tartalomhoz címezhető azonosítókhoz). A v7 (újabb, 2022) egy ezredmásodperces időbélyeg előtagja a lexikográfiai időrendhez. Ez a generátor a v4-re összpontosít; adott verziók hozzáadhatók, ha szükséges.
- Az UUID-k megkülönböztetik a kis- és nagybetűket?
- Specifikáció szerint nem – a nagy- és kisbetűk egyenértékűek. A legtöbb generátor alapértelmezés szerint kisbetűt ír elő. Az összehasonlítás során nem kell megkülönböztetni a kis- és nagybetűket.
- A generálás megtörtént a böngészőmben?
- Igen. Az UUID-ket kliensoldalon generálják böngésző titkosítási API-k segítségével.
- Rendezhetem az UUID-ket létrehozási idő szerint?
- Nem v4-hez – a véletlenszerű struktúrának nincs időrendje. Időben rendezhető UUID-k esetén használja a v7-et (vagy korábbi v1-et, ha elfogadja az adatvédelmi vonatkozásokat).
Related Articles
DeveloperEssential Developer Tools: JSON, Base64, RegEx, and More
A comprehensive overview of the developer utilities every programmer should know, from data format converters to encoding tools.
9 min readDeveloper & SecurityHashing, Encryption, and Encoding Explained: A Developer's Security Guide
Understand the differences between hashing, encryption, and encoding. Learn when to use MD5, SHA-256, Base64, AES, and other cryptographic tools in your applications.
10 min readData & ProductivitySpreadsheet & Data Conversion Guide: Excel, CSV, JSON, and More
Learn how to convert between spreadsheet and data formats like Excel, CSV, JSON, and XML. Practical tips for handling data migration, cleaning, and transformation.
10 min readPrivacy & TechnologyWhy Browser-Based Tools Are the Future: No Installs, No Uploads, No Risk
Discover why browser-based tools are replacing desktop software and cloud uploads. Learn how client-side processing keeps your files private while delivering powerful functionality.
7 min read