Canvas Blocker (Fingerprint Protect)
Do not allow HTML5 Canvas element from generating a unique identification key for your browser
Make a Donation
PayPalBitcoin
Bitcoin Address: 1sM2BrTH8BRgt3quiASK8TmYSafutNvDo
Ether
Ether Address: 0xCf9eaAc56992e12EB61fD46342172d4EEff5C8e4
Download Links
Advertisement
"Canvas Blocker (Fingerprint Protect)" extension manipulates two methods of HTML5 Canvas element that are commonly used to generate a unique fingerprint key for your browser. This extension slightly perturbs the actual image data only when these methods are called to prevent websites from generating this unique key. Whenever a suspicious method is called the extension notifies the user by displaying a desktop notification. Note that this extension uses non-persistent background page to have no effect on user browsing experience while it is not used. Also compared to other similar extensions, it uses a much faster and more optimized code to prevent fingerprints originated from the Canvas element.
image

Features

  1. What is the "Canvas Blocker (fingerprint protect)" extension?

    The canvas element is like a painting canvas for the browser. It is used to draw paint objects dynamically using the JavaScript engine which empowers your browser visually a lot. Unfortunately, this element can also be used by advertising and malicious scripts to identify the user and hence to track the user's browsing interests. Basically, this element can be used to generate a fingerprint key that is unique to each browser. Now if this unique key is generated by different pages and is sent to a server, it can lead to track user's browsing habits easily. One method to generate a unique identification key is to insert two strings on top of each other with just a slight offset in a canvas element and then convert the canvas element into a data string. The generated string could have slight difference based on user's OS and graphical card capabilities hence the generated string is unique. This long string is then converted to a small unique key using a hashing method like an SHA algorithm. This extension adds an arbitrary one-time noise to the canvas element only when one of the string conversion methods are called. To improve the speed of applying this nouse further, instead of applying it to all points of the canvas element, the noise is added to points with 3 element spacing. This significantly reduces the computational cost of adding the noise.

  2. How can I disable this extension?

    Normally there is no need for the extension to be disabled (if you find a case please report in the review section). So there is no toolbar button for toggling the enabling state of the add-on! If for any reason you would like to temporarily disable the extension, go to the add-on manager for your browser and press disable button. Then refresh the tab to refresh the server code. Make sure to re-enable the extension later on to prevent leaking.

  3. What's new in this version?

    Please check the Logs section.

  4. What are the differences between this extension and other similar ones?

    There are two techniques to prevent Canvas fingerprinting. An extension can completely remove the Canvas access to the JavaScript engine or it can manipulate functions that may be used for fingerprinting. The former method is safe but degrades your browser's capabilities. The latter method is the recommended one but it is much harder to implement.

    The method to manipulate internal functions need to be written with extra care to make sure the code is not affecting the page performance. This extension is written carefully by considering two important facts: 1. Do not slow down the borwser by applying most of the code when only needed. 2. Prevent fingerprint for all frames so that there would be no other ways to generate a unique key even by using new frame technice.

Matched Content

Reviews

Please keep reviews clean, avoid the use of improper language and do not post any personal information.HTML tags
  • <a> Defines an anchor.

    Example: <a href="http://add0n.com">a sample link</a>

  • <pre><code> Syntax Highlighting (Supported languages: Bash, JSON, HTML, JavaScript, and CSS).

    Example: <pre><code class="javascript">var foo = 'bar';</code></pre>

  • <strong> Defines bold text
  • <blockquote> Defines a long quotation
  • <caption> Defines a table caption
  • <cite> Defines a citation
  • <em> Defines italic text
  • <p> Defines a paragraph
  • <span> Defines a section in a document
  • <s> Defines strikethrough text
  • <strike> Defines strikethrough text
  • <u> Defines underlined text
  • <br> Defines a single line break; can be used alone and don't need an ending tag

What's new in this version

Version--
Published--/--/--
Change Logs:
    Last 10 commits on GitHub

    Need help?

    If you have questions about the extension, or ideas on how to improve it, please post them on the support site. Don't forget to search through the bug reports first as most likely your question/bug report has already been reported or there is a workaround posted for it.

    issuesstarsforks

    Permissions are explained

    PermissionDescription
    *://*/*to be able to access all domains (to be able to inject fingerprint blocker script to all domains)
    notificationsto notify the user when a fingerprint attempt is reported
    storageto save internal preferences

    Recent Blog Posts on add0n.com