HomeLearn → Fingerprint drift

Fingerprint drift

Almost everything written about fingerprinting is about not being detectable — whether your canvas hash is unique, whether your GPU string looks real. That is the wrong half to worry about once an account exists. A site that has seen your account sign in has already stored what that device looked like, and the loudest thing you can do afterwards is show up as a different one. Not an unusual computer. A changed one.

Why a change is louder than an oddity

An unusual fingerprint puts you in a small bucket. A changed fingerprint on an existing session puts you in a specific, well-understood bucket that every consumer platform already has machinery for: this account is being accessed from hardware it has never used before. That machinery predates fingerprinting and exists for a good reason — it is the same check that catches a stolen password.

So the outcomes are the ones you would expect from a security system rather than an anti-bot one: a verification email, an SMS challenge, a request to confirm a device, a session dropped back to the login screen, or a hold on the account while someone looks at it. If you have ever had a profile that worked for weeks and then suddenly needed to re-verify, a device change is the first thing worth ruling out.

Real devices change too — but only in certain ways

The goal is not a fingerprint frozen in amber. A real computer's fingerprint moves constantly, and one that never moves at all is its own anomaly. What separates an ordinary change from a suspicious one is which parts moved, and how fast.

ChangeHow a real device behaves
Chrome versionGoes up every few weeks, forever. A version that never moves is the odd case.
Screen resolutionChanges when a monitor is plugged in, and changes back. Rarely, and not at random.
TimezoneChanges when you travel — together with the IP, not separately from it.
LanguageAlmost never. People do not switch their OS language.
GPU / CPU cores / memoryEffectively never. Hardware does not change under a running account.
Canvas / audio / WebGL hashesShift slightly with driver and browser updates; do not jump to an unrelated value.

Read that table as a list of what you can safely let move. A browser version that climbs is invisible. A graphics card that changes overnight, on an account that was signed in yesterday, is not — because there is no story for it. People do not swap GPUs between sessions.

What reissues an identity without looking like it

A profile's fingerprint is not stored field by field. It is derived — expanded from one stable seed into an operating system, a screen, a GPU, a locale and the noise that shapes canvas and audio readings. That design is what makes a profile the same machine every morning. It also means anything that changes an input to that expansion changes the output, including settings that do not look like they touch the fingerprint at all:

The trap in that list is that some of these look like no-ops. Opening a profile's settings and selecting the operating system it already reports feels like confirming a value, not changing one.

Measured: the no-op that was not one

We found this in our own generator, so it is worth being specific about rather than abstract. Every value in a Parallel fingerprint is drawn in sequence from the profile's seed. Choosing the operating system by hand skipped one draw in that sequence, which shifted every value after it.

Across 200 profiles, pinning each one to the operating system its seed had already chosen produced a different machine every single time:

OS on Auto    Windows  1920x1080  Intel UHD Graphics
OS pinned     Windows  1536x864   AMD Radeon RX 6600

Same profile, same operating system, different screen and a different graphics card. Nothing in the interface suggested anything had happened. Any site that had seen that profile before would have seen a new computer on the next launch.

This is fixed in v0.0.66: the draw happens either way and is discarded when an OS is pinned, so pinning the value a seed would have chosen anyway is now genuinely nothing. Profiles left on Auto were never affected and are byte-for-byte unchanged — we checked 300 of them against the previous version before shipping it.

We are writing it up because the general lesson outlives our bug: in any tool where the fingerprint is derived rather than stored, a setting that looks cosmetic can reissue the whole identity. If a change of setting is followed by an unexpected re-verification, that is worth treating as cause and effect rather than coincidence.

Keeping a profile stable

Related

A profile that stays the same computer

Parallel derives each profile from one stable seed, so its screen, GPU, locale and canvas noise are the same every morning — and settings that should change nothing now change nothing. Three profiles free, forever.

Download for Windows