Was just reading this:
And was curious about this part:
"...More sophisticated scripts process an audio signal generated with an
OscillatorNode to fingerprint the device. This technique appears
conceptually similar to that of canvas fingerprinting. Audio signals
processed on different machines or browsers may have slight differences
due to hardware or software differences between the machines, while the
same combination of machine and browser will produce the same output."
If I had to guess I'd say they are taking advantage of this sentence from the
webaudio spec:
"The actual waveforms produced by the oscillator may differ to
prevent aliasing affects."
That could at least get the browser type. Plus more if the browser has branches
for different classes of CPU, etc.
It's too bad they didn't require all implementations to generate the same
output for the oscillators. Then framework devs could have built band-limited
libraries on top of a standardized foundation, without facilitating any fingerprinting
methods.
-Jonathan