跳到主要内容

以太坊的匿名神话:研究人员如何揭露 15% 的验证者

· 阅读需 6 分钟
Dora Noda
Software Engineer

区块链技术(如以太坊)的核心承诺之一是一定程度的匿名性。被称为验证者的参与者应当在加密化名的面纱后运行,以保护其现实身份,从而保障其安全。

然而,来自 ETH Zurich 及其他机构的研究人员在最近的论文《Deanonymizing Ethereum Validators: The P2P Network Has a Privacy Issue》中揭示了这一假设的关键缺陷。他们展示了一种简单、低成本的方法,能够将验证者的公开标识直接关联到其运行机器的 IP 地址。

简而言之,以太坊验证者并不像许多人想象的那样匿名。该发现足以让研究人员获得以太坊基金会的漏洞赏金,彰显了此隐私泄露的严重性。

漏洞是如何产生的:Gossip 中的缺陷

要理解该漏洞,首先需要了解以太坊验证者之间的基本通信方式。网络拥有超过一百万的验证者,持续对链的状态进行“投票”。这些投票称为 attestations,并通过点对点( P2PP2P )网络广播给所有其他节点。

如果每个验证者都向所有人广播每一笔投票,网络将瞬间被淹没。为了解决这一问题,以太坊的设计者实现了一种巧妙的扩展方案:网络被划分为 64 条独立的通信通道,称为 subnets

  • 默认情况下,每个节点(运行验证者软件的计算机)只订阅这 64 条子网中的 两条。它的主要职责是忠实地转发这两条通道上看到的所有消息。
  • 当验证者需要投票时,其 attestation 会随机分配到 64 条子网中的一条进行广播。

漏洞正出现在这里。 想象有一个节点负责管理 12 号和 13 号通道。整天它只转发这两条通道的消息。但突然,它向你发送了一条属于 45 号通道的消息。

这是一条强有力的线索。为什么一个节点会处理它本不负责的通道消息?最合乎逻辑的推断是 该节点本身生成了这条消息。这意味着创建 45 号通道 attestation 的验证者正运行在这台机器上。

研究人员正是利用了这一原理。通过部署自己的监听节点,他们监控同伴发送 attestation 时所使用的子网。当同伴发送的消息来自其未正式订阅的子网时,研究人员即可高度自信地推断该同伴托管了相应的验证者。

该方法的效果令人震惊。仅使用 四个节点,历时三天,团队成功定位了超过 161,000 个验证者的 IP 地址,约占整个以太坊网络的 15%

为什么这很重要:去匿名化的风险

曝光验证者的 IP 地址绝非小事。这为针对性攻击打开了大门,威胁到单个运营者乃至整个以太坊网络的健康。

1. 针对性攻击与奖励盗窃
以太坊会提前几分钟公布下一个区块的提议验证者。攻击者若掌握该验证者的 IP 地址,可发动 拒绝服务(DDoS)攻击,使其离线。如果验证者错过了四秒的提议窗口,机会将转移给排在后面的验证者。若攻击者正是后者,则可窃取本应归属受害者的区块奖励和宝贵的交易费用(MEV)。

2. 对网络活性与安全性的威胁
资源充足的攻击者可以反复进行此类“抢块”攻击,使整个区块链变慢甚至停摆(活性攻击)。在更严重的情形下,攻击者可利用这些信息发起网络分区攻击,使网络不同部分对链的历史产生分歧,从而危及其完整性(安全攻击)。

3. 揭示中心化的现实
研究还揭示了网络去中心化的一些不舒服的真相:

  • 极端集中:团队发现有单个 IP 地址托管了超过 19,000 个验证者。单台机器的故障可能对网络产生不成比例的影响。
  • 对云服务的依赖:约 90% 被定位的验证者运行在 AWS、Hetzner 等云服务商上,而非个人家庭节点,这显示出显著的中心化倾向。
  • 隐藏的依赖关系:许多大型质押池声称其运营者是独立的,但研究发现不同、相互竞争的质押池的验证者竟共用同一台物理机器,形成了潜在的系统性风险。

缓解措施:验证者如何自我保护?

幸运的是,已有多种方式可以防御此类去匿名化技术。研究人员提出了以下几种缓解方案:

  • 制造更多噪声:验证者可以选择订阅超过两条子网,甚至全部 64 条。这会让观察者更难区分转发的消息与自行生成的消息。
  • 使用多节点:运营者可以将验证职责分散到不同 IP 的机器上。例如,一台节点负责 attestation,另一台私有节点仅用于提议高价值区块。
  • 私有对等:验证者可以与可信的私有节点建立专属连接,以在小范围内转发消息,隐藏真实来源。
  • 匿名广播协议:如 Dandelion 等更高级的方案,通过先在随机“茎”上传递再广泛广播,混淆消息来源,可予以实现。

结论

该研究有力地展示了分布式系统中性能与隐私之间的固有权衡。为了扩容,以太坊的 P2PP2P 网络采用的设计在一定程度上牺牲了最关键参与者的匿名性。

通过将此漏洞公之于众,研究人员为以太坊社区提供了认识问题并加以修复的知识与工具。这项工作是迈向更稳健、更安全、真正去中心化的未来网络的重要一步。