Skip to content
All fingerprint checks
Navigator identity

the fields a real identity matcher keys on are reported together

Pim· Clearcote Research 2 min readCheck id blocking-key-plausibility

Contextual only. The bucket-key tuple is reported so it can be read as a set rather than as six unrelated rows elsewhere in the report.

What a detector infers

Measured against a deployed identity matcher, only a handful of fields broke an identity match when changed on their own: colour depth, device memory, touch support, colour gamut, the audio digest, and two engine intrinsics. Everything expensive did not.

Both canvas digests, all seven WebGL digests, the unmasked renderer strings, the detected font list and its per-family metrics, the screen box, the user agent, the locale and the timezone were all changed SIMULTANEOUSLY on one device and still resolved to the same visitor; adding two more hardware scalars on top was what finally broke it. That inverts the priority order most fingerprint work assumes.

The fields that make good bucket keys are the small, quantised, machine-lifetime ones — a tiny value set, hard to change without changing machine, and mostly not things a user-agent string can lie about — not the high-entropy digests that get the attention. This row exists to state that, because every other check in this audit asks whether the browser is internally consistent and none of them says which fields a matcher actually keys on.

Two members of the set cannot be moved at all: eval.toString().length and navigator.vendor are engine intrinsics, so a Chromium build reports 33 and a Google vendor string no matter what identity it presents — which puts a hard ceiling on any persona claiming a different engine family.

The row stays informational because judging whether a COMBINATION is one a real population produces needs population data, and that judgement is only worth making on a corpus clean enough to carry it.

How to resolve it

If a persona is meant to read as a different device, these are the fields that decide it — not the canvas and WebGL digests, which on a real matcher moved confidence by about 0.02 and did not mint a new visitor. Two of them are engine intrinsics and cannot be moved from a Chromium build at all.

Anatomy of a browser fingerprint: every signal, and why they must agree

Nearby checks in Navigator identity

See all 36 checks in Navigator identity
Who builds this test

Clearcote is a browser built for fingerprint coherence

It is a Chromium fork, maintained by the same people who wrote this reference. It ships as a compiled browser rather than as a stealth script injected into someone else's — which is a description of how it is built, and is not an argument about how it behaves on this check.

This audit takes no position on how Clearcote scores on Navigator identity checks, on this one, or anywhere else. It has no baseline corpus of other people's fingerprints to rank you against and no vendor scoreboard — nearly every check is self-referential, asking one browser the same question through two independent APIs and reporting whether both answers can be true at once. It runs identically on any browser, including ours. Run it on yours and read the result yourself.

See the other checks in Navigator identity — the family blocking-key-plausibility belongs to.