网站靠浏览器指纹识别访客,这个"指纹"其实由十几项信息组合而成。本文逐一讲清 IP、时区、UA、Canvas、WebGL、AudioContext 等 16 个常见浏览器指纹维度的含义与工作原理。
访问网站时,对方会静默收集你浏览器暴露出的各种信息:操作系统、屏幕分辨率、装了哪些字体、用什么显卡渲染图形……这些单独看很普通的信息组合在一起,就能形成一个相当独特的「浏览器指纹」。即使你清除了 Cookie 或开启无痕模式,网站仍可能通过它认出你。
对运营多个账号的团队来说,理解每个指纹维度,才知道环境参数该怎么配、为什么某些参数必须互相一致。这篇文章把最常见的 16 个浏览器指纹逐一讲清楚。
网络与位置类指纹
IP 地址。 每次联网,服务商都会为你的设备分配一个 IP 地址,类似现实中的邮寄地址,保证数据能送到正确的位置。网站通过它判断访问者的网络来源,用于定位用户、内容定制和安全检查(如识别异常登录)。IP 分 IPv4(如 192.168.1.1)和 IPv6(如 2001:0db8:85a3::8a2e:0370:7334)两种格式。
地理位置。 通过 IP 可以大致推断出访问者所在的国家、地区和城市,甚至更具体的位置信息。网站用它提供本地化内容、语言偏好和区域广告。
时区与当地时间。 时区可以从 IP 推断,也可以通过浏览器脚本直接读取。风险点在于一致性:如果 IP 显示在美国,浏览器时区却是北京时间,这种不匹配很容易被防欺诈系统标记为异常。
浏览器基础类指纹
User Agent(UA)。 浏览器发送给网站的字符串,包含浏览器类型、版本、操作系统等信息,例如 Chrome 在 Windows 上的 UA 会标明内核版本和系统版本。网站根据 UA 提供兼容的内容和界面。
浏览器语言。 指浏览器设置中的首选语言,通过 HTTP 请求头发送给服务器。值得注意:浏览器界面语言和对外暴露的语言指纹可以不一致——只要语言指纹与代理 IP 地区匹配,界面显示成中文也不影响环境一致性。
字体。 每台设备安装的字体集合不同,浏览器可以通过脚本列出可用字体。安装了大量非标准字体的设备,字体列表本身就可能成为很强的识别特征。
屏幕分辨率。 既包括物理屏幕分辨率,也包括浏览器可视区域尺寸(去掉工具栏、标签栏后的大小)。不同设备的显示组合差异明显,是常见的指纹维度。
硬件并发数与设备内存。 浏览器可以通过脚本读取 CPU 逻辑核心数(hardwareConcurrency)和大致内存(deviceMemory,通常以 2 的倍数上报且上限为 8GB,这是浏览器保护隐私的设计)。
Do Not Track。 用户可在浏览器设置中开启「不跟踪」标志。有意思的是,因为大多数用户不会修改这个设置,开启它反而让你在一众默认用户中显得特殊,成为可识别的特征之一。
图形与媒体类指纹
Canvas 指纹。 网站让浏览器在 Canvas 画布上绘制图形和文字,再分析渲染结果。不同设备的屏幕、字体、显卡会让渲染出现像素级的细微差异,这些差异组合起来就形成了相当独特的「数字指纹」,是识别能力很强的一类指纹。
WebGL 与 WebGPU。 图形相关的 API,允许网页调用 GPU 渲染 3D 图形。网站通过它们读取显卡型号等硬件信息,形成硬件层面的指纹。玩网页 3D 游戏时能感受到它们的作用,而它们同时也是重要的指纹来源。
媒体设备指纹。 通过 MediaDevices API 获取摄像头、麦克风等设备的信息,包括设备类型、名称、分辨率、连接方式等。现代浏览器出于隐私考虑,通常需要用户授权才能读取。
AudioContext 指纹。 浏览器处理音频的 API。不同设备的音频硬件和软件处理声音时有细微差异,这些差异可以被捕捉并形成「声音指纹」,同样具有较高区分度。
布局与其他类指纹
ClientRects。 网页渲染时,浏览器不断计算页面元素的位置和大小,计算结果会因设备、浏览器、窗口大小而不同。网站把这些布局信息组合起来,也能形成用于识别的特征。
SpeechVoices。 基于设备可用的语音合成选项(不同语言、口音、发音人)形成的指纹。不同设备的语音配置几乎不可能完全相同,因此也具备识别价值。

理解指纹,才能配对环境
以上 16 个维度里,IP、时区、语言、UA、Canvas、WebGL、AudioContext 等是对多账号运营影响最大的几项。配置浏览器环境时,关键不是每个参数都「特殊」,而是整套参数互相一致:代理 IP 在美国,时区、语言、UA 就都应指向美国;反之,参数之间互相矛盾反而更显眼。
PurpleMark 的网页版在创建环境时覆盖了上述主要维度:操作系统与 Chromium 内核版本、User-Agent 与分辨率、浏览器语言、时区与地理位置(可跟随 IP 或自定义)、字体列表、WebGL 元数据、WebGPU、WebRTC 与代理 UDP,以及 Canvas、AudioContext、媒体设备、ClientRects、SpeechVoices、Do Not Track、硬件加速、MAC 地址与端口扫描保护等开关。配置时可以参考一条简单原则:以业务账号面向的地区为基准,让网络、系统、语言和高级指纹指向同一地区,并保持环境长期稳定。
需要说明的是,环境隔离降低的是账号间因共用环境而产生的关联风险。账号能否长期稳定,仍取决于内容质量与操作是否符合平台规则,指纹参数只是其中一个环节。
常见问题
浏览器指纹会变吗?
会。更改设备设置、安装新软件、更新浏览器或操作系统,都可能让指纹发生变化。这也是为什么多账号环境一旦配置好,建议保持稳定、不要频繁改动。
清除了 Cookie 还会被识别吗?
可能。Cookie 只是识别手段之一,Canvas、WebGL、AudioContext 等指纹不依赖 Cookie,清理 Cookie 后指纹依然存在。这也是「隐身模式不等于隐身」的原因。
所有网站都会收集浏览器指纹吗?
不是所有网站都主动收集,但主流社交、电商和广告平台大多会利用指纹做风控、反欺诈和广告定向。对普通用户影响有限,对多账号运营者则影响很大。


