Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Canvas image changes on a Chromebook #583

Open
Finesse opened this issue Nov 13, 2020 · 1 comment
Open

Canvas image changes on a Chromebook #583

Finesse opened this issue Nov 13, 2020 · 1 comment

Comments

@Finesse
Copy link
Member

Finesse commented Nov 13, 2020

A user encounters canvas fingerprint changes on their Google Pixelbook with Chrome 87. In order to reproduce on the laptop, they open https://fingerprintjs.github.io/fingerprintjs/ (it doesn't matter whether the tab is new or old) and reload the page. One image appears after a soft reload, and the other after almost every hard reload:

Unknown-1 Unknown

Another pair of canvas pictures appeared when the link above was opened from a Google Meet conversation:

Unknown-2 Unknown-3

The difference is the text spacing and positioning:

1st pair 2nd pair Left pictures of the pairs
image image1 image2

Other user reports:

  • The canvas image is stable on Acer R752 with Chrome 85
  • The canvas image is stable too on an unknown device and Chrome version
  • I've tried to reproduce in Chrome 86 on Ubuntu 20.04 on a virtual machine, the canvas is stable.
  • The canvas image is stable on Pixelbook Go.
  • The canvas image is unstable on Acer Chromebook 314 with Chrome OS 80, 85 and 86 (my device)
@Finesse
Copy link
Member Author

Finesse commented Mar 8, 2021

Trying to mitigate it in d3e359c by extracting the text into a separate canvas image. The image with text is still used to calculate the hash, but it can be removed in a custom components hash function.

The image before:

geometry + text

The images after:

geometry + text

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant