浏览器指纹测试

即使清除了 Cookie,你的浏览器仍会向网站透露大量关于自身的信息:屏幕、时区、语言、字体,或者它绘制图形的方式。这些信息组合起来就形成了一个指纹。在这里,你可以看到 NoCall 的反机器人系统 ByteGuard 根据这些信息为你的浏览器计算出的 ID。

你的指纹 ID

正在计算你的 ID…

在无痕窗口中会变吗?

在隐私窗口或无痕窗口中打开同一个页面,比较一下 ID。如果相同,说明网站即使没有 Cookie 也能认出你。

上一个 ID 只保存在这个浏览器中(localStorage),用于比较。

你的浏览器透露了你的哪些信息

屏幕
…
时区
…
语言
…
平台
…
Cookie
…

这些信号就在你的浏览器中读取,不会发送到任何地方。

此页面不会保存任何新数据,也不出售数据:该 ID 就是 ByteGuard 已在使用、用来保护 NoCall 免受机器人攻击的那个 ID。

什么是浏览器指纹

浏览器指纹是一种标识符,根据你访问网站时浏览器和设备透露的各种特征计算得出。单独任何一项都无法识别你,但几十个数值组合在一起,通常就罕见到足以把你的浏览器与几乎所有其他浏览器区分开来。

与 Cookie 不同,指纹不会存储在你的设备上:每次访问时都会重新计算。因此,它不会出现在网站数据列表中,清除浏览记录后也不会消失。

哪些信号让你的浏览器独一无二

以下是最常见的信号。组合的信号越多,就越容易把不同的浏览器区分开。

Canvas
网站让浏览器绘制一段文字或一个图形,然后读回像素。由于显卡、操作系统和字体平滑处理的差异,不同设备得到的结果会略有不同。
字体
已安装的字体取决于你的操作系统和所装的软件,例如 Office 或 Adobe。通过测量一段文字的绘制方式就能检测出来。
屏幕
分辨率、除去任务栏后剩余的可用空间、像素密度和色彩深度。
GPU
通过 WebGL,浏览器可能透露显卡的品牌和型号,以及它渲染 3D 场景的方式。
时区
你的系统所用的时区,以及日期和时间格式。
语言
浏览器发送给每个网站的首选语言列表及其顺序。
TLS
在页面加载之前,浏览器会先协商安全连接。这次 TLS 握手问候中加密套件和扩展的顺序(可概括为 JA3 或 JA4 等指纹)会暴露背后是哪款浏览器、哪个版本,即使不运行 JavaScript 也一样。

为什么清除 Cookie 或使用无痕模式都改变不了它

隐私模式或无痕模式只是让浏览器在你关闭窗口后不保留浏览记录、Cookie 和表单数据。屏幕、显卡、字体、时区和语言都没有变,所以得出的指纹通常完全相同。

有些浏览器在隐私窗口中确实会做些改变:Safari 会启用高级指纹保护,Brave 会针对每个网站和每次会话加入细微的随机变化。如果你在隐私窗口中看到不同的 ID,说明你的浏览器就是其中之一。

它有什么用:防止欺诈,也能用于追踪

银行、商店和像我们这样的网站会用指纹来防止欺诈:识别发送成千上万次请求的机器人、在有新设备登录时发出提醒,或者阻止一个人注册几百个账号。在 NoCall 上,ByteGuard 用它来确保关于电话号码的举报和评论来自真人,而不是自动化程序。

同样的技术也可以用来为了投放广告而在不同网站之间跟踪你,不需要 Cookie,你也察觉不到。在欧盟,ePrivacy 规则把这种读取你设备信息的行为视同 Cookie:用于广告的追踪必须征得你的同意。

你在这里看到的 ID 只与 NoCall 绑定:ByteGuard 使用每个网站专属的密钥来生成它,因此另一个受 ByteGuard 保护的网站,对同一个浏览器会看到不同的 ID。

如何减少你的指纹

指纹无法完全消除,但你可以让自己的浏览器看起来更像其他人的:

  • Tor Browser 让所有用户呈现相同的屏幕、字体和设置,这样指纹就无法再把你单独区分出来。
  • Brave 会给 canvas、音频和其他信号加入随机变化,而且每个网站都不一样。
  • 在 Firefox 中,privacy.resistFingerprinting 设置(位于 about:config)会把时区设为 UTC、对窗口尺寸取整并统一其他信号;它的跟踪保护还会屏蔽已知的指纹识别脚本。
  • 少装扩展程序:每一个都可能增加让你与众不同的细节。
  • 保持浏览器为最新版本,避免使用非常少见的设置:和大多数人看起来一样,才是对你的保护。

常见问题

什么是浏览器指纹 ID?

它是一串概括你的浏览器和设备特征的代码。如果两次访问生成了相同的代码,网站即使没有 Cookie 也知道它们来自同一个浏览器。

使用无痕模式还会被认出来吗?

通常会。无痕模式会在关闭时删除 Cookie 和浏览记录,但不会改变你的屏幕、显卡或字体。试试看:在隐私窗口中打开这个页面,比较一下 ID。

VPN 会改变我的指纹吗?

不会。VPN 改变的是你的 IP 地址,而指纹是根据浏览器和设备数据计算出来的。不过,你的时区可能会暴露 IP 与你的实际所在地不符。

浏览器指纹识别合法吗?

这取决于用途。用于保障服务安全,例如防范机器人或欺诈,是常见做法。用于广告追踪时,欧盟要求必须征得你的同意,和 Cookie 一样。

NoCall 会用我的 ID 做什么?

ByteGuard 用它来区分真人和机器人,并限制滥用行为,例如提交数百条虚假举报。NoCall 不会出售它,也不会将其用于广告,而且这个 ID 只在 NoCall 上有效。

为什么我的 ID 变了?

当你更新浏览器、更换屏幕或调整缩放、安装字体,或者使用会加入随机变化的浏览器(例如 Brave,或处于隐私模式的 Safari)时,ID 都可能发生变化。