Control de la huella digital del navegador, en el motor
Una huella digital del navegador está formada por decenas de valores que tienen que tener sentido en conjunto. Clearcote los deriva de un solo seed y los sirve desde las propias rutas de código de Chromium, así que una página que lee la GPU, la pantalla y las fuentes obtiene respuestas que pertenecen a una única máquina plausible, con el idioma y la zona horaria configurados a juego: en el frame principal, en los iframes y en los workers.
La persona basada en seed y el ruido por sitio están en todos los planes, incluido el build abierto.
Un seed, una identidad
import { launch } from "clearcote";
// the same seed returns the same identity; a new seed is a new one
const browser = await launch({
fingerprint: "account-42",
timezone: "America/New_York",
acceptLanguage: "en-US,en",
});Lo más destacado
Un seed, una máquina
--fingerprint deriva una persona correlacionada: nivel de CPU y memoria, pantalla, profundidad de color, GPU, voces, códecs y dispositivos multimedia que encajan entre sí.
Por sitio, no global
El ruido de canvas y WebGL se deriva por sitio, siguiendo el modelo de farbling de Brave, así que esos hashes cambian de un sitio a otro, mientras que el hardware que reporta la persona es el mismo en todas partes, como en una máquina real.
Nativo en cada realm
Los valores vienen de getters en C++, así que toString, los descriptores de propiedades y un iframe o worker nuevo ven código nativo y la misma respuesta.
Una GPU que no se contradice
El vendor y el renderer de WebGL se mantienen constantes durante la sesión, los límites de getParameter siguen a esa GPU hasta donde esta máquina pueda respaldarlos, y WebGPU describe el mismo adaptador.
Importa una máquina real
Carga un perfil capturado de un Chrome real, o elige uno de la biblioteca abierta de perfiles, y sus valores reemplazan a los sintéticos.
Redúcelo donde importa
lightStealth solo varía los metadatos seguros. fingerprintNoise: false conserva la identidad y quita el ruido de canvas y WebGL donde lo que puntúa es el propio ruido.
Por qué la coherencia le gana a los valores ingeniosos
La detección rara vez depende de un único valor inusual. Busca contradicciones: una cadena de GPU que no coincide con los píxeles, una zona horaria que contradice la IP, un worker que reporta un hardware distinto al de la página. Así que la pregunta que responde Clearcote no es qué valores falsificar, sino cómo mantenerlos todos coherentes entre sí y con la máquina subyacente.
El seed es determinista. El mismo seed produce la misma identidad en cada lanzamiento, como un visitante que regresa, y un seed nuevo produce una identidad nueva. Las lecturas de canvas 2D y WebGL llevan una pequeña perturbación por seed y por sitio, porque la lectura ya varía entre máquinas reales. El audio renderizado y los client rects se dejan exactos a propósito: perturbarlos produce valores que ningún navegador real emite, lo cual es una señal más llamativa que dos perfiles que comparten un hash. La documentación de huella digital repasa cada superficie.
Hay afirmaciones que el host no puede respaldar, y la documentación lo dice claramente. Un tamaño de pantalla que no coincide con la ventana real, o una GPU que la máquina no puede renderizar de verdad, se contrasta con el host y falla. Por eso lightStealth conserva la pantalla real y la sobrescritura de pantalla es opcional, por eso existe el puente de canvas, y por eso el punto de partida recomendado varía menos, no más.
Qué cubre
| Superficie | Qué hace Clearcote |
|---|---|
| Lectura de canvas 2D y WebGL | Ruido por seed y por sitio dentro de la dispersión natural entre máquinas reales |
| Renderer y límites de WebGL | Una GPU constante durante la sesión, con los límites de parámetros de esa GPU donde esta máquina pueda respaldarlos |
| WebGPU | El mismo adaptador que WebGL, así que por defecto las dos API nombran la misma GPU |
| Audio | La frecuencia de muestreo y la latencia de AudioContext siguen a la persona; las muestras renderizadas se mantienen exactas |
| Fuentes y voces de síntesis | Los conjuntos de fuentes y voces de la persona |
| Hardware y pantalla | hardwareConcurrency, deviceMemory, pixel ratio, profundidad de color, puntos táctiles, y la pantalla y el área de trabajo de la persona (lightStealth conserva la pantalla real) |
| Configuración regional y hora | Accept-Language, navigator.language, Intl y la zona horaria coinciden |
| User agent y client hints | Marca, versión, plataforma, bitness y modelo, desde el motor |
| TLS | El ClientHello sigue la versión de Chrome que declara la persona |
| Indicios de automatización | navigator.webdriver y los indicios de headless |
La lista completa de flags, con lo que hace cada uno, está en la referencia de flags de huella digital.
Para qué se usa
Privacidad
Un navegador estándar reporta la combinación de valores de tu propia máquina. Una persona reporta una máquina plausible y coherente que no es la tuya.
Identidades separadas
Dale a cada cuenta su propio seed, para que las cuentas no compartan una huella de renderizado.
Pruebas de código que usa huellas digitales
Comprueba cómo reacciona tu propio código de antifraude, analítica o personalización ante distintos hardware, GPU y configuraciones regionales.
Investigación de fingerprinting
Reproduce lo que mide una página de prueba, con entradas controladas y repetibles.
Clearcote está hecho para la privacidad, las pruebas, la investigación y la automatización lícita. Tú eres responsable de cómo lo usas y de respetar los términos de los sitios que visitas.
Qué plan lo incluye
La persona basada en seed, el ruido por sitio, la sobrescritura de metadatos y la coincidencia de TLS están en todos los planes, incluido el build abierto. El build con licencia (gratis con GitHub) suma algunos flags más finos y realismo en el comportamiento, y recibe primero las nuevas versiones mayores de Chromium; Pro no desbloquea ningún spoofing que no tenga Gratis con GitHub.
Comparar planesPreguntas frecuentes
¿Qué es el spoofing de huella digital del navegador?
Cambiar los valores que un sitio web lee para reconocer un navegador: la GPU, la pantalla, las fuentes, el hardware, el idioma, etc. La mayoría de las herramientas lo hacen sobrescribiendo propiedades de JavaScript. Clearcote lo hace en el motor de Chromium, así que los valores vienen de código nativo y son coherentes entre sí.
¿Por qué no usar un spoofer de huella digital en JavaScript?
Las funciones sobrescritas se delatan solas. toString devuelve el código fuente de la sobrescritura en lugar de [native code], los descriptores de propiedades cambian, y un iframe o worker nuevo recupera el valor original. Clearcote no tiene una capa de ese tipo que se pueda descubrir. Consulta cómo funciona la detección.
¿El mismo seed da siempre la misma huella digital?
Sí. El seed deriva de forma determinista la persona y el ruido por sitio, así que el mismo seed es la misma identidad en cada lanzamiento, y un seed nuevo es una identidad nueva.
¿Pueden dos cuentas en la misma máquina tener huellas de canvas distintas?
Sí, con seeds distintos: las lecturas de canvas y WebGL difieren según el seed. Un perfil de dispositivo importado solo cambia los valores reportados, no el renderizado, así que usa un seed por cuenta para separar el renderizado. El audio renderizado y los client rects vienen de la máquina subyacente y son iguales para todas las identidades que corren en ella.
¿Esto hace que la automatización sea indetectable?
Ninguna herramienta puede prometer eso, y nosotros no lo hacemos. Clearcote elimina las contradicciones que suele tener un navegador con spoofing. El comportamiento, la reputación de la IP y la forma en que lo uses siguen importando. El test de huella digital muestra cómo se ve tu propia configuración.
Profundiza en la documentación
Características relacionadas
Un seed por cuenta: el mismo dispositivo en cada sesión, uno distinto para la siguiente cuenta, con cookies y almacenamiento que persisten entre ejecuciones.
El handshake TLS y los frames HTTP/2 vienen del propio stack de red de Chromium, y los campos que dependen de la versión siguen a la versión de Chrome que declara tu persona.
Reenvía las operaciones de canvas y WebGL a una máquina remota con una GPU real, para que los píxeles que lee una página coincidan con la GPU que declara tu persona.
Configura un proxy con geoip activado y la zona horaria, los idiomas y WebRTC siguen a la IP de salida. SOCKS5 con usuario y contraseña funciona directamente en el build con licencia.
Lecturas relacionadas
Prueba Clearcote
Un reemplazo directo para Playwright y Puppeteer, coherente hasta el handshake TLS, con un build de código abierto para empezar.
Gratis para un navegador con GitHub. Sin tarjeta.