Skip to content

Brave's anti-canvas-fingerprinting behavior may subtly break "touching color" #579

@adroitwhiz

Description

@adroitwhiz

Expected Behavior

Blocks like "touching color" should function properly and consistently in all browsers.

Actual Behavior

Apparently, Brave slightly randomizes the pixel values returned from getImageData. Since getImageData is used both to upload textures to the GPU and for Silhouettes, this could result in pixel color values being slightly different in Brave, which may cause extremely color-sensitive operations (like "touching color") to randomly return different results across different browser sessions.

If this does turn out to be a problem, I'm not sure what can be done other than advising users to disable Brave's anti-fingerprinting in the Scratch FAQ, if this particular feature can even be disabled.

Steps to Reproduce

None yet. Testing is needed to see if this is an actual problem.

Operating System and Browser

Brave (possibly nightly)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions