Matematika za párováním zařízení napříč relacemi
Matematické základy párování zařízení navzdory měnícím se signálům — jak analýza řízená AI znovu propojí vracející se návštěvníky i přes drift signálů.
Fingerprinting zařízení čelí zásadní výzvě: signály se mění. Prohlížeče se aktualizují, uživatelé upravují nastavení, písma se instalují a odebírají. Striktní porovnání by každý změněný signál považovalo za nové zařízení, což by zničilo přesnost identifikace. Náš systém párování napříč relacemi to řeší pomocí technik řízených AI, které podobnost kvantifikují, místo aby vyžadovaly přesnou rovnost.
Problém: drift signálů
Představte si zařízení, které bylo fingerprintováno včera a dnes se vrací po aktualizaci prohlížeče. Řetězec user agenta se změnil. Nyní jsou podporovány dvě nové CSS funkce. Přibylo jedno WebGL rozšíření. Vykreslení canvasu zůstává identické (stejné GPU, stejný ovladač). Audio fingerprint je identický. WebGL parametry jsou identické až na nové rozšíření.
Při přesné shodě by toto zařízení nebylo rozpoznáno — kombinovaný fingerprint se změnil. Intuitivně ale víme, že jde o stejné zařízení. Hardwarové signály jsou identické a softwarové změny odpovídají aktualizaci prohlížeče. Náš systém párování napříč relacemi tuto intuici formalizuje.
Množinové porovnání signálů funkcí
Mnoho signálů prohlížeče se přirozeně reprezentuje jako množiny: množina podporovaných CSS funkcí, množina dostupných písem, množina WebGL rozšíření. U těchto signálů měříme překryv pomocí množinových metrik podobnosti. Pro dvě množiny A a B počítáme poměr sdílených prvků k celkovému počtu prvků.
Zařízení s 45 CSS funkcemi včera a 47 dnes (se 44 společnými) má vysoké skóre podobnosti. To stačí k označení stejného zařízení po aktualizaci prohlížeče. Zcela jiné zařízení může sdílet jen 30 CSS funkcí, což dává mnohem nižší skóre podobnosti. Práh mezi „stejným zařízením“ a „jiným zařízením“ se učí z označených dat.
Efektivní generování kandidátů
Výpočet podobnosti mezi každou dvojicí zařízení by byl v měřítku neúnosně nákladný. Náš systém generování kandidátů využívá pokročilé indexovací techniky, které s vysokou pravděpodobností mapují podobné položky do stejného vyhledávacího koše, což nám umožňuje najít potenciální shody v konstantním čase.
Tento přístup eliminuje 99,9 % porovnání ve fázi generování kandidátů, díky čemuž je systém efektivní i u miliard profilů zařízení.
Analýza složitých signálů řízená AI
Některé signály se do množin nerozkládají čistě. Canvas fingerprinty, výstup audio zpracování a vektory WebGL parametrů jsou složitá data, kde jednoduché množinové porovnání neplatí. U těchto signálů využíváme analýzu řízenou AI, která mapuje profily zařízení do reprezentace, kde jsou si podobná zařízení blízko.
AI model zachycuje nezjevné vztahy mezi signály. Například se naučí, že změna řetězce WebGL rendereru z jednoho modelu GPU na mírně vylepšenou verzi stejného modelu představuje upgrade GPU na stejném stroji, zatímco změna na zcela jiného výrobce GPU představuje úplně jiné zařízení.
Kombinace technik
Náš produkční systém využívá více technik v kaskádě. Nejprve efektivní generování kandidátů identifikuje potenciální shody. Zadruhé množinové porovnání poskytuje přesnou míru překryvu pro signály založené na funkcích. Zatřetí analýza řízená AI hodnotí podobnost signálů závislých na hardwaru. Výsledné skóre spolehlivosti je vážená kombinace všech metod, s vahami vyladěnými na označených datech.
Tato kaskádová architektura je zároveň přesná i efektivní. Celkový čas párování vracejícího se návštěvníka je v průměru pod 5 ms.