🔊 Audio Fingerprint

AudioContext-Based Device Identification

Audio fingerprinting uses the Web Audio API to create unique device signatures based on how your system processes audio signals. It's a subtle but effective tracking technique.

💡 Key Point: Audio fingerprinting doesn't record any sound - it analyzes how your device's audio stack processes generated signals, creating a unique signature.

🔬 How Audio Fingerprinting Works

The technique exploits differences in audio processing:

  1. Create AudioContext: Initialize the Web Audio API
  2. Generate Signal: Create an oscillator or noise source
  3. Process Audio: Apply effects like compression or filtering
  4. Analyze Output: Capture the processed audio data
  5. Generate Hash: Create a fingerprint from the audio samples

Example Code

const audioContext = new (window.AudioContext || window.webkitAudioContext)();
const oscillator = audioContext.createOscillator();
const analyser = audioContext.createAnalyser();
const compressor = audioContext.createDynamicsCompressor();

// Configure oscillator
oscillator.type = 'triangle';
oscillator.frequency.value = 10000;

// Connect nodes
oscillator.connect(compressor);
compressor.connect(analyser);
analyser.connect(audioContext.destination);

// Start and capture
oscillator.start(0);

// Get frequency data for fingerprint
const frequencyData = new Float32Array(analyser.frequencyBinCount);
analyser.getFloatFrequencyData(frequencyData);

// Hash the data for fingerprint
const fingerprint = hashFunction(frequencyData);

🎯 Why Audio Fingerprinting Works

Different devices produce different audio signatures due to:

📊 AudioContext Properties

Additional fingerprinting data from AudioContext:

🛡️ Spoofing Audio Fingerprints

Antidetect browsers handle audio fingerprinting through:

1. Noise Addition

Adding imperceptible noise to audio output that changes the fingerprint hash.

2. Sample Rate Spoofing

Reporting a different sample rate than the actual hardware.

3. Processing Modification

Altering how audio nodes process signals to create consistent fake fingerprints.

4. Context Isolation

Each browser profile gets its own AudioContext configuration.

🔍 Detection Challenges

Audio fingerprinting is harder to detect than canvas because:

❓ Frequently Asked Questions

Does audio fingerprinting record my microphone?

No. Audio fingerprinting doesn't use your microphone at all. It generates synthetic audio signals and analyzes how your system processes them. No actual sound is recorded.

Can I hear the audio fingerprinting?

Usually no. Most implementations either use inaudible frequencies, very short durations, or disconnect from speakers before generating sound. The process is designed to be silent.

Is audio fingerprinting common?

Yes, it's used by many tracking services as part of their fingerprinting toolkit. It's particularly valuable because it's less known than canvas fingerprinting and harder to block.

🔗 Related Terms

Canvas Fingerprint WebGL Fingerprint Media Devices Noise Injection
Start Trial