Add flag to disable Web Audio API
Description
Add a flag that disables the functionality of Web Audio API features while allowing audio playback through / tags.
Who's implementing?
- I'm willing to implement this feature myself
The problem
The Web Audio API is a fingerprinting attack vector (ex. https://fingerprint.com/blog/audio-fingerprinting/) and can allow websites to play unwanted audio. Ungoogled-chromium already includes features to disable other annoyances and close fingerprinting attack vectors.
Possible solutions
The addition of a flag/setting to control the Web Audio API. I see this having three options:
- Default - Web Audio API works as normal
- Fingerprint Deception - Apply an algorithm to attempt to deceive fingerprinting algorithms - this has been done in other browsers such as Brave (https://github.com/brave/brave-browser/wiki/Fingerprinting-Protections)
- Disabled - Disable the Web Audio API entirely / replace with no-op
Alternatives
- Muting a site/disabling audio playback entirely does not disable the Web Audio API and still allows for fingerprinting
- This might be doable using a browser extension, I haven't looked into it extensively but I would assume that a browser-native solution would be more robust.
Additional context
I was initially introduced to this issue by a friend complaining that sites were using the Web Audio API for fingerprinting which was interfering with the functionality of hearing aids (the microphone on the hearing aids would be disabled when a site was using the API). This is one reason why this option should allow for both preventing fingerprinting as well as disabling the API entirely.
Source: ungoogled-software/ungoogled-chromium