This page uses different techniques to generate the audio-context fingerprint. Sometimes to protect the browser identity, a browser extension adds random noise to the audio element (either to the properties or the result of various methods) and this noise alters the fingerprint result. Although the actual identity might be protected, there are still methods to detect whether the fingerprint is manipulated or not. For instance, if manipulation is identified, the server may decide to ignore the audio-context identity and uses a different approach to identify the browser session.
AudioContext Support in Your Browser | |
AudioContext (basic support) | Loading... |
Offline AudioContext (basic support) | Loading... |
AudioContext createAnalyser | Loading... |
AudioContext createOscillator | Loading... |
AudioContext createGain | Loading... |
AudioContext createScriptProcessor | Loading... |
AudioContext createDynamicsCompressor | Loading... |
Fingerprint Results | |
AudioContext Properties | Loading... |
Fingerprint ID Method: dynamics compressor | Loading... |
Fingerprint ID Method: dynamics compressor full buffer | Loading... |
Fingerprint ID Method: oscillator node | |
Fingerprint ID Method: oscillator node + dynamics compressor |
It is a technique used to identify a browser. This method can be used to distinguish a browser, for instance, display personalized advertisements or uniquely identify a browser on the next visit(s) even though a user has no login details available. This technique uses your browser "Audio" element (HTML5
Some browsers have internal modules where the user can activate to protect against audio-context fingerprinting. Some others do not offer such a capability. In these browsers, you can install a browser extension to simulate the native behavior. A module needs to alter the audio properties so that the fingerprint data would be altered and not unique. There are two popular methods to achieve this. Some browsers or extensions add random noise into the audio element (in properties or methods) which would result in an invalid identification hash code. Some others add noise in random positions to make sure each fingerprint is different from the previous one. The former method generates a unique id, but this id is "new" and hence browser information is protected. According to our tests, the second method protects the user even more by generating random fingerprint on each visit.
This page computes four different types of audio-context fingerprints. The first fingerprint is generated by using DynamicsProcessor method in the audio element. The second fingerprint is generated by using DynamicsProcessor with full buffer and converted to 256 char hash code. For the third and fourth fingerprints, user-action is required. Because the browser blocks the audio element to function without user-action (for these two fingerprints only). Therefore, two buttons are placed in the fingerprint area in place of the id. If you click each button the corresponding fingerprint will be generated. The first user-action-required fingerprint is generated by using OscillatorNode method in the audio element. The second one is generated by using OscillatorNode in combination with DynamicsProcessor methods. Both of these methods generate an array of numbers as the fingerprint id (not a hash code).
The short answer is Yes, but, it is much harder to identify your browser comparing to when you don't have any protection method. Read below to get more info about browser identification.
There are many methods to identify a browser. The audio-context fingerprinting is a popular and simple one which is used frequently (but much less used than the Canvas or WebGL fingerprints). Note that even if you have the fingerprint protection enabled, still, most likely, it is possible to detect that there is a protection method active.