V moderní softwarové architektuře je potřeba jedinečně identifikovat záznamy, transakce a zdroje napříč distribuovanými sítěmi prvořadá. Universally Unique Identifier (UUID), v ekosystémech Microsoftu někdy označovaný jako Globally Unique Identifier (GUID), slouží přesně k tomuto účelu. Jde o 128bitový štítek, který zaručuje vysoký stupeň jedinečnosti v prostoru i čase. Na rozdíl od tradičních sekvenčních celočíselných ID typicky generovaných jedinou relační databází (jako auto-increment primární klíč) mohou UUID autonomně vytvářet libovolný uzel, mikroslužba nebo klientská aplikace v síti bez koordinace s centrální autoritou. Koncept původně vznikl v Apollo Network Computing System a později ho standardizovala Open Software Foundation (OSF) jako součást Distributed Computing Environment (DCE). Primárním cílem bylo umožnit distribuovaným systémům jedinečně identifikovat informace bez významné centrální koordinace. Tento decentralizovaný proces generování činí UUID nepostradatelnými v cloud-native aplikacích, architekturách mikroslužeb i offline-first mobilních aplikacích.
K pochopení mechaniky pomáhá podívat se na strukturu. Standardní UUID se reprezentuje jako 32znakový hexadecimální řetězec, rozdělený do pěti skupin oddělených pomlčkami, ve formě 8-4-4-4-12. To dává celkem 36 znaků (32 alfanumerických znaků a čtyři pomlčky). Kvůli tomuto obrovskému matematickému prostoru (2^128 možných kombinací, což je zhruba 3,4 × 10^38) je pravděpodobnost kolize — vygenerování stejného UUID dvakrát — astronomicky nízká. Ve skutečnosti byste potřebovali generovat 1 miliardu UUID každou sekundu po dobu asi 85 let, aby pravděpodobnost kolize dosáhla 50 %. Tento obrovský rozsah umožňuje vývojářům s jistotou generovat ID v odpojených stavech, například mobilní aplikaci pracující offline, která nakonec synchronizuje data s centrálním cloudovým serverem bez obav z konfliktů primárních klíčů.
Existují různé verze UUID k uspokojení specifických technických požadavků. UUID verze 1 (v1) spoléhá na MAC adresu počítače a aktuální časové razítko, což ho činí geograficky i časově jedinečným, ale může zavést obavy o soukromí, protože odhaluje hardwarovou adresu původního stroje. UUID verze 4 (v4) je čistě náhodné, generované pomocí kryptograficky zabezpečených pseudonáhodných generátorů čísel (CSPRNG). Díky čiré náhodnosti a absenci identifikovatelných metadat se v4 stalo de facto standardem většiny moderních webových aplikací. UUID verze 5 (v5) se generuje hašováním identifikátoru jmenného prostoru a konkrétního názvu pomocí SHA-1, což znamená, že stejný vstup předvídatelně vydá totéž UUID pokaždé, když se vygeneruje. Nedávno UUID verze 7 (v7) získalo obrovskou popularitu v komunitě softwarového inženýrství. Kombinuje časově uspořádanou hodnotu s náhodnými daty a je vysoce optimalizované pro indexování databází. Protože v7 UUID jsou sekvenčně řiditelná podle času, řeší masivní fragmentaci databází a degradaci výkonu vkládání historicky spojené s plně náhodnými v4 UUID.
Ať stavíte škálovatelné API, synchronizujete data napříč více vzdálenými zařízeními, nebo zajišťujete zabezpečené tokeny relací, použití správného typu UUID je zásadní. Pouhé generování ale nestačí. Musíte zajistit, že UUID vstupující do systému jsou strukturálně v pořádku, a právě zde se robustní a 100% bezplatný validační nástroj stává neocenitelnou součástí workflow vývojáře. Bez přísných kontrol je systém zranitelný vůči neočekávanému chování a poškození dat.