Retour au blog

Qu’est-ce que l’empreinte Canvas ? Principe, détection et protection

L’empreinte Canvas est l’une des techniques d’empreinte de navigateur les plus courantes. Les sites web l’utilisent pour reconnaître les appareils et suivre les utilisateurs. Ce guide explique son fonctionnement, ses différences avec d’autres empreintes, comment la détecter et comment mieux protéger sa vie privée.

Chaque clic effectué pendant la navigation, chaque mouvement de souris, le modèle de votre appareil et la version de votre système d’exploitation peuvent être combinés par un site web pour former un identifiant unique : c’est ce que l’on appelle une empreinte de navigateur. Parmi les nombreuses techniques de fingerprinting, l’empreinte Canvas est l’une des plus courantes et des plus stables. Elle est invisible pour l’utilisateur, mais les sites web l’emploient depuis longtemps pour reconnaître leurs visiteurs.

Qu’est-ce que Canvas ?

Canvas est un élément de dessin fourni par HTML5, comparable à une toile vierge intégrée à une page web. Les développeurs peuvent utiliser JavaScript pour y dessiner des formes, du texte et des images afin de créer des graphiques, des jeux, du traitement d’image et de nombreux autres effets visuels. Canvas se trouve derrière une grande partie des interactions et animations que l’on rencontre sur le web moderne.

Comment une empreinte Canvas est-elle générée ?

Même si plusieurs appareils doivent « dessiner le même graphique », le résultat n’est pas parfaitement identique. Le processus de rendu dépend en effet du matériel et du logiciel :

  • Carte graphique et pilotes : Le rendu est effectué par le GPU, et les différentes cartes et pilotes traitent légèrement différemment l’anticrénelage, les dégradés et les couleurs ;
  • Système d’exploitation : Windows, macOS et Linux diffèrent dans le rendu des polices et l’implémentation des interfaces graphiques ;
  • Navigateur et moteur : Les navigateurs n’implémentent pas tous la Canvas API de la même manière ;
  • Écran et réglages colorimétriques : L’espace colorimétrique, le gamma et d’autres paramètres peuvent également influencer le résultat final.

En pratique, un site demande au navigateur du visiteur, au moyen d’un script, de dessiner le même contenu dans un Canvas, généralement un mélange de formes et de texte. Le contenu du Canvas est ensuite converti en données d’image, puis un hash est calculé. Comme le rendu varie d’un appareil à l’autre, ce hash devient une « empreinte d’appareil » relativement stable.

Processus complet transformant les différences de pixels du rendu Canvas en un signal de hash de l’appareil

Pour comprendre à quel point ces différences peuvent être fines : un même graphique affiché sur deux appareils peut ne différer que de quelques pixels sur des contours anticrénelés, tout en produisant des hash totalement différents, suffisants pour distinguer les appareils.

À quoi sert l’empreinte Canvas ?

  • Identification et suivi : Un site peut mémoriser votre appareil grâce à son empreinte Canvas même si vous n’êtes pas connecté, et relier votre activité entre plusieurs pages, voire entre plusieurs sites ;
  • Lutte contre la fraude et gestion des risques : Les plateformes d’e-commerce, de paiement et les réseaux sociaux peuvent utiliser l’empreinte Canvas comme l’un des signaux de risque permettant de repérer des comportements inhabituels, tels que les inscriptions en masse ou le partage de comptes ;
  • Ciblage publicitaire : Certains réseaux publicitaires s’en servent pour établir des profils comportementaux entre plusieurs sites.

Il faut toutefois préciser qu’une empreinte Canvas ne permet généralement pas, à elle seule, de déterminer « qui vous êtes ». Elle constitue plutôt un signal parmi de nombreux autres. Associée à l’adresse IP, au User-Agent, au fuseau horaire, aux polices installées et à d’autres informations, sa capacité d’identification augmente fortement.

Différences entre les empreintes Canvas, WebGL et de polices

