打开一个网站,它没让你登录,也没存任何东西,却直接给你起了个名字:「Fearless Fox(无畏的狐狸)」。换个浏览器、连上VPN、甚至开无痕模式,它还是叫你「Fearless Fox」。这不是玄学,是浏览器指纹在起作用。 有个叫「Fingerprints are the new cookies」的网站,专门让人亲身体验这件事。它的逻辑很直接:网站读取你浏览器的一堆特征,算出一个哈希值,再把这个值映射成一个昵称。你看到的「Fearless Fox」,本质上就是一串识别码的拟人化包装。 它到底看了你哪些东西 网站会检查的项目包括:GPU信息、图像渲染结果、音频处理的细微差异、CPU核心数、语言设置、时区。这些单项看起来都不起眼,但组合起来就很有辨识度。 举个例子,同一张图片在不同GPU和操作系统上渲染,会产生肉眼几乎看不出的微小差别。让浏览器内部生成一段音频数据,不同CPU和浏览器的计算方式也会导致结果不同。这些差异被收集起来,用 SHA-256 方式算成哈希值,昵称就定下来了。 实测结果是:刷新页面、删Cookie、连VPN换IP、切无痕模式,昵称不变。但换一台手机或电脑访问,昵称就变了。说明它认的不是你的网络线路,而是你这台设备本身。 为什么换个线路它还是认识你 Cookie是网站存在你浏览器里的小数据,用来维持登录状态、识别老用户。因为Cookie常被用于广告追踪,越来越多浏览器开始限制它。指纹识别绕开了这个限制——它不存东西,只是「看」你。 单个特征的区别可能很小,但多个特征叠加,就能把用户范围缩得很窄。网站作者用信息量来解释这件事:如果某个特征在128人里只有1个人符合,那「符合」这个答案带来的信息量是 7比特 ;而如果剩下127人都符合,这个答案的信息量只有约 0.011比特 。 越少见的特征,越能帮你被认出来。这就是为什么指纹识别对隐私敏感的人是件麻烦事——你越独特,越容易被锁定。 想躲开,有哪些办法 网站作者给出的建议是使用重视隐私保护的浏览器: Brave :对收集到的信息加入细微变化,干扰识别 Tor Browser / Mullvad Browser :尽量让所有用户的浏览器特征保持一致,让识别变难 禁用JavaScript :这个演示用的识别流程会直接失效 但作者也提醒,禁用JavaScript只能挡住这一类识别。通过通信过程获取信息的识别手法依然存在,挡不住。 另外,作者对自家演示的定位很清醒:这只是「把从设备取得的少量信息做了简单组合」。真正的指纹识别技术要复杂得多,有时候即使部分信息发生变化,依然能持续识别出同一个用户。 换句话说,你看到的「Fearless Fox」只是冰山露出水面的那一角。水面下真正的追踪系统,比这个演示难对付得多。 特别