Nástroje UUID na ToolDeck pokrývají všechny hlavní formáty jedinečných identifikátorů na jednom místě. Kolekce zahrnuje: UUID v4 Generator pro náhodná kryptograficky silná ID; UUID v7 Generator pro primární klíče řaditelné podle časového razítka; UUID v1 Generator pro identifikátory založené na čase a MAC adrese; UUID v2 Generator pro starší DCE systémy; UUID v3 Generator pro deterministická MD5-based ID; ULID Generator pro kompaktní řaditelné řetězce; NanoID Generator pro krátké tokeny bezpečné pro URL; CUID Generator pro původní formát odolný vůči kolizím; CUID2 Generator pro jeho moderního nástupce; a UUID Decoder pro inspekci stávajících identifikátorů. Všechny nástroje běží zcela v prohlížeči pomocí Web Crypto API — žádná data nejsou přenášena na žádný server, účet není vyžadován.
Co jsou nástroje UUID a unikátních ID?
UUID (Universally Unique Identifier) je 128bitový identifikátor standardizovaný v RFC 9562 (dříve RFC 4122). Zapsaný jako 32 hexadecimálních znaků ve formátu 8-4-4-4-12 vypadá UUID takto: 550e8400-e29b-41d4-a716-446655440000. Standard definuje několik verzí, z nichž každá používá jinou strategii k zaručení jedinečnosti: náhodná čísla, časová razítka nebo deterministické hashování.
UUID byly navrženy tak, aby distribuované systémy mohly generovat identifikátory bez centrálního koordinátora. Ať přiřazujete primární klíč v PostgreSQL, generujete session token ve webové aplikaci nebo pojmenováváte soubor v objektovém úložišti — UUID umožňuje každému uzlu v systému vytvořit globálně jedinečné ID nezávisle, přičemž pravděpodobnost kolize je v praxi zanedbatelně nízká.
Kromě standardu UUID vzniklo několik alternativních formátů unikátních ID, které řeší konkrétní omezení: ULID a UUID v7 přidávají lexikografickou řaditelnost pro efektivitu databázových indexů; NanoID zmenšuje velikost pro URL a cookies; CUID2 upřednostňuje odolnost vůči kolizím na základě otisku prstu pro klientskou generaci s vysokým objemem.
Proč používat nástroje UUID na ToolDeck?
Nástroje UUID na ToolDeck běží zcela v prohlížeči. Žádná volání API, žádné serverové zpracování, žádná zaznamenaná data. Každý generátor používá Web Crypto API (crypto.getRandomValues) pro kryptograficky silnou entropii — stejný zdroj, který prohlížeče používají pro materiál TLS klíče.
🔐Kryptograficky silná entropie
Všechny generátory založené na náhodnosti (UUID v4, NanoID, CUID2) používají crypto.getRandomValues, nikoli Math.random. Výstup je vhodný pro případy použití citlivé na bezpečnost, jako jsou session tokeny a API klíče.
📦Všechny hlavní formáty ID na jednom místě
UUID v1 až v7, ULID, NanoID, CUID a CUID2 — všechny formáty, které vývojář potřebuje, s možností hromadného generování a kopírování jedním kliknutím.
🔍Dekódování a inspekce stávajících ID
UUID Decoder extrahuje verzi, variantu, časové razítko a pole uzlu z jakéhokoli UUID. Užitečné pro ladění, audit a porozumění starším ID v kódové základně.
⚡Bez nastavení, funguje offline
Bez instalace, bez registrace, bez závislostí za běhu. Otevřete stránku a generujte. Všechny nástroje fungují offline po načtení stránky — užitečné ve vzdušně izolovaných prostředích nebo omezených sítích.
Případy použití nástrojů UUID
Jedinečné identifikátory se vyskytují v každé vrstvě zásobníku. Zde je přehled, jak různé role využívají nástroje pro generování UUID:
Primární klíče databáze
Backend inženýři přiřazují UUID v4 nebo UUID v7 jako primární klíče v PostgreSQL, MySQL a MongoDB. Časový prefix UUID v7 udržuje řádky fyzicky seřazené na disku, čímž zamezuje dělení stránek při pracovních zátěžích s intenzivním vkládáním.
Frontend stav a ID komponent
Frontend vývojáři používají NanoID nebo UUID v4 ke generování stabilních React klíčů pro dynamicky vytvářené položky seznamu, dialog ID pro atributy přístupnosti ARIA a idempotency tokeny pro odesílání formulářů.
Distribuované event streamy
V systémech řízených událostmi každá událost potřebuje globálně jedinečné, řaditelné ID. DevOps a platformoví inženýři používají ULID nebo UUID v7, aby mohli Kafka konzumenti, agregátory logů a audit trails třídit podle času vytvoření bez sekundárního pole časového razítka.
Generování testovacích dat
QA inženýři hromadně generují dávky UUID pro naplnění testovacích databází realistickými, nesekvenčními ID. Deterministické UUID v3 nebo v5 jim umožňuje regenerovat stejné ID ze známého vstupu — užitečné pro reprodukovatelné testovací přípravky.
Korelační ID v mikroslužbách
Připojení UUID ke každému příchozímu HTTP požadavku a jeho propagace přes volání služeb (hlavička X-Request-ID) umožňuje distribuovaným sledovacím systémům korelovat logy napříč službami. UUID v4 je de facto standard pro korelaci požadavků.
Pojmenování prostředků a aktiv
Klíče objektového úložiště (S3, GCS, Cloudflare R2) a názvy souborů CDN aktiv často obsahují UUID, aby se předešlo kolizím mezipaměti a odhadování URL. Kompaktní 21znakový formát NanoID zkracuje délku URL ve srovnání s plnými 36znakovými UUID.
Referenční přehled verzí a formátů UUID
Následující tabulka porovnává všechny verze UUID s nejpoužívanějšími alternativami. Použijte ji k rychlé identifikaci formátu, který vyhovuje vašim požadavkům.
| Identifikátor | Algoritmus | Řaditelný | Deterministický | Nejlepší pro |
|---|
| UUID v4 | Náhodný (CSPRNG) | — | — | Obecná ID, session tokeny, primární klíče |
| UUID v7 | Unix ms časové razítko + náhodný | ✓ | — | Řaditelné primární klíče, ID distribuovaných událostí (RFC 9562) |
| UUID v1 | Časové razítko + MAC adresa | ✓ | — | Časově seřazená ID, jednouzlové systémy, kompatibilita se starými systémy |
| UUID v3 | Jmenný prostor + název + MD5 | — | ✓ | Reprodukovatelná ID ze známých vstupů (DNS, URL) |
| UUID v5 | Jmenný prostor + název + SHA-1 | — | ✓ | Stejné jako v3 se silnějším hashem; preferujte v5 před v3 |
| UUID v2 | Časové razítko + DCE UID/GID | ✓ | — | Starší prostředí POSIX/DCE; vyvarujte se v nových projektech |
| ULID | Časový prefix + náhodný | ✓ | — | Řaditelná ID, bezpečná pro URL, bez pomlček (26 znaků) |
| NanoID | Náhodný (CSPRNG), abeceda bezpečná pro URL | — | — | Krátká ID pro URL, cookies, HTML atributy (21 znaků) |
| CUID2 | Otisk prstu + časové razítko + náhodný | — | — | Velkosvazové klientské generování, odolné vůči kolizím |
UUID v3 a v5 jsou deterministické: stejný jmenný prostor + název vždy produkuje stejné UUID. Všechny ostatní formáty generují při každém volání novou hodnotu.
Jak vybrat správný nástroj UUID
Správný identifikátor závisí na vašich požadavcích na řaditelnost, velikost a determinismus. Použijte tohoto průvodce rozhodováním:
- 1
Pokud potřebujete obecné jedinečné ID bez zvláštních požadavků → UUID v4 Generator - 2
Pokud potřebujete ID, která se řadí chronologicky a jsou kompatibilní se standardem UUID → UUID v7 Generator - 3
Pokud potřebujete časově seřazená ID s vloženým časovým razítkem pro jednouzlové nebo nízce souběžné systémy → UUID v1 Generator - 4
Pokud potřebujete řaditelná ID bezpečná pro URL a bez pomlček → ULID Generator - 5
Pokud potřebujete kompaktní ID bezpečná pro URL kratší než plné UUID → NanoID Generator - 6
Pokud generujete velké množství ID na straně klienta a potřebujete silnou odolnost vůči kolizím → CUID2 Generator - 7
Pokud potřebujete formát CUID v1 pro kompatibilitu se stávajícími systémy postavenými na původní specifikaci → CUID Generator - 8
Pokud potřebujete deterministicky reprodukovat stejné ID z jmenného prostoru a názvu → UUID v3 Generator - 9
Pokud pracujete se starými DCE nebo POSIX systémy vyžadujícími identifikátory v2 → UUID v2 Generator - 10
Pokud máte existující UUID a chcete zkontrolovat jeho verzi, variantu nebo časové razítko → UUID Decoder
UUID v7 i ULID poskytují časové prefixy s přesností na milisekundy a lexikografickou řaditelnost. Klíčový rozdíl: UUID v7 používá standardní formát UUID (8-4-4-4-12, 36 znaků) pro maximální kompatibilitu s ekosystémem, zatímco ULID používá vlastní kódování Base32 (26 znaků, bezpečné pro URL, bez pomlček). Pokud vaše databáze, ORM nebo framework nativně podporuje UUID sloupce, preferujte UUID v7. Pokud potřebujete kratší ID bez omezení frameworku, ULID je kompaktnější.
Nejčastěji kladené dotazy
Co je UUID?
UUID (Universally Unique Identifier) je 128bitová hodnota standardizovaná v RFC 9562. Zapisuje se jako 32 hexadecimálních číslic v pěti skupinách oddělených pomlčkami: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Standard definuje několik verzí s různými strategiemi jedinečnosti — náhodná (v4), založená na časovém razítku (v1, v7) nebo deterministická na základě názvu (v3, v5).
Jaký je rozdíl mezi UUID v4 a UUID v7?
UUID v4 vyplňuje všech 122 pevně nestanovených bitů náhodnými daty z kryptograficky bezpečného zdroje. UUID v7 kóduje 48bitové unixové časové razítko v milisekundách do prvních 48 bitů, za nimiž následují náhodné bity. Výsledek: UUID v7 se řadí chronologicky jako prostý řetězec, čímž udržuje databázové B-tree indexy seřazené při vkládání. UUID v7 bylo přidáno v RFC 9562 (duben 2024) a je preferovanou volbou pro nové primární klíče databáze.
Jsou hodnoty UUID v4 kryptograficky bezpečné?
Hodnoty UUID v4 jsou generovány pomocí kryptograficky bezpečného pseudonáhodného generátoru čísel (CSPRNG). Jsou vhodné jako neodhadnutelné tokeny — session ID, odkazy pro obnovení hesla apod. UUID samo o sobě však není tajemstvím: nemá HMAC, vypršení platnosti ani vazbu na konkrétního uživatele. Zacházejte s UUID jako s neprůhledným identifikátorem, nikoli s autentizačními přihlašovacími údaji.
Mohou dva různé systémy vygenerovat stejné UUID?
Pravděpodobnost kolize pro UUID v4 je přibližně 1 z 2^122 na pár. Pro 50% šanci na jakoukoli kolizi byste museli vygenerovat přibližně 2,7 × 10^18 UUID — daleko za tím, co jakýkoli reálný systém produkuje. UUID v1 a v7 navíc vkládají časové razítko a/nebo náhodné bity, čímž je náhodná kolize ještě nepravděpodobnější. Pro všechny praktické účely se UUID ze samostatných systémů nesrazí.
Proč mají UUID 36 znaků?
UUID je 128 bitů = 16 bajtů. Zakódováno jako hexadecimální je to 32 znaků. Formát UUID přidává 4 pomlčky na pevných pozicích (za skupinami 8, 4, 4 a 4 hexadecimálních číslic) pro zlepšení čitelnosti a snadnou vizuální identifikaci bitů verze a varianty, čímž vzniká celkem 36 znaků. Pomlčky nenesou žádná data.
Co je ULID a jak se liší od UUID?
ULID (Universally Unique Lexicographically Sortable Identifier) je 128bitový identifikátor kódovaný v Crockford Base32 (26 znaků, nerozlišuje velká/malá písmena, bez pomlček). Prvních 48 bitů kóduje unixový čas v milisekundách; zbývajících 80 bitů je náhodných. ULID se jako prostý řetězec řadí správně a jsou kompaktnější než UUID. Nejsou součástí UUID RFC — používají jiné kódování a postrádají pole verze/varianty UUID.
Mám jako primární klíče používat UUID nebo automaticky se zvyšující celá čísla?
Automaticky se zvyšující celá čísla jsou sekvenční, kompaktní a vhodná pro indexy, ale vyžadují ke svému přidělování centrální koordinátor (databázi) — což selhává v distribuovaných systémech a prozrazuje počty řádků. UUID (zejména v7 nebo ULID) lze generovat na straně klienta bez přístupu k databázi, což umožňuje optimistická vkládání a distribuované zápisy. Kompromisem je úložiště (16 bajtů vs. 4–8 bajtů) a mírně nižší lokalita indexu u náhodných UUID (v4). UUID v7 a ULID odstraňují problém lokality indexu pomocí časových prefixů.
Jaký je rozdíl mezi UUID v3 a UUID v5?
UUID v3 i v5 jsou deterministické: vždy produkují stejné UUID pro stejný pár jmenný prostor + název, čímž jsou užitečné pro generování reprodukovatelných ID pro věci jako DNS záznamy, URL nebo identifikátory objektů. Jediný rozdíl je hašovací algoritmus: v3 používá MD5 (128 bitů, starší), v5 používá SHA-1 (160 bitů, zkrácený na 128 bitů). Pro nové projekty preferujte UUID v5 — SHA-1 je silnější než MD5, i když žádná verze není používána jako kryptografický hash.