Feature Request: Audiocontext Fingerprint Protection
#3155 aperta il 20 gen 2025
Metriche repository
- Star
- (18.674 star)
- Metriche merge PR
- (Merge medio 3g) (8 PR mergiate in 30 g)
Descrizione
Description
Audiocontext Fingerprint Protection
Who's implementing?
- I'm willing to implement this feature myself
The problem
From the results of "https://coveryourtracks.eff.org/", there is a "Audiocontext Fingerprint" option that can be used to fingerprint users/browsers.
Safari has implemented some measures to protect from Audio Fingerprinting ("https://fingerprint.com/blog/bypassing-safari-17-audio-fingerprinting-protection/").
It would be wonderful if this could be implemented and added as an Ungoogled-Chromium feature/switch/flag option.
Possible solutions
On the linked fingerprint.com blog, this is the audio fingerprinting protection code implemented in Safari:
void applyNoise(float* values, size_t numberOfElementsToProcess, float magnitude)
{
WeakRandom generator;
for (size_t i = 0; i < numberOfElementsToProcess; ++i)
values[i] *= 1 + magnitude * (2 * generator.get() - 1);
}
The description says this:
- An audio signal produced with the Audio API is an array of numbers representing the signal amplitude at each moment of time (also called “audio samples”). When fingerprinting protection is on, Safari adds a random noise to every sample individually. A noised sample lies between sample*(1-magnitude) and sample*(1+magnitude), and the distribution is uniform(https://en.wikipedia.org/wiki/Continuous_uniform_distribution). This is how it’s implemented in Safari (https://github.com/WebKit/WebKit/blob/167dc5118a3f6228a19df40e673ea0a6d03b9bec/Source/WebCore/platform/audio/AudioUtilities.cpp#L80):
Alternatives
No response
Additional context
No response