¿Qué es la «huella digital» de Canvas?
Identificación de lienzos mediante huellas dactilares es una técnica de seguimiento en el navegador que dibuja elementos gráficos ocultos en un HTML5 <canvas> elemento, lee los datos de píxeles resultantes y los transforma mediante un algoritmo hash en un identificador estable del dispositivo. Dado que las GPU, los controladores, los sistemas operativos y los renderizadores de fuentes producen píxeles ligeramente diferentes a partir de instrucciones de dibujo idénticas, dicho hash es prácticamente único para cada dispositivo. No se utilizan cookies y no se almacena nada en el equipo del usuario, lo que hace que sea difícil de detectar o eliminar.
Cómo funciona la identificación de lienzos
Un script dibuja texto y figuras en un elemento HTML5 oculto <canvas>, y a continuación invoca los métodos de la API de Canvas toDataURL() para leer los datos de píxeles como una imagen en Base64 y calcular su hash. Las sutiles diferencias entre dispositivos en cuanto a la GPU, los controladores, el sistema operativo, la representación de fuentes y el suavizado hacen que el hash resultante sea un identificador estable (Wikipedia - Identificación de Canvas, 2025). Toda la operación se ejecuta de forma silenciosa en el navegador, sin que sea necesaria ninguna interacción por parte del usuario.
Los píxeles renderizados varían porque cada capa de la pila gráfica, desde el firmware de la tarjeta gráfica hasta el motor de composición del sistema operativo, aplica sus propias reglas de redondeo y mezcla. Dos dispositivos con un hardware idéntico pueden seguir generando resultados diferentes si las versiones de sus controladores difieren. Esto hace que la huella digital del lienzo sea más persistente que las cookies: borrar el almacenamiento del navegador no tiene ningún efecto sobre las características del hardware subyacente que determinan el resultado.
Casos de uso
Detección de bots y prevención del fraude. Las plataformas antibots incluyen la identificación de «canvas» en sus conjuntos de señales para distinguir los navegadores auténticos de las herramientas de automatización «headless» y los entornos emulados. Un navegador «headless» suele generar un hash de «canvas» que no coincide con la cadena de agente de usuario declarada, lo que hace que la solicitud se marque como sospechosa.
Detección del fraude publicitario y del tráfico no válido. Los proveedores de verificación publicitaria utilizan huellas de «canvas» para identificar el mismo dispositivo en múltiples impresiones falsas, incluso cuando las direcciones IP van cambiando. Esto ayuda a los anunciantes a detectar el tráfico no válido a nivel de dispositivo, en lugar de limitarse únicamente al nivel de red.
Entornos de navegador realistas para la recopilación de datos web. Los desarrolladores que recopilan datos de sitios protegidos contra bots necesitan que su entorno de navegador genere un hash de «canvas» coherente con el de un dispositivo de consumidor real. El enrutamiento de las solicitudes a través de una red de proxies residenciales, en la que el tráfico circula por hardware de consumidor auténtico con GPU y pilas de controladores reales, genera señales de huella digital auténticas, en lugar de los resultados uniformes típicos de las instancias sin interfaz gráfica del lado del servidor.
Preguntas frecuentes
La identificación mediante «canvas» se utiliza principalmente para el seguimiento de usuarios entre sitios web sin cookies, la detección de bots y navegadores emulados, y la prevención del fraude a nivel de dispositivo. Los sistemas antibots suelen combinarla con docenas de otras señales para calcular una puntuación de confianza.
Algunos navegadores y extensiones centrados en la privacidad bloquean o aleatorizan la salida de «canvas» para evitar la identificación mediante huellas digitales. Sin embargo, una aleatorización excesiva puede parecer en sí misma anómala para los sistemas de detección de bots, ya que los navegadores reales generan hash coherentes en múltiples visitas desde el mismo dispositivo.
Las cookies son archivos almacenados que el usuario puede eliminar. La técnica de «canvas fingerprinting» obtiene un identificador a partir de las características del hardware y el software, por lo que borrar las cookies, cambiar al modo privado o utilizar un perfil de navegador diferente no modifica el hash subyacente que generan la GPU y los controladores.
Ambos utilizan el proceso gráfico del navegador, pero el «fingerprinting» de WebGL representa escenas en 3D utilizando directamente la GPU, mientras que el «fingerprinting» de Canvas funciona con instrucciones de dibujo en 2D. Se trata de señales complementarias que los sistemas antibots y de análisis suelen combinar para reforzar la identificación de los dispositivos.