Glossaire

Qu'est-ce que le Browser Fingerprinting ?

Le browser fingerprinting est une technique utilisée par les sites web pour identifier et suivre les visiteurs en collectant un ensemble d'attributs du navigateur (User-Agent, taille d'écran, polices, plugins, hash canvas, signatures WebGL, etc.) et en les combinant en une signature unique.

Comprenez les signaux collectés par le fingerprinting moderne, pourquoi une «nouvelle IP» seule ne suffit pas à paraître humain, et comment garder l'empreinte de votre scraper propre.

Expliqué

Le fingerprinting de navigateur collecte un ensemble d'attributs de votre navigateur et les transforme en un identifiant stable. Même sans cookies, la combinaison du User-Agent, de la langue, du fuseau horaire, de la résolution d'écran, des polices installées, du hash de rendu canvas, de la chaîne de rendu WebGL, de l'empreinte du contexte audio et de dizaines d'autres signaux est suffisamment unique pour identifier un seul navigateur entre les sessions avec une précision surprenante.

Les deux grandes catégories sont le fingerprinting passif et actif. Le fingerprinting passif lit les attributs que le navigateur expose implicitement : User-Agent, Accept-Language, indices client sec-ch-ua. Le fingerprinting actif exécute du JavaScript qui sonde le moteur de rendu du navigateur, le moteur audio, le GPU et les caractéristiques de timing, puis calcule un hash.

Pour le scraping et l'automatisation, le fingerprinting est important car la rotation d'IP seule ne suffit pas. Si vous faites tourner 10 000 IP résidentielles mais que chaque requête porte la même empreinte canvas et le même User-Agent par défaut de Playwright, la destination peut corréler les 10 000 requêtes à la même instance de scraper. Les systèmes anti-bot modernes (Cloudflare, Akamai, PerimeterX, Datadome) utilisent tous intensivement le fingerprinting en parallèle de l'analyse IP.

Comment ça fonctionne

Lorsque votre navigateur charge une page avec du code de fingerprinting, le script énumère les propriétés du navigateur (UA, langue, plugins, écran, fuseau horaire), dessine un canvas caché avec du texte et des dégradés spécifiques puis relit les pixels rendus (empreinte canvas), crée un contexte WebGL et lit les chaînes du fournisseur GPU et du moteur de rendu (empreinte WebGL), génère un son avec l'API audio et lit le spectre (empreinte audio), et chronomètre des opérations spécifiques (math.tan, dérive de performance.now) pour les signaux matériels.

Toutes ces valeurs sont hachées en un identifiant d'empreinte et renvoyées au serveur. Parce que la combinaison d'une douzaine de ces attributs est très unique, l'identifiant résultant identifie de manière stable le navigateur entre les cookies effacés, les nouvelles sessions et les différentes IP.

Types

Fingerprinting Passif

Lit les attributs que le navigateur expose implicitement via les en-têtes HTTP et les variables globales JavaScript : User-Agent, Accept-Language, indices sec-ch-ua, taille d'écran, fuseau horaire, langue. Peu coûteux, fonctionne partout.

Empreinte Active / Canvas

Exécute du JavaScript qui dessine sur un canvas caché et lit le hash des pixels en retour. Différentes combinaisons GPU/pilote produisent un rendu subtilement différent, rendant les empreintes canvas très stables par appareil.

Empreinte WebGL

Sonde le contexte WebGL pour le fournisseur GPU, la chaîne de rendu et les extensions prises en charge. Les navigateurs headless et les GPU virtualisés produisent souvent des signatures distinctives.

Empreinte Audio

Génère une forme d'onde audio avec l'API AudioContext et lit le spectre de fréquences résultant. Le traitement audio diffère subtilement entre les systèmes d'exploitation et les pilotes audio, produisant un hash stable par appareil.

Empreinte TLS / Réseau (JA3, JA4)

Prend l'empreinte de la poignée de main TLS elle-même — liste de chiffrements, extensions, ordre ALPN, valeurs GREASE. Identifie le client HTTP sous-jacent (curl, Python requests, Playwright, etc.) avant même que la couche applicative n'ait une chance d'intervenir.

Cas d'utilisation courants

Défense anti-bot sur les pages de connexion, d'inscription et de formulaires
Déduplication de comptes (une empreinte = un utilisateur)
Score de fraude sur les flux financiers et d'achat publicitaire
Suivi des visiteurs récurrents sans cookies
Détection de scraper au niveau de la couche applicative
FAQ

Questions fréquentes Questions FAQ

Questions fréquentes sur browser fingerprinting.

Parce que les systèmes anti-bot analysent l'empreinte du navigateur, pas seulement l'IP. Si 10 000 requêtes proviennent de 10 000 IP différentes mais partagent toutes la même empreinte canvas, le même TLS JA3 et le même User-Agent, le système peut les corréler comme un seul robot. Il faut à la fois la rotation d'IP ET une hygiène des empreintes pour ressembler à de nombreux utilisateurs distincts.