在大多数隐私示意图里数一数方框,你会得到三个或五个跳点,每个都挂着不同公司的标志。 数一数真正能对这些方框采取行动的组织 ,这个数字往往缩到两个。链条只有在依赖彼此独立时才起到隔离信任的作用,而跳数对此一无所知。这个落差正是唯一值得追问的问题。

两张地图会有帮助。一张追踪数据包的去向;另一张记录每个环节由谁运营、付费、管理,以及谁可能被强制采取行动。第二张图并不光鲜,通常也不完整,却更可能改变一个决定。

先画出流量路径,再画出控制路径

在两个隧道服务前面放一个租来的代理,看起来像三方。把托管商、控制面板账户、账单身份和接收法律请求的地址写下来,这三方可能归结为同一个云租户和一个恢复邮箱。流量路径没有变化,改变的是对独立性的描述。

把每一行标注为已知、推断或未知,并写下标注的依据。品牌名称只能确定谁把服务卖给你。它不能确定谁拥有那台机器,更不能确定客户记录是否与另一项服务的记录放在同一个数据库里。

纪律比表格更重要。一旦「未知」成为允许的取值,图就不再自我恭维,而是开始显示哪一项缺失的事实会推翻结论。

跳数看不见的东西

跳点描述的是封装与转发。它对共享管理、共享上游过境、共享支付工具或共享恢复渠道只字不提,而这两项名义上不同的服务悄悄变成一项,恰恰就发生在这四处。

设想一个设计:第一跳和最后一跳属于不同公司,但都位于同一家过境服务商之后。从这家服务商的位置看,关于两端的大量元数据走的是同一套基础设施。这不是身份认定的证据;这是一个被跳数摘要完全省略的依赖。

相反的错同样常见。假定所有权分离就能保证隔离,忽略了运营方会以同样的方式被入侵、被强制或仅仅疏忽大意。独立性是一件一件确认的,不是标志授予的。

自治系统是一条路由边界

AS 号标识的是一个向对等方呈现一致路由视图的域。这句话讲的是路由策略,而不是公司所有权、人员、司法辖区或凭据隔离。不同 AS 号背后的两项服务可能同属一个所有者,而分布在多个 AS 号上的一项服务仍然只有一个运营方。

从 looking glass 读取 AS 号,是为你地图上「过境」一行做合理的第一步。它并不测量你某天晚上流量实际走过的路径,也不该被写成那样。路径不明的地方,就写不明。

每一跳要填的四行

用同样四个问题、同样顺序逐条走一遍每个端点,让缺口保持可见,而不是被一句自信的总结抹平。

  • 谁能读到内容? 说出终止保护层的一方,以及它掌握哪些明文或密钥。
  • 谁能操作这台机器? 把基础设施所有者与持有控制台权限的人区分开,并检查该权限是否与链上的另一项服务共享。
  • 谁的记录能把它与别的东西联系起来? 账单身份、恢复地址、支持账户和支付工具是常见的桥梁。
  • 谁来回应数据请求? 确认法律实体及其所在司法辖区,然后问这个实体究竟保留了什么数据。

接着记录每个答案的来源:供应商文档、已公布的政策、直接观察,还是你因为另一种解释不方便而做出的推断。有具体留存声明支撑的一行,比靠「网站看起来很专业」支撑的一行更有力。

共享依赖何时才真正重要

隐私问题从来不是共享依赖是否存在,而是这个依赖能把什么连起来。共享管理访问与被动的加密流量可见性是两种不同的暴露,账户关联又与两者都不同。在得出任何结论之前,先点明观察、权限和留存记录。

关于观察者与关联的讨论见 RFC 6973 ,它给出了可操作的框架:列出每个实体学到什么,再问把这些收获合起来会得到什么。两方观察到相似的元数据,是值得审查关联的理由。它不是被测量出来的身份认定概率,也不该被当作那样呈现。

认真做下来,三方例子会拆成几个独立的发现。共享托管但没有共享控制台权限,是供应链上的集中。共享恢复邮箱是一座管理之桥。两者都真实存在;只有后者能让一次入侵跨越两道边界。

你最终得到的不是一份匿名性证书。它是一份站得住脚的陈述:独立性在哪里被核实、在哪里被假设,以及哪一个事实会让你改变看法。这比在图上再画一个箭头要好。

相关文章