Aztec遭黑客攻击背后:零知识证明并非绝对安全
2026-06-15
隐私赛道再次为整个加密行业敲响警钟。
根据BlockSec Phalcon披露的分析报告,专注于零知识证明(ZK)隐私技术的Aztec Network遭遇攻击,其核心合约RollupProcessorV3被利用,损失金额超过215万美元。与传统DeFi攻击中常见的预言机操纵、闪电贷套利不同,这次事件暴露的问题更加底层——攻击发生在零知识证明验证逻辑与链上结算逻辑之间的认知偏差。
从技术细节来看,漏洞并非源于密码学本身失效,而是系统设计中的逻辑一致性问题。
Aztec的架构依赖ZK Rollup完成交易压缩和验证。理论上,零知识证明负责证明一组交易是合法的,而以太坊主网负责最终结算。但此次攻击中,参数numRealTxs没有被有效绑定到零知识证明实际验证的交易集合,导致证明系统理解的交易列表与L1结算层处理的交易列表出现偏差。
这种问题听起来抽象,却十分危险。
可以简单理解为,两名会计同时核对同一本账簿,但其中一人看到的是完整记录,另一人看到的却是经过删减后的版本。双方都按照规则工作,但最终核算结果完全不同。
攻击者正是利用了这种差异。
通过将真实存款转移到结算逻辑未处理的特殊槽位,攻击者绕过了负责扣减待处理存款余额的decreasePendingDepositBalance()函数。在系统看来,这部分资产已经完成合法验证;而在实际资金流转层面,对应资产并未被正常扣减。
结果就是链上凭空生成了没有任何抵押支持的私人余额。
随后攻击者再通过正常提现流程将这些余额兑换为真实资产完成套现,整个过程覆盖七种不同代币。攻击链条看似复杂,但本质上属于“状态同步失真”问题,而不是传统意义上的资金池被直接盗取。
这类事件对于ZK行业的影响可能比损失金额本身更值得关注。
过去几年,零知识证明一直被视为区块链扩容和隐私保护的重要方向。从zkSync、Starknet到Aztec,大量资本和开发者资源持续流入这一赛道。市场普遍认为,相比传统智能合约,ZK系统拥有更高的安全门槛。
现实却在不断提醒行业一个事实:密码学安全不等于系统安全。
很多攻击并非破解证明算法,而是发生在证明系统、状态管理、桥接逻辑以及结算模块之间的接口层。随着协议架构越来越复杂,开发团队需要验证的不仅是数学正确性,更要确保所有模块对同一状态拥有一致理解。
事实上,这已经成为整个Layer2生态共同面对的问题。
从Optimism、Arbitrum到多个ZK Rollup项目,近年来出现的安全事件中,相当一部分都源于跨模块设计缺陷,而非单纯代码错误。系统越先进,攻击面往往越隐蔽。
对于Aztec而言,215万美元损失或许尚在可控范围内,但此次事件暴露出的设计漏洞无疑会引发外界对隐私基础设施安全性的重新审视。
加密行业常说“代码即法律”,而在ZK时代,这句话可能需要进一步升级。
因为真正决定安全边界的,已经不只是代码本身,而是证明系统、状态机和结算逻辑能否始终保持同一种语言。当不同模块开始“各自理解规则”时,即便最先进的零知识证明,也可能成为攻击者利用的突破口。
