[论文解读] SurferMonkey: A Decentralized Anonymous Blockchain Intercommunication System via Zero Knowledge Proofs
SurferMonkey 提出了一种去中心化、匿名的区块链互操作系统,利用零知识证明(ZKPs)实现安全、抗MEV且私密的跨链消息传递。它引入了DACT协议以实现匿名跨链转账,并通过去中心化基础设施实现,利用zk-SNARKs防止链上和链下关联分析,确保用户隐私,并抵御理性参与者和审查行为。
Blockchain intercommunication systems enable the exchanges of messages between blockchains. This interoperability promotes innovation, unlocks liquidity and access to assets. However, blockchains are isolated systems that originally were not designed for interoperability. This makes cross-chain communication, or bridges for short, insecure by nature. More precisely, cross-chain systems face security challenges in terms of selfish rational players such as maximal extractable value (MEV) and censorship. We propose to solve these challenges using zero knowledge proofs (ZKPs) for cross-chain communication. Securing cross-chain communication is remarkably more complex than securing single-chain events as such a system must preserve user security against both on- and off-chain analysis. To achieve this goal, we propose the following pair of contributions: the DACT protocol and the SurferMonkey infrastructure that supports the DACT protocol. The DACT protocol is a global solution for the anonymity and security challenges of agnostic blockchain intercommunication. DACT breaks on- and off-chain analysis thanks to the use of ZKPs. SurferMonkey is a decentralized infrastructure that implements DACT in practice. Since SurferMonkey works at the blockchain application layer, any decentralized application (dApp) can use SurferMonkey to send any type of message to a dApp on another blockchain. With SurferMonkey, users can neither be censored nor be exposed to MEV. By applying decentralized proactive security, we obtain resilience against selfish rational players, and raise the security bar against cyberattacks. We have implemented a proof of concept (PoC) of SurferMonkey by reverse engineering Tornado Cash and by applying IDEN3 ZKP circuits. SurferMonkey enables new usecases, ranging from anonymous voting and gaming, to a new phase of anonymous decentralized finance (aDeFi).
研究动机与目标
- 解决跨链通信中的关键安全与隐私挑战,特别是来自理性参与者(如 MEV 提取者和审查者)的威胁。
- 克服现有跨链桥的局限性,如中心化信任、易受抢先交易攻击,以及面临链上和链下关联分析的风险。
- 在不依赖可信第三方或中心化实体的前提下,实现跨链消息传递的端到端匿名性。
- 设计一种对链上攻击和链下启发式分析均具备韧性的系统,防止用户身份被揭露。
- 通过模块化、可组合的基础设施,支持跨多个区块链的匿名去中心化应用(dApps)的实际部署。
提出的方法
- 设计 DACT(去中心化匿名跨链转账)协议,作为利用 ZKPs 实现匿名、安全跨链通信的全局解决方案。
- 在以太坊上实现多合约基础设施,包括 Mixer SC、Merkle Tree SC、Router SC、Verifier SC 和 dApp SC,用于管理交易流程与验证。
- 使用 zk-SNARKs 生成成员资格的简洁、非交互式证明,确保输入和输出交易之间无法关联。
- 集成 Revert 功能并采用反应式乐观安全机制,使用户无需依赖预言机或 dApp 节点即可恢复资金,提升用户资金控制权与系统韧性。
- 利用 IDEN3 ZKP 电路,并逆向工程 Tornado Cash,使用 Circom、JavaScript 和 Solidity 实现一个生产就绪的原型验证。
- 通过要求 dApp 所有者或分布式签名方签署 Merkle 树叶节点,实现去中心化的主动安全机制,签名和消息内容在 ZKP 电路中均不被泄露。
实验结果
研究问题
- RQ1如何使跨链通信在面对 MEV 提取者和审查者等理性参与者时保持安全?
- RQ2零知识证明能否有效打破多区块链系统中链上和链下的关联分析?
- RQ3哪些架构模式可实现跨链 dApp 交互中的端到端匿名性,且不依赖可信中介?
- RQ4去中心化系统如何在无活跃预言机或 dApp 节点参与的情况下确保用户资金恢复?
- RQ5在多链、多 dApp 的互操作管道中,部署 zk-SNARKs 的性能与 gas 成本影响如何?
主要发现
- SurferMonkey 原型验证成功展示了通过 zk-SNARKs 防止通过链上和链下分析实现交易关联,实现了跨链消息传递的端到端匿名性。
- ZKP 验证的 gas 成本保持恒定且呈次线性增长,即使电路复杂度提升,也验证了 zk-SNARKs 在实际应用中的简洁性。
- Merkle 树的深度显著影响提交叶节点的 gas 成本,表明隐私强度与交易成本之间存在关键权衡。
- Revert 功能使用户无需依赖预言机或 dApp 节点即可完全恢复资金,增强了用户自主权与系统韧性。
- 通过混淆交易意图和目标地址,系统成功抵御了 MEV 攻击,消除了跨链 MEV 的机会。
- 使用 IDEN3 电路并逆向工程 Tornado Cash 代码的实现,证实了构建安全、可组合且可审计的匿名互操作层的可行性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。