Métriques de police & ClientRectsneutral
Running tests…
Les boîtes englobantes au sous-pixel du texte rendu via getBoundingClientRect() capturent police + GPU + lissage et hinting de l'OS. ~7,6 bits mesurés — l'un des vecteurs uniques les plus forts, piloté par le rastériseur OS + GPU donc fortement cross-browser. RFP arrondit les métriques — l'arrondi est lui-même détectable.
same value across browsersUniqueness: ~7,6 bits
Énumération de polices installéesneutral
Running tests…
L'ensemble des polices installées, sondé via la mesure des différences de largeur de repli, reflète l'OS, les logiciels (Office/Adobe) et la langue. Entropie élevée et très stable. Tor embarque un jeu fixe — une liste trop uniforme = Tor/RFP.
same value across browsersUniqueness: élevée, très stable
Rendu des emojineutral
Running tests…
Le hash des DOMRects d'un jeu d'emoji rendus en grande taille trahit l'OS et sa version : les jeux de glyphes diffèrent par fournisseur (Apple vs Noto vs Segoe). Fournie par la police emoji de l'OS donc cross-browser.
same value across browsersUniqueness: élevée, corrélée OS
Fuseau horaire & locale Intlneutral
Running tests…
Le fuseau (Intl.DateTimeFormat().resolvedOptions().timeZone), getTimezoneOffset() et le formatage nombre/date/devise localisent et différencient. Fait OS, cross-browser. Entrée clé du contrôle fuseau ↔ géoloc-IP — un des principaux indices d'incohérence VPN. Tor force UTC.
same value across browsersUniqueness: ~3–4 bits combinés
Langues préféréesneutral
Running tests…
navigator.languages + navigator.language : l'ordre de la liste est assez distinctif (~2–3 bits). Doit correspondre à l'en-tête Accept-Language et à la locale Intl — un désaccord est détectable.
same value across browsersUniqueness: ~2–3 bits
Résolution d'écranneutral
Running tests…
La taille d'écran et les marges UI (barre des tâches, chrome du navigateur) sont distinctives (~4–5 bits). Fait physique, cross-browser. Tor letterboxe vers des buckets de taille pour neutraliser cela.
same value across browsersUniqueness: ~4–5 bits
Ratio de pixels (devicePixelRatio)neutral
Running tests…
Le ratio pixels physiques:CSS (Retina=2, valeurs fractionnaires sur Windows mis à l’échelle) est distinctif (~1–3 bits). Doit cadrer avec la taille d’écran et les media queries de résolution.
same value across browsersUniqueness: ~1–3 bits
Profondeur, gamut & HDRneutral
Running tests…
screen.colorDepth ; color-gamut (srgb/p3/rec2020) et dynamic-range détectent les dalles HDR/large-gamut (~2–3 bits). HDR/P3 encore peu courant → forte distinctivité quand présent. Capacité de dalle, cross-browser.
same value across browsersUniqueness: ~2–3 bits
Profil de media queries CSSneutral
Running tests…
Le sondage de matchMedia énumère affichage + préférences : prefers-color-scheme, prefers-reduced-motion, prefers-contrast, forced-colors, pointer/hover (~3–5 bits agrégés). Préférences OS-level, donc cross-browser. RFP force thème clair / pas de reduced-motion — des valeurs uniformes signalent RFP.
same value across browsersUniqueness: ~3–5 bits agrégés
Voix de synthèse vocaleneutral
Running tests…
speechSynthesis.getVoices() liste les moteurs/voix TTS installés (OS + packs de langue + applications), trahissant l'OS, les langues et les logiciels. Voix fournies par l'OS donc cross-browser. Une liste vide/uniforme signale un durcissement (Brave/Tor).
same value across browsersUniqueness: modérée à élevée
Client Hints UA haute-entropie (JS)neutral
Running tests…
navigator.userAgentData.getHighEntropyValues() expose platform + platformVersion, architecture, bitness, model, fullVersionList — version exacte d'OS, architecture et modèle, redonnant ce que l'UA Reduction cachait. API Chromium uniquement ; absence = signal de moteur. Doit concorder avec WebGPU/platform/timezone.
same value across browsersUniqueness: significative (version OS + arch + modèle)
navigator.platform & vendorneutral
Running tests…
navigator.platform (MacIntel/Win32/Linux x86_64) indique la famille d'OS ; navigator.vendor distingue la famille de moteur ; navigator.oscpu (Firefox uniquement) trahit Firefox. Clés d'une incohérence courante : platform vs UA vs maxTouchPoints.
same value across browsersUniqueness: ~1–2 bits
Quota de stockageneutral
Running tests…
navigator.storage.estimate() renvoie quota (souvent une fraction du disque libre) et usage, modérément distinctif. Bucketisé dans les Chromium récents ; chaque navigateur le calcule différemment.
browser-specificUniqueness: faible à modérée