Ces trois techniques appartiennent à la famille des empreintes fondées sur les différences de rendu des appareils, mais leurs sources sont différentes :

  • Empreinte Canvas : Provient des différences observées dans le rendu 2D d’un Canvas ;
  • Empreinte WebGL : Provient du rendu graphique 3D. Les sites peuvent lire certains paramètres de rendu de la carte graphique, par exemple le fournisseur WebGL et la chaîne du moteur de rendu, pour reconnaître un appareil ;
  • Empreinte de polices : Détecte la liste des polices installées afin d’inférer le système d’exploitation et l’appareil.

Ces signaux sont souvent combinés afin de constituer les « caractéristiques de l’environnement de l’appareil » utilisées par les systèmes de contrôle des risques des sites web.

Comment vérifier sa propre empreinte Canvas ?

Vous pouvez utiliser des sites publics de test d’empreintes tels que BrowserScan ou PixelScan. Une recherche sur « test d’empreinte de navigateur » permet également de trouver des outils similaires. Ces sites affichent généralement des informations sur Canvas, WebGL, les polices, le fuseau horaire et d’autres empreintes. Si le résultat indique qu’une empreinte Canvas existe ou affiche un hash stable, cela signifie que votre appareil peut être marqué de cette manière. Les résultats fournis par les sites de test tiers sont toutefois uniquement indicatifs et ne constituent pas une décision officielle d’une plateforme.

Comment un utilisateur ordinaire peut-il se protéger ?

Il est difficile d’éliminer complètement l’empreinte Canvas, car Canvas est une fonctionnalité normale du navigateur. Il est néanmoins possible de réduire le niveau de suivi :

  • Utiliser un navigateur axé sur la confidentialité ou activer le mode de confidentialité/protection stricte contre le suivi ;
  • Installer des extensions anti-fingerprinting capables de bloquer la lecture du Canvas ou d’y injecter du bruit ;
  • Effacer régulièrement les cookies et les données des sites afin de limiter les associations à long terme entre l’empreinte et l’activité des comptes ;
  • Maintenir le système et le navigateur à jour, car les versions récentes intègrent davantage de protections contre le suivi par empreinte.

Que faire lorsqu’il faut gérer plusieurs environnements professionnels ?

Dans les opérations transfrontalières et la gestion de plusieurs comptes, la problématique est différente. L’objectif d’une équipe n’est pas de « se cacher », mais de faire fonctionner chaque compte professionnel dans un environnement stable et contrôlable et d’éviter les faux positifs dus aux interférences entre caractéristiques d’appareil.

PurpleMark permet de configurer des paramètres d’empreinte tels que Canvas, WebGL et les polices lors de la création d’un environnement de navigateur. Différents environnements peuvent ainsi présenter des caractéristiques d’appareil distinctes tout en conservant des paramètres cohérents au sein de chaque environnement. Chaque boutique ou compte peut donc conserver un « profil d’appareil » stable dans la durée au lieu de changer à chaque ouverture. Il faut souligner que les paramètres d’empreinte relèvent de la configuration de l’environnement. La conformité réelle de l’activité dépend toujours du respect des politiques des plateformes utilisées : un outil de gestion d’environnements ne peut et ne doit pas servir à usurper une identité ou à contourner les règles d’une plateforme.

Questions fréquentes

Une empreinte Canvas peut-elle identifier une personne de façon unique ? Rarement à elle seule. Il s’agit généralement d’un signal parmi d’autres, dont la capacité d’identification augmente lorsqu’il est combiné avec l’adresse IP, les informations système et les données comportementales.

Désactiver JavaScript empêche-t-il l’empreinte Canvas ? Cela peut bloquer la collecte sur la plupart des sites, mais de nombreux sites ne fonctionneront plus correctement. Les navigateurs axés sur la confidentialité et les extensions anti-fingerprinting constituent en général un meilleur compromis.

L’empreinte Canvas est-elle un virus ? Non. Il s’agit d’un comportement normal de scripts de sites web, et non d’un logiciel malveillant. Elle implique toutefois un suivi de la vie privée, ce qui explique les controverses qu’elle suscite.

Un résultat anormal sur un site de test d’empreintes signifie-t-il que mon appareil a un problème ? Pas nécessairement. Les outils de test utilisent des algorithmes et des bases de référence différents ; leurs résultats sont donc uniquement indicatifs. Ce qui compte réellement est l’état de votre compte sur la plateforme que vous utilisez.