Performance Timing Fingerprinting: How Hardware Signals Track You
How Performance.now() precision, hardware concurrency, and device memory become tracking signals, and how to control them at the engine level.
22 articles
How Performance.now() precision, hardware concurrency, and device memory become tracking signals, and how to control them at the engine level.
Deep dive into how deterministic noise seeds produce consistent Canvas, WebGL, and Audio fingerprints across sessions and CI/CD pipelines.
How URL protocol handlers like mailto: and slack: reveal installed applications for fingerprinting, and how to control protocol responses.
How StorageManager.estimate() exposes disk size as a tracking signal, and how to control storage quota responses at the browser engine level.
How navigator.connection properties like effectiveType, RTT, and downlink create network fingerprints, and how to control them.
How Encrypted Media Extensions and Widevine DRM capability signals create fingerprint vectors, and how to control DRM identity at the engine level.
How MediaCapabilities, canPlayType, and codec support queries create unique fingerprints, and techniques to control media format identity.
How the SpeechSynthesis API voice list reveals your operating system and platform, and techniques to control voice-based fingerprint signals.
How requestAnimationFrame timing and display refresh rates create fingerprint signals, and techniques to control frame rate at the engine level.
How the WebGPU API exposes GPU adapter details for fingerprinting, and how to control GPU identity signals at the browser engine level.
How JavaScript stack depth and recursion limits vary by browser and platform to create fingerprints, and how to control stack behavior.
How CSS media queries like color-depth and prefers-color-scheme create fingerprint signals, and how to ensure consistent CSS identity.
How to produce identical browser fingerprints across sessions using noise seed control for consistent Canvas, WebGL, and Audio output.
How screen resolution, color depth, and window dimensions create unique fingerprint signals, and how to control display identity.
How WebAuthn and FIDO2 authenticator capabilities become fingerprint vectors, and techniques to control authentication signals.
How navigator.platform, hardwareConcurrency, and deviceMemory expose your identity, and how to ensure consistent navigator properties.
Websites use navigator.hardwareConcurrency to fingerprint your CPU core count. Learn how to control core reporting across Workers, iframes, and all execution contexts with engine-level protection.
Understand how AudioContext and OfflineAudioContext create unique audio fingerprints, and how to control audio output at the browser engine level.
Installed fonts and text metric measurements create unique browser fingerprints with 8+ bits of entropy. Learn engine-level techniques to control font identity and prevent font-based tracking.
WebGL exposes your GPU model, driver version, and rendering output as high-entropy fingerprint signals. Learn how to control all WebGL parameters at the engine level for consistent protection.
Canvas fingerprinting uses HTML5 rendering differences to track users across sessions without cookies. Learn how engine-level control produces consistent, authentic Canvas output on every platform.
Browser fingerprinting tracks you without cookies using Canvas, WebGL, fonts, and 30+ signals. Learn how each technique works and how to protect your privacy with engine-level fingerprint control.