Canvas 和 WebGL 指纹是什么?

Canvas 指纹:网站通过 HTML5 Canvas 让浏览器绘制一个不可见的图形,然后读取像素数据。由于不同设备的 GPU、驱动程序和字体渲染方式不同,同一段绘制代码在不同设备上产生的像素数据会有微小差异。这个差异就是你的 Canvas 指纹。

WebGL 指纹:类似原理,但通过 WebGL API 获取更底层的 GPU 信息,包括渲染器名称、着色器精度等硬件参数。这些信息的组合几乎能唯一标识一台设备。

指纹浏览器如何伪装?

指纹浏览器通过在 Chromium 底层注入代码,拦截并修改 Canvas 和 WebGL 的 API 返回值:

每个浏览器配置生成一组随机但合理的指纹值,确保看起来像一台真实的独立设备。好的指纹浏览器不仅改变指纹值,还确保各个指纹之间的一致性(如 User-Agent 和 WebGL 渲染器对应同一设备型号)。

配置好后,用 MuTool 检测指纹环境,验证伪装效果。