Is canvas getImageData method machine/browser dependent?

Yes. This fact is exploited by canvas fingerprinting:

The same HTML5 Canvas element can
produce exceptional pixels on a different web browsers, depending on
the system on which it was executed.

This happens for several reasons: at the image format level — web
browsers uses different image processing engines, export options,
compression level, final images may got different hashes even if they
are pixel-perfect; at the pixmap level — operating systems use
different algorithms and settings for anti-aliasing and sub-pixel
rendering. We don’t know all the reasons, but we have already
collected more than a thousand unique signatures.

Leave a Comment

tech