免邮箱注册只改动了表单上的一个字段。它没有改变网络上的源地址,没有改变服务在内部签发的标识符,也没有改变浏览器发往每个网站的 Cookie。这是三个彼此独立的问题,而只有第一个跟账户有关。下面说明每一层实际握着什么,以及哪个决定属于你而不是服务商。

把匿名性看作针对每一个观察者分别成立的属性。只要问一句是哪个观察者,诚实的答案就会变。

化名账户仍然是一个账户

服务商可以在从未索要法定姓名的前提下签发账号、设备密钥或订阅令牌。但这个对象仍然在服务内部把会话绑在一起:同一个套餐、同一个令牌,连续数月。

运营方能在该令牌上挂什么,取决于别的系统。用可追踪的方式付款就有支付记录;写过邮件就有支持邮箱;运营日志里可能有设备标识或连接时间戳。这些都不是注册表单要求的,也都不是免邮箱表单能排除的。表单决定的是当时问了什么,不是之后存在什么。

提交诊断信息或开一张支持工单,可能补上原始表单从未索取的细节。

隧道出口必然看到什么

出口负责终止你的连接,因此它知道你这次会话所用的源地址,以及会话开始的时间。它也知道这条连接对应哪个内部密钥或账户,因为正是这条映射决定了流量往哪里送。

WireGuard 的文档在这里直白得少见:对端身份就是公钥,不是什么隐藏属性。

从出口发往目标的是另一条连接。如果出口地址与其他用户共享,对面的网站看到的是一个公共地址而不是你的。这种分离是真实存在的,也是共享出口唯一提供的分离。它不会把你的会话对运营方藏起来,也不会让能同时观察两端的人把你混进人群,而这恰恰是 RFC 6973 用整篇篇幅讨论的关联问题。

目标仍然收到什么

网站看到的是出口地址、请求,以及你的客户端自愿交出的东西。Cookie、已登录的会话、浏览器指纹和保存的账户都会原样穿过 VPN 连接,因为隧道是把它们运过去,而不是替换掉。

登录个人账户会让你在那个网站面前被识别出来,无论 VPN 账户挂着什么名头。

域名解析值得单独一行。如果查询发往运营方自建的解析器,运营方就能看到你请求的名字。如果发往公共解析器,那个解析器会看到,路径上任何能看到明文 DNS 的人也会看到。无论哪种,用哪个解析器都是注册表单没有替你做主的隐私决定。

关联究竟发生在哪里

流量分析不需要网页内容。连接的时间、传输量,以及哪个出口与哪个目标通信的模式,在两端都被观察时就能把源连接和出口连接对上。所以共享出口只防一个观察者,防不住两个合作的观察者。

传输加密改变的是能读到什么,不是能关联到什么。

取代口号的三问

每一个的归属都不同,所以在某一层做出的承诺覆盖不了另一层。下面几行就是整个论证的浓缩版。

ObserverWhat it can holdWhat actually changes it
Your access networkThe connection to the VPN endpoint, with volume and timingNothing on the account form
The VPN operatorSource address, session times, key-to-account mapping, names if it runs the resolverRetention policy, payment method, whether you contact support
The destination siteExit address, cookies, logged-in identity, request contentBrowser hygiene, logging out, separate profiles
An observer at both endsCorrelated timing and volume across the two connectionsPadding, cover traffic, a different exit at a different time

只有中间那一行跟账户有关,而且只是一部分。上面和下面的行由路由、留存策略和你自己的浏览器决定。

看清单,而不是看标签

公布数据清单、留存期限和身份流程的服务商,告诉你的是可以核对的东西。说自己匿名的服务商,只告诉了你一个词。要看注册时收集了什么、会话结束后还剩下什么,以及数据按什么程序交给第三方。

这三样缺失,标签就不能证明任何事。

从你真正在意的那个观察者出发,然后沿着表里的一行往下查:它看到哪个地址、握着哪个标识、保留多久。去修那一行出问题的地方,而不是给账户改名。这是这里唯一能改变结果的步骤。

相关文章