隐身模式与浏览器指纹:它能隐藏什么,又隐藏不了什么

隐身模式在设备上给你一个相对独立的浏览会话,不会更换网络线路或硬件——网站在一次访问中读到的许多信号可能仍然相同。

本文另有 English

隐身模式与浏览器指纹:它能隐藏什么,又隐藏不了什么

隐身模式当然有用。

只是它能做的事情,比“隐身”这两个字听起来要少得多。

打开 Chrome 的无痕窗口、Firefox 的隐私浏览,或者 Edge 的 InPrivate,本质上都是新开一个相对独立的浏览会话。

这个会话里的浏览记录不会像普通窗口那样保留下来,Cookie 和部分站点数据也会和日常浏览环境隔开。窗口关闭后,这些临时数据通常也会被清理掉。

但有些东西并不会跟着消失。

你的公网 IP 还在。

你还是在用同一台电脑、同一个操作系统、同一块显卡和同一个屏幕。

浏览器能够暴露出来的很多环境信息,也依然存在。

所以更准确地说:

隐身模式改变的是“浏览器在本地留下什么”,不是“网站能看到什么”。

隐身模式真正隐藏了什么

它最擅长处理的是本地浏览痕迹。

比如你在一台共用电脑上临时登录账号,或者只是想打开一个不带原有 Cookie 的新会话,这时候隐身模式就很实用。

通常来说,它会让这些信息和普通浏览环境隔开:

  • 浏览历史;
  • 当前隐身会话产生的 Cookie;
  • 部分站点数据;
  • 表单和搜索记录;
  • 一部分临时缓存。

不同浏览器的具体实现会有差别,但思路差不多:

结束这个隐身会话后,尽量不要把这一轮浏览活动继续留在本地。

这确实是一种隐私保护。

但它保护的主要是“这台设备之后还记不记得你做过什么”。

网站看到的东西,并不会因此全部消失

网站并不需要读取你的浏览历史,才能知道当前是谁在访问。

只要你打开网页,网站依然可以获得这次连接本身带来的信息。

比如公网 IP。

也可以读取浏览器正常暴露出来的一些环境特征,例如:

  • 浏览器和操作系统;
  • 屏幕尺寸;
  • 语言;
  • 时区;
  • WebGL;
  • Canvas;
  • 浏览器支持的功能;
  • 其他设备和渲染相关信息。

隐身模式可能会改变某些浏览器行为,不同浏览器在隐私模式下提供的跟踪保护也不完全一样。

但它不会因为你点了一下“新建无痕窗口”,就把当前设备重新变成另一台电脑。

隐身模式不会隐藏你的 IP

这个最好理解。

IP 属于网络连接这一层。

隐身模式主要处理的是浏览器本地的会话和存储。

它并不会帮你换一条网络线路。

所以你在普通窗口里打开一个网站,再用隐身窗口打开同一个网站,对方通常看到的还是同一个公网 IP。

如果你想改变网站看到的 IP,需要改变网络出口,比如:

  • 切换网络;
  • 使用 VPN;
  • 使用代理。

这和隐身模式处理的不是一件事。

新的隐身窗口,不等于新的浏览器环境

很多人打开隐身模式以后,会发现网站要求重新登录、购物车没了、推荐内容也变了,于是很容易觉得:

网站是不是已经不认识我了?

很多时候,只是因为原来的 Cookie 没有进入这个新的会话。

浏览器本身其实还是原来的浏览器。

你仍然在使用:

  • 同一个操作系统;
  • 同一个显示器;
  • 同一块显卡;
  • 同一个浏览器内核;
  • 同一台设备。

这意味着不少浏览器侧的特征依然可能非常接近。

所以:

清掉 Cookie 和改变浏览器指纹,并不是一回事。

Cookie 是网站存到浏览器里的数据。

浏览器指纹则更多来自网页运行时能够读取到的环境特征。

前者被隔开了,不代表后者也跟着消失。

更多关于 IP 与指纹分层的内容,可看 换 IP 会改变浏览器指纹吗?。

普通模式和隐身模式,到底差在哪

放在一起看会更直观。

信息普通浏览隐身 / 无痕浏览
本地浏览历史通常会保存会话结束后通常不保留
普通窗口已有 Cookie可用通常隔离
隐身会话产生的 Cookie正常存在会话结束后通常删除
公网 IP网站可见仍然可见
ISP / ASN网站可见仍然可见
浏览器版本网站可见通常仍然可见
屏幕信息网站可见通常仍然可见
WebGL 信息可能可见仍可能可见
语言和时区网站可见通常仍然可见
登录账号登录后可见登录后仍然可见

这里需要注意一个词:

通常。

因为不同浏览器的隐私模式并不完全一样。

有些浏览器会在隐身模式下增加额外的第三方 Cookie 限制和跟踪保护,所以不能简单说“普通模式和隐身模式下所有指纹信号都完全一样”。

但这不影响核心结论:

隐身模式并不会让整个浏览器环境消失。

为什么网站仍然可能把两次访问联系起来

网站判断访问者,并不只有 Cookie 这一种办法。

它还可能使用:

  • 账号登录状态;
  • IP 和网络信息;
  • 浏览器指纹;
  • 本地存储;
  • 账号历史;
  • 风控和行为数据。

比如你打开隐身窗口以后,又登录了和之前相同的账号。

这时候其实根本不用讨论浏览器指纹。

账号本身已经把两次访问联系起来了。

即使你没有登录,网站依然可以看到当前 IP,以及浏览器在这一轮访问里暴露出来的环境信息。

当然,这不代表每个网站都能百分之百识别每一个隐身会话。

浏览器指纹本身也不是一个绝对唯一的身份证号码。

