Matematyka dopasowywania urządzeń między sesjami
Matematyczne podstawy dopasowywania urządzeń mimo zmieniających się sygnałów — jak analiza oparta na AI ponownie łączy powracających użytkowników pomimo dryfu sygnałów.
Fingerprinting urządzeń mierzy się z fundamentalnym wyzwaniem: sygnały się zmieniają. Przeglądarki są aktualizowane, użytkownicy modyfikują ustawienia, czcionki są instalowane i usuwane. Ścisłe porównanie traktowałoby każdy zmieniony sygnał jako nowe urządzenie, niszcząc dokładność identyfikacji. Nasz system dopasowywania między sesjami rozwiązuje ten problem, wykorzystując techniki oparte na AI, które mierzą podobieństwo, zamiast wymagać dokładnej równości.
Problem: dryf sygnałów
Rozważmy urządzenie, którego odcisk palca pobrano wczoraj i które wraca dziś po aktualizacji przeglądarki. Ciąg user agent uległ zmianie. Obsługiwane są teraz dwie nowe funkcje CSS. Dodano rozszerzenie WebGL. Renderowanie canvas pozostaje identyczne (ten sam GPU, ten sam sterownik). Odcisk palca audio jest identyczny. Parametry WebGL są identyczne z wyjątkiem nowego rozszerzenia.
Przy dokładnym dopasowaniu urządzenie to nie zostałoby rozpoznane — łączny odcisk palca uległ zmianie. Intuicyjnie jednak wiemy, że to to samo urządzenie. Sygnały sprzętowe są identyczne, a zmiany w oprogramowaniu są spójne z aktualizacją przeglądarki. Nasz system dopasowywania między sesjami formalizuje tę intuicję.
Porównanie oparte na zbiorach dla sygnałów cech
Wiele sygnałów przeglądarki w naturalny sposób reprezentowanych jest jako zbiory: zbiór obsługiwanych funkcji CSS, zbiór dostępnych czcionek, zbiór rozszerzeń WebGL. Dla tych sygnałów mierzymy nakładanie się za pomocą metryk podobieństwa opartych na zbiorach. Dla dwóch zbiorów A i B obliczamy stosunek wspólnych elementów do wszystkich elementów.
Urządzenie z 45 funkcjami CSS wczoraj i 47 dziś (przy 44 wspólnych) ma wysoki wynik podobieństwa. To wystarcza, aby wskazać to samo urządzenie po aktualizacji przeglądarki. Zupełnie inne urządzenie może mieć wspólnych tylko 30 funkcji CSS, co daje znacznie niższy wynik podobieństwa. Próg między „tym samym urządzeniem” a „innym urządzeniem” jest uczony na oznaczonych danych.
Wydajne generowanie kandydatów
Obliczanie podobieństwa między każdą parą urządzeń byłoby przy dużej skali zaporowo kosztowne. Nasz system generowania kandydatów wykorzystuje zaawansowane techniki indeksowania, które z wysokim prawdopodobieństwem mapują podobne elementy do tego samego kubełka wyszukiwania, pozwalając nam znajdować potencjalne dopasowania w stałym czasie.
Podejście to eliminuje 99,9% porównań na etapie generowania kandydatów, dzięki czemu system pozostaje wydajny nawet przy miliardach profili urządzeń.
Analiza oparta na AI dla złożonych sygnałów
Niektóre sygnały nie rozkładają się schludnie na zbiory. Odciski palca canvas, wynik przetwarzania audio i wektory parametrów WebGL to złożone dane, do których proste porównanie zbiorów nie ma zastosowania. Dla tych sygnałów stosujemy analizę opartą na AI, która mapuje profile urządzeń do reprezentacji, w której podobne urządzenia leżą blisko siebie.
Model AI wychwytuje nieoczywiste zależności między sygnałami. Na przykład uczy się, że zmiana ciągu renderera WebGL z jednego modelu GPU na nieco ulepszoną wersję tego samego modelu oznacza aktualizację GPU na tej samej maszynie, podczas gdy zmiana na zupełnie innego producenta GPU oznacza całkowicie inne urządzenie.
Łączenie technik
Nasz system produkcyjny wykorzystuje wiele technik w kaskadzie. Najpierw wydajne generowanie kandydatów identyfikuje potencjalne dopasowania. Po drugie, porównanie oparte na zbiorach dostarcza precyzyjnej miary nakładania się dla sygnałów opartych na cechach. Po trzecie, analiza oparta na AI ocenia podobieństwo sygnałów zależnych od sprzętu. Ostateczny wynik pewności jest ważoną kombinacją wszystkich metod, z wagami dostrojonymi na oznaczonych danych.
Ta architektura kaskadowa jest zarazem dokładna i wydajna. Całkowity czas dopasowania powracającego użytkownika wynosi średnio poniżej 5 ms.