¿Qué es el fingerprinting del navegador?

Todos los navegadores envían pequeñas señales, el tamaño de tu pantalla, tus fuentes, tu tarjeta gráfica, tu hardware de audio, y las webs las combinan en un identificador único para tu dispositivo. Incluso con las cookies bloqueadas, ese identificador puede usarse para seguirte de una web a otra.

En resumen

El fingerprinting es la forma en que las webs crean un identificador único del dispositivo sin usar cookies. Combina 30 señales, pantalla, fuentes, GPU, audio, idioma, zona horaria, plugins, y normalmente tienes algo lo bastante único para identificar a un solo usuario en toda la web. Es más difícil de bloquear que las cookies porque las señales son cosas reales que las webs necesitan (el tamaño de tu pantalla para mostrarse bien, por ejemplo), y eliminarlas del todo rompe la web.

En esta página

  1. ¿Qué señales se usan?
  2. Por qué funciona aunque bloquees las cookies
  3. Cómo se defienden los navegadores
  4. Qué puedes hacer de verdad

¿Qué señales se usan?

Las clásicas, ordenadas por lo distintivas que son:

  • Fingerprinting de canvas: una web pide al navegador que dibuje una pequeña imagen y luego lee sus píxeles. Pequeñas diferencias en los controladores gráficos, el modelo de GPU y el sistema operativo generan una imagen algo distinta, lo suficiente para que el resultado sea casi único por dispositivo.
  • Fingerprinting de WebGL: parecido al de canvas, pero con las API de gráficos 3D. Revela de forma bastante directa el modelo de tu GPU y la versión del controlador.
  • Fingerprinting de audio: el procesamiento de audio del navegador tiene diminutas diferencias numéricas según el sistema. Una web puede reproducir un sonido mediante la API (sin que lo oigas) y leer la forma de onda resultante.
  • Enumeración de fuentes: qué fuentes tienes instaladas es una señal sorprendentemente distintiva. Un ordenador típico tiene entre 50 y 200 fuentes; es raro que la misma lista exacta se repita.
  • Tamaño de pantalla y densidad de píxeles
  • Cadena User-Agent y Client Hints (tu navegador, versión, sistema operativo)
  • Zona horaria, idioma, número de núcleos, memoria disponible, la API Battery en algunos navegadores

Cada una de estas señales es débil por sí sola. Combinadas, alcanzan una unicidad del orden de una entre millones.

Por qué funciona aunque bloquees las cookies

Las cookies de terceros están a punto de desaparecer de todos los grandes navegadores. El fingerprinting es la alternativa a la que la industria publicitaria ya se ha pasado. Las señales que usa no son «datos de rastreo» que puedas negarte a dar, sino datos que el navegador tiene que enviar para que la página se vea bien. El tamaño de tu pantalla importa porque las páginas se maquetan según él. Tus fuentes importan porque la página elige la más adecuada. Que la combinación sea única es un efecto secundario de tener que enviar esos datos.

Cómo se defienden los navegadores

Dos estrategias, ambas imperfectas:

  1. Uniformidad (el enfoque de Tor): que todos los usuarios de Tor parezcan idénticos. La misma huella, el mismo tamaño de pantalla, las mismas fuentes. El inconveniente es que la web se rompe de muchas formas pequeñas: páginas mostradas al tamaño «equivocado», fuentes sustituidas, aplicaciones web que detectan mal tu dispositivo.
  2. Aleatorización (el enfoque de Brave y Dazr): añadir un poco de ruido a las señales, distinto para cada dominio. Dos visitas a la misma web ven resultados coherentes (así funcionan los inicios de sesión); dos webs distintas ven huellas distintas. Es el equilibrio que eligen la mayoría de navegadores privados para el día a día.

La defensa de Dazr está activada por defecto y se aplica a las mediciones de canvas, WebGL, audio y fuentes, con excepciones por sitio para las raras webs que fallan con ella.

Qué puedes hacer de verdad

Para reducir tu huella, las opciones son limitadas:

  • Usa un navegador con antifingerprinting activado por defecto (Dazr, Tor Browser, Brave con Shields en modo estricto)
  • Desactiva la API Battery, los plugins y las funciones innecesarias del navegador en los ajustes avanzados
  • No instales fuentes que no necesites
  • Ten en cuenta que, incluso desactivando JavaScript, el fingerprinting pasivo (cabeceras HTTP, IP, tamaño de pantalla por CSS) sigue siendo posible

Relacionado