Skip to content

Instantly share code, notes, and snippets.

@clouedoc
Last active March 7, 2022 18:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save clouedoc/509fe85cf7a97ecfc088eef187293f45 to your computer and use it in GitHub Desktop.
Save clouedoc/509fe85cf7a97ecfc088eef187293f45 to your computer and use it in GitHub Desktop.
Akamai uses two canvases. Here's my interpretation of it.

Did anyone else notice that Akamai generated two canvases? One of them is large, and the other is pretty small.

The big canvas they use looks like this: https://arh.antoinevastel.com/assets/media/sneakers/anon_canvas1_footlocker.png. The small (16x16) canvas they use looks like this: https://arh.antoinevastel.com/assets/media/sneakers/anon_canvas2_footlocker.png.

My intuition is that the checksum of the small canvas will be the same on every GPU and OS. They use the first canvas for fingerprinting and the second one to check that the user did not apply noise to their canvases. (anti-canvas-fingerprinting extension will indiscriminately apply noise to all canvases)

This intuition coincides with a 2014 research paper I recently skimmed through where you can read:

Enforcing a 16x16 pixel size limit allowed us to flter out scripts that read too few pixels to efficiently extract the canvas fngerprint. Although there are 28192 possible color combinations for a 16x16 pixel image, operating systems or font libraries only apply anti-aliasing (Which is an important source of diversity for canvas fingerprinting) to text larger than a minimum font size.

Source: https://github.com/prescience-data/dark-knowledge/blob/main/library/2014%20-%20The%20Web%20Never%20Forgets%20-%20Persistent%20Tracking%20Mechanisms%20in%20The%20Wild.pdf

E.g. Akamai could catch people adding noise to ALL their canvases this way.

👆 on the importance of reading research papers AND writing your evasions instead of using black box extensions

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