UUID jako pomocník v datové analytice

UUID je stejně unikátní, jako například otisk prstu. Jedná se o 128bitový řetězec určený k identifikaci napříč všemi platformami, aplikacemi, zařízeními a vesmíry. Přiřazením parametru UUID lze velmi rychle a snadno identifikovat chování uživatelů.

V moderní webové a datové analytice vyvstává zásadní otázka, a to otázka sledování uživatelského chování na základě unikátního ID. Koncept unikátního ID můžete znát především ve webové analytice pod označením „user_id„. Jedná se o koncept kdy váš web nebo aplikace je schopná vydávat do analytických a reklamních systémů jednoznačný identifikátor uživatelů. Tato problematika se dotýká nejen tolik probíraného soukromí uživatelů a samotného parametru “user_id”, ale současně generování “anonymous id”, případně “cookie id”. Implementace unikátního ID pro vaše uživatele a zákazníky je na vás jako provozovateli. Je asi jasné, že než generovat tři různá ID, nastupuje jako pomocník právě tzv. UUID nebo-li Universal unique identifier

Co je vlastně UUID?

UUID je univerzální identifikátor, který lze použít jako zástupný parametr pro výše zmíněné situace. Jedná se o řetězec, který je přiřazený konkrétnímu datovému prvku, a to především pro účely identifikace. 

Hlavním rozdílem mezi UUID a běžnými identifikátory je ten, že UUID je univerzálně jedinečný. Není tedy pravděpodobné, že se setkáme se situací dvou stejných hodnot v rámci UUID. Tato unikátnost nám posléze zajistí snazší identifikaci konkrétních datových prvků napříč platformami, aplikacemi, systémy a databázemi bez ztráty konzistence při analýze dat.

UUID vs Cookie

Druhou možností proti UUID je použití cookies třetích stran ke shromažďování dat z prohlížečů. Cookie je část datového řetězce, který je uložen ve webovém prohlížeči uživatele. V případě, že se cookie data uloží přímo do interního úložiště zařízení uživatele, lze jej pak sledovat a měřit napříč webovými stránkami po celou dobu procházení.

Hlavní problémem v případě cookies je ale ochrana soukromí uživatelů. Mnoha uživatelům, jež si tato rizika uvědomují, je poměrně nepříjemné sdílení svých dat s třetí stranou. Zde vzniká dodatečný problém, a to je užití oněch uživatelský dat po jejich poskytnutí. I z tohoto důvodu stále více webových prohlížečů blokuje cookies třetích stran, aby byla data uživatelů chráněna.

V tuto chvíli právě přichází metoda UUID, nebo-li identifikátor neobsahující žádné osobní identifikační údaje uživatelů (PII – Personal identifiable information). Veškeré údaje o procházení jsou anonymní, čímž chrání soukromí uživatelů. UUID je generován na základě čísla zařízení a časové hodnoty, proto jsou tak jedinečná a proto nelze identifikovat identitu uživatele pouze na základě UUID.

Technická stránka UUID

UUID je zkratka pro univerzální unikátní identifikátor, což je 128bitové číslo, které je vytvořeno tak, aby bylo jedinečné pro každou instanci. UUID se skládá z 32 hexadecimálních číslic, které jsou rozděleny do pěti skupin oddělených pomlčkami. Například: 123e4567-e89b-12d3-a456-426614174000.

Pravidla pro tvorbu a používání UUID jsou obsažena v dokumentu s názvem RFC 4122. Existuje několik verzí a variant UUID, které používají různé metody generování, jako je náhodné číslo, čas a MAC adresa. Cílem UUID je zajistit univerzální jednoznačnost identifikátorů bez potřeby centrální autority.

Verze UUID

UUID má několik verzí, níže jsme představili 5 verzí, které existují:

Verze 1 – Časová – Tato verze kombinuje aktuální čas, sekvenci hodin a hodnotu konkrétního zařízení, nejčastěji MAC adresu.

Verze 2 – Zabezpečená DCE – Jedná se o jakýsi upgrade 1. Verze za použití ​​Distributed Computing Environment (DCE)

Verze 3 – MD5 – Tato verze používá MD5 hashování “namespace” a “name”. Následně generování UUID se stejnými parametry vytvoří identický výstup. Metoda MD5 tedy poskytuje reprodukovatelné výsledky.

Verze 4 – Náhodné – Jak název naznačuje, jedná se o zcela náhodně generované číslo hostitele. Tato metoda je v současnosti hojně využívána, protože je jednoduchá a zároveň pravděpodobnost dvou identických hodnot je prakticky nulová

Verze 5 – SHA-1 – Obdoba 3. Verze, jen s tím rozdílem, že se používá algoritmus SHA-1, místo MD5.

Pro generování UUID lze použít tento nástroj: Online UUID Generator Tool

Příklad verze 1:

847da290-165b-11ee-be56-0242ac120002
847da52e-165b-11ee-be56-0242ac120002
847da8c6-165b-11ee-be56-0242ac120002
847daa10-165b-11ee-be56-0242ac120002
847dab46-165b-11ee-be56-0242ac120002
847dac72-165b-11ee-be56-0242ac120002
847dad8a-165b-11ee-be56-0242ac120002
847daea2-165b-11ee-be56-0242ac120002
847dafba-165b-11ee-be56-0242ac120002
847db33e-165b-11ee-be56-0242ac120002

Příklad verze 4:

880eb804-a10e-40b9-ad47-f672317983ab
c094796e-1954-48c4-bfaa-f07e62b52302
76f6bb72-5f16-415d-af7f-7d9e4ff63bf5
bbeec6fe-4bc1-43a9-b3b9-3c8fc3f7dd77
eb5738e6-460e-42cd-8c50-8c9b6b358a1e
63bd4d45-8f79-4229-9d36-fff4e442db3c
eb84409c-2d20-472b-af58-69e1638d5035
0922baa6-3991-409a-8336-3dbc2fc1abd6
e5953fd1-f13d-4a8d-a8fe-c09da8875cdf
28b98e86-10a2-4521-b456-00a5ba6ee0f8

Příklad implementace

V následujícím příkladu lze vidět implementaci UUID verze 4, tedy zcela náhodně generovaného čísla na základě hostitele.

Základní funkce

crypto.randomUUID()

Implementace

<html>
 <head>
 </head>
 <body>
   <script>
      console.log("Random UUID -> " +crypto.randomUUID());
      console.log("Random UUID -> " +crypto.randomUUID());
      console.log("Random UUID -> " +crypto.randomUUID());
      console.log("Random UUID -> " +crypto.randomUUID());
   </script> 
 </body>
</html>

Zdroje: 

Přejít nahoru