Suivi cross-device : relier des sessions sans connexion
Comment notre algorithme d'identification des appareils connecte des sessions anonymes entre navigateurs et appareils grâce à la correspondance probabiliste de signaux et à l'analyse de graphes.
Lorsqu'un utilisateur visite votre site sur son ordinateur portable le matin et sur son téléphone l'après-midi, la plupart des plateformes d'analytique voient deux visiteurs totalement distincts. Notre algorithme d'identification des appareils peut relier ces sessions de manière probabiliste — sans exiger de connexion — en analysant le chevauchement des signaux et en construisant des graphes d'appareils.
Le problème du cross-device
L'empreinte numérique traditionnelle génère un identifiant unique par instance de navigateur. Chrome sur un ordinateur portable produit un identifiant ; Safari sur un iPhone en produit un autre. Même sur le même appareil, des navigateurs différents génèrent des empreintes différentes, car ils ont des user agents différents, une prise en charge des fonctionnalités différente et des caractéristiques de rendu différentes.
Mais les utilisateurs ne raisonnent pas en termes de navigateurs. Ils raisonnent en termes de sessions. Ils commencent un achat sur leur téléphone pendant le déjeuner et le terminent sur leur ordinateur portable à la maison. Ils se renseignent sur un produit sur leur tablette et l'achètent sur leur ordinateur de bureau. Pour la détection de la fraude et la personnalisation, comprendre que ces sessions appartiennent à la même personne est essentiel.
Correspondance probabiliste de signaux
Notre liaison cross-device est construite autour d'un graphe de personnes comportant trois types de nœuds : le visiteur (un profil de navigateur), l'appareil (la machine qui se trouve sous plusieurs profils de navigateur) et un identifiant haché dérivé d'une adresse e-mail ou d'un numéro de téléphone signés que votre propre application nous transmet. Les arêtes entre ces nœuds sont ce qui réunit deux sessions en une seule personne.
Délibérément absents de cette liste : l'adresse IP et l'ASN. Le réseau partagé est le signal tentant et le mauvais — un bureau, un campus ou un NAT au niveau de l'opérateur place des milliers de personnes sans lien entre elles derrière une même adresse, si bien qu'une arête fondée sur l'IP produit exactement le type de faux lien le plus coûteux à défaire. Les arêtes déterministes que nous utilisons, elles — même appareil, même identifiant haché, même racine canonique de visiteur — sont celles qu'un réseau partagé ne peut pas faire apparaître de toutes pièces.
Par-dessus vient une composante probabiliste bornée : les paires comportementales confirmées d'un visiteur peuvent être considérées comme des candidates au rattachement, plafonnées à un petit nombre par visiteur et uniquement au-dessus d'un seuil de confiance minimal. Elle élargit un cluster que les arêtes déterministes ont déjà ancré ; elle n'en démarre pas un à elle seule.
Construction du graphe d'appareils
Chaque lien confirmé ou de forte probabilité entre sessions crée une arête dans un graphe d'appareils. Le graphe relie les instances de navigateur à des nœuds d'appareil, et les nœuds d'appareil à des nœuds de personne. Avec le temps, à mesure que davantage de sessions s'accumulent, le graphe devient de plus en plus précis.
La construction du graphe adopte une approche conservatrice. Une arête déterministe — le même appareil résolu sous deux profils de navigateur, ou le même identifiant haché fourni pour deux comptes — crée le lien d'emblée. Tout ce qui est plus faible est traité comme une candidate et non comme un lien, doit franchir un seuil de confiance minimal et est plafonné pour qu'un seul visiteur ne puisse pas entraîner derrière lui un cluster illimité. Un visiteur ou un pont en quarantaine est ignoré purement et simplement plutôt que fusionné sur simple soupçon.
Applications à la détection de la fraude
La liaison cross-device est particulièrement puissante pour la détection de la fraude. Un fraudeur qui gère des comptes sur plusieurs profils de navigateur est identifié lorsque ces profils se résolvent au même appareil sous-jacent, ou lorsque le même identifiant signé apparaît derrière deux des comptes. Une carte de crédit volée utilisée sur un appareil qui n'a jamais été associé au graphe d'appareils du titulaire déclenche une alerte immédiate.
Nous avons observé des réseaux de fraude où un seul opérateur fait tourner des dizaines de machines virtuelles pour créer de faux comptes. Chaque machine virtuelle présente une empreinte de navigateur distincte, mais elles sont toutes hébergées sur le même matériel physique, et c'est la résolution d'appareil qui les ramène à une seule machine. Ce nœud d'appareil partagé est l'arête sur laquelle le graphe est construit : il révèle le réseau à partir d'un seul compte détecté, sans jamais faire appel à une adresse partagée.
Conception respectueuse de la vie privée
La liaison cross-device soulève des préoccupations légitimes en matière de vie privée. Notre approche les atténue par plusieurs choix de conception. Premièrement, la couche est désactivée par défaut : ce n'est pas quelque chose qui arrive avec un déploiement, elle est activée délibérément pour un espace de travail, et jusque-là aucun graphe de personnes n'est construit. Deuxièmement, la liaison se produit côté serveur et n'est jamais exposée au navigateur : le graphe des liens n'est pas lisible depuis le client, et le mode est défini de notre côté, non par quoi que ce soit que la page puisse envoyer. Troisièmement, l'arête d'identifiant n'existe que si votre propre application choisit de fournir une adresse e-mail ou un numéro de téléphone signés — nous ne la dérivons pas du visiteur. Quatrièmement, les utilisateurs peuvent bénéficier de transparence sur les appareils liés via votre interface de confidentialité.
Mesures de précision
Le compromis est délibéré et il favorise la précision plutôt que le rappel : nous préférons manquer un lien plutôt qu'en créer un faux. Cette préférence se lit dans la conception plutôt que dans un chiffre d'affiche — les arêtes déterministes créent les liens, les signaux faibles ne font qu'élargir des clusters déjà ancrés, les ponts en quarantaine sont ignorés et chaque cluster est plafonné. Un lien manqué vous coûte un schéma de fraude que vous auriez repéré plus tard par d'autres moyens. Un faux lien fusionne deux vrais clients en une seule personne, et cette erreur se propage à toutes les décisions prises ensuite.
Mesurez-le sur votre propre trafic avant de vous y fier. Le rappel cross-device dépend du nombre de vos utilisateurs qui s'authentifient réellement : l'arête d'identifiant est la plus forte dont on dispose, et elle n'existe que là où votre application la fournit.