学习目标
阅读本文后,您将能够:
- 分清网站在 Chrome 里读到的,和在 Firefox 里读到的
- 看出哪些信号跟着浏览器变,哪些还留在这台电脑上
- 判断两个浏览器指纹不同,不能说明是两台电脑或两个人
两个浏览器各交各的
您打开哪个浏览器,网站就读取那个浏览器交出来的信息。
Chrome、Firefox 和 Safari 各有自己的引擎、版本和接口。页面脚本跑在您打开的这个浏览器里,读到的 User-Agent、Client Hints、能不能使用某些接口,以及画布和音频怎么画,都是这个浏览器交出来的。
所以在同一台电脑上再开 Firefox,不是把 Chrome 的指纹复制一份。网站在 Firefox 里读到的版本和画布结果,是 Firefox 的。
哪些变,哪些还在
电脑没换。变的是浏览器交出来的那一层,屏幕和系统常常还是原来的。
| 跟着浏览器变 | 这台电脑上常常还相同 |
|---|---|
| User-Agent、浏览器名称和版本 | 操作系统 |
| Client Hints | 屏幕尺寸与像素比 |
| 接口开没开、隐私设置 | 系统时区 |
| Canvas、音频画出来的结果 | 两个浏览器都报告时的显卡名称 |
显卡是同一块,Chrome 和 Firefox 也不保证报出同一串名称。一个浏览器给出真实渲染器,另一个把这项报成一个笼统的值,网站在两个浏览器里看到的就已经不同。
检测只看这一个浏览器
EnvTrace 的指纹检测只描述您正在用的这一个浏览器,不把 Chrome 和 Firefox 合成一份结果。
您要看 Firefox,就在 Firefox 里再测一次。两份结果不同,只说明这是两个浏览器。同一个人可以在一台电脑上使用两个浏览器,所以结果不同不能说明是两台电脑,也不能说明是两个人。
为什么同一块显卡,画出来还可能不同?
画布和音频不是显卡自己把结果交给网站。是 Chrome 或 Firefox 用自己的引擎去画,再把画出来的结果交给网站。引擎不同,同一块显卡也可以画出不同的结果。
看结果时先分清这两层
- 网站在 Chrome 里读到的版本和画布,是 Chrome 的;在 Firefox 里读到的,是 Firefox 的。
- 屏幕、操作系统和系统时区通常还是这台电脑上的。
- 两个浏览器的结果不同,不能单独说明是两台电脑或两个人。
常见问题
Edge 和 Chrome 都基于 Chromium,指纹会一样吗?
不一定。内核相近,User-Agent、版本、默认接口和画布实现仍可能不同。要看网站在您打开的那个浏览器里实际读到的值。
两个浏览器登录同一个账号,会被当成同一个人吗?
指纹不会把 Chrome 和 Firefox 合成同一个人。账号登录才会把两边连到同一个账号。那是账号记录,不是浏览器指纹。
无痕窗口算另一个浏览器吗?
不算。无痕通常还是您正在用的这一个浏览器,屏幕、版本和画布结果往往不变。少留的是历史和 Cookie。