真正需要理解的是:

隐身模式减少了一部分可用的识别信息,但没有把所有信号清零。

如果想先理解浏览器指纹本身,可以看 什么是浏览器指纹。

隐身模式为什么经常让人感觉像“新用户”

因为很多网站非常依赖 Cookie。

一旦进入隐身窗口:

  • 原来的登录状态没有了;
  • 购物车可能没了;
  • 推荐历史没了;
  • 有些网站重新显示 Cookie 弹窗;
  • 页面看起来像第一次访问。

这种体验很容易让人误以为:

网站已经看不到之前的我了。

更准确的解释其实是:

网站没有拿到原来的 Cookie。

“新的 Cookie 会话”和“新的设备”并不是同一回事。

网站仍然可能看到:

  • 相同的 IP;
  • 相同的浏览器;
  • 相同的屏幕;
  • 相同的语言和时区;
  • 相似的 WebGL 和其他环境信息。

隐身、VPN、清 Cookie,解决的不是同一个问题

这几个东西经常被放在一起讲,但它们实际上处理的是不同层面。

操作本地记录 / Cookie公网 IP浏览器环境
打开隐身模式隔离、临时保存通常不变大部分仍来自同一设备
清除 Cookie被删除不变基本不变
使用 VPN基本不受影响改变基本不变
使用代理基本不受影响改变基本不变
更换浏览器使用独立数据通常不变更多信号发生变化
更换设备完全独立可能变化大量信号发生变化

所以并不存在一个简单的“重置身份”按钮。

更容易理解的方法,是把问题拆成三个:

  1. 浏览器在本地保存了什么?
  2. 网络向网站暴露了什么?
  3. 网页还能从浏览器和设备读取什么?

隐身模式主要解决的是第一个问题。

隐身模式能阻止浏览器指纹吗

不能简单这么理解。

很多浏览器指纹信号,并不是从以前保存的 Cookie 里拿出来的。

而是在网页运行时,从当前浏览器和设备环境中读取。

例如:

  • 图形渲染;
  • WebGL;
  • 屏幕属性;
  • 浏览器能力;
  • 语言;
  • 时区;
  • 其他环境信息。

不同浏览器可能会在隐私模式下限制其中一些信息,所以不能说任何情况下普通窗口和隐身窗口的指纹都完全一致。

但更大的事实没有变:

隐身模式的设计目标,并不是给你的设备生成一个全新的浏览器指纹。

如果你真正关心的是浏览器指纹,就应该直接看浏览器暴露了哪些信号,而不是看到右上角出现一个“隐身”图标,就默认整个环境已经换了。

可以在普通窗口和隐身窗口各跑一次 EnvTrace 浏览器指纹检测,对比结果。

隐身模式什么时候真的有用

说到这里,并不是说隐身模式没有价值。

它非常适合这些场景:

  • 不希望一轮浏览记录留在普通历史里;
  • 在共用电脑上临时登录账号;
  • 想绕开普通窗口里已有的 Cookie;
  • 临时登录另一个账号;
  • 想从一个比较干净的本地会话开始访问网站。

这些都是很实际的用途。

问题只在于:

“隐身浏览”和“匿名浏览”并不是同一个承诺。

不要只看浏览记录有没有消失

如果你想知道隐身模式到底改变了什么,只看关闭窗口以后历史记录还在不在,其实只看到了设备这一侧。

还可以继续看网站这一侧。

比如:

  • IP 有没有变化;
  • 浏览器信息有没有变化;
  • WebGL 还能看到什么;
  • 屏幕、语言、时区是否还在;
  • 整个浏览器和网络环境是否发生了明显变化。

这也是 EnvTrace 更关注的角度。

我们不希望把在线隐私简单缩成一个 IP,或者一个所谓的“指纹编号”。

更有意义的是把网络和浏览器放在一起看:

到底什么变了,什么没变,网站还能看到什么。

隐身模式会给你一个更干净、更独立的浏览会话。

但它不会给你一台新的电脑。

理解这一点,基本也就理解了隐身模式到底能隐藏什么,又隐藏不了什么。

常见问题

隐身模式能隐藏我的 IP 吗?
不能。隐身模式主要隔离本地浏览记录和 Cookie,不会更换网络出口。普通窗口和隐身窗口访问同一网站时,对方通常仍看到相同的公网 IP。
隐身模式会改变浏览器指纹吗?
通常不会明显改变。隐身窗口仍运行在同一台设备、同一浏览器和图形环境中,WebGL、屏幕、语言等信号往往仍然可见。
隐身模式为什么会让网站像第一次访问?
多数情况下是因为普通窗口的 Cookie 没有进入隐身会话。网站失去原有 Cookie,但 IP 和许多浏览器环境信号可能仍然相同。
清 Cookie 和改变浏览器指纹是一回事吗?
不是。Cookie 是网站存在浏览器里的数据;浏览器指纹来自网页运行时读取的环境特征。清 Cookie 不会自动消除后者。
隐身、VPN 和清 Cookie 解决的是同一个问题吗?
不是。隐身主要处理本地记录与 Cookie;VPN 和代理改变网络出口 IP;浏览器指纹更多来自设备和浏览器本身。三者属于不同层面。
隐身模式能阻止网站通过浏览器指纹识别我吗?
不能单独依靠隐身模式。许多指纹信号在页面运行时即可读取,不依赖之前保存的 Cookie。需要直接查看浏览器暴露了哪些环境信号。

看看网站还能读到什么

在普通窗口或隐身窗口运行 EnvTrace 浏览器指纹检测,对比 IP、WebGL 与其他环境信号。

检测浏览器指纹→
继续阅读

相关文章