UUID (Universally Unique Identifier)

UUID je 128bitové číslo používané k jednoznačné identifikaci informací v počítačových systémech bez nutnosti centrální správy. To znamená, že kdokoliv může vygenerovat UUID a s extrémně vysokou pravděpodobností bude tento identifikátor unikátní na celém světě.

V textové podobě se UUID zapisuje jako řetězec 32 hexadecimálních číslic rozdělených pomlčkami do pěti skupin (např. `550e8400-e29b-41d3-a456-426614174000`).

Proč používáme UUID místo prostých čísel?

V našem distribuovaném prostředí (pobočky, cloudy, edge zařízení) mají UUID zásadní výhody:

Decentralizace: Naše IoT zařízení mohou generovat identifikátory pro naměřená data lokálně, aniž by se musela dotazovat centrální databáze na další volné ID.

Slučování dat: Při spojování databází z různých VPS nehrozí kolize (duplicity) identifikátorů.

Anonymita: UUID neprozrazuje informaci o počtu záznamů v systému, což je výhodné pro bezpečnost.

Využití v naší společnosti

UUID prostupuje všemi vrstvami naší IT architektury:

1. Vývoj a databáze

Náš Vývojový tým používá UUID jako primární klíče v databázích pro:

Identifikaci uživatelů a jejich relací v rámci WWW aplikací.

Propojení úkolů mezi různými systémy (např. svázání ID v Jira s konkrétním commitem ve VCS).

2. Správa infrastruktury

IT Podpora se s UUID setkává při správě hardwaru a virtualizace:

Diskové oddíly: Používáme UUID pro montování disků v Linuxových serverech, aby nedošlo k záměně při změně pořadí kabelů.

Virtuální stroje: Každý VM v našem VPC má své unikátní UUID pro správu v rámci VMM.

3. Sítě a komunikace

V rámci protokolu VoIP a síťových služeb:

Unikátní identifikace SIP relací a hovorů.

Identifikace objektů v rámci VNC relací a vzdálené správy.

Verze UUID, které nasazujeme

V závislosti na účelu volíme různé verze standardu:

UUID v1: Založeno na čase a MAC adrese zařízení (vhodné pro sledování chronologie).

UUID v4: Zcela náhodně generované (nejčastěji používané v našich webových aplikacích pro maximální soukromí).

UUID v5: Generované z názvu a jmenného prostoru pomocí SHA-1 (deterministické – pro stejný vstup vždy stejné ID).

Bezpečnostní upozornění

Ačkoliv jsou UUID unikátní, v rámci kybernetické bezpečnosti pamatujte:

1. **UUID není heslo:** UUID v4 je sice těžké uhodnout, ale samo o sobě by nemělo sloužit jako jediný autorizační prvek.
2. **Logování:** UUID jsou skvělá pro křížové vyhledávání v logách při řešení incidentů.

Tip pro vývojáře: Pokud generujete UUID v JavaScriptu pro naše frontendy, používejte standardní API `crypto.randomUUID()`, které je bezpečné a vysoce výkonné.

— Související stránky: ZIF, Vývojový tým, Kybernetická bezpečnost, IoT zařízení, Virtual Machine, Jira, VCS