跨链桥在加密领域因被攻击而损失的钱,比几乎任何其他类别都多。
Ronin 跨链桥在 2022 年损失了 6.25 亿美元。Wormhole 同年损失了 3.2 亿美元。Nomad 在几个月后又损失了 1.9 亿美元。
尽管如此,如今跨链桥比以往任何时候都更重要。
TAC、Celo 和数十个其他项目都依赖它们,把原本彼此无法通信的区块链生态系统连在一起。
要理解为什么跨链桥既不可或缺又如此危险,首先要理解它们在技术层面到底在做什么。
摘要
- 区块链桥是一种软件,它在一条链上锁定资产,并在另一条链上铸造等值的表示,让价值在彼此隔离的网络间流动。
- 跨链桥是高价值攻击目标,因为它们托管着被锁定的资产,有时高达数十亿美元,这些资产存放在智能合约或多签钱包中。
- 目前主要有四种桥设计(锁定-铸造、销毁-铸造、流动性池和轻客户端验证),各自有不同的安全权衡。
- 大多数重大黑客事件利用的是验证者密钥被盗、预言机被操纵,或智能合约中的逻辑漏洞,而不是底层区块链本身。
- 使用零知识证明的最新“最小信任”设计正在减少攻击面,但今天还没有完全无风险的跨链桥。
区块链桥到底在做什么
两条区块链在默认情况下是完全隔离的系统。
比特币 (BTC) 完全感知不到 以太坊 (ETH) 的存在。以太坊也无法原生读取 Solana (SOL) 的状态更新。
每条链各自处理自己的交易,维护自己的账本,独立达成共识。它们之间没有共享内存。
跨链桥就是在这中间创造“跨链移动”幻象的软件层。
实际上,资产并不会字面意义上“从一条链移动到另一条链”。真实发生的是一个两步过程:资产在源链上被锁定(或销毁),然后在目标链上铸造(或释放)一个对应的表示。
跨链桥协议负责协调这两件事,并保证它们被绑定在一起。
跨链桥并不会瞬移你的代币。它是在一侧把它们锁起来,然后在另一侧打印一张欠条——安全问题始终在于:谁控制锁,谁有权打印?
这个差别对安全而言至关重要。
原始资产是被托管在某个地方的。那处托管点就是攻击面。
托管方式究竟是智能合约、由一个验证者委员会控制的多签钱包,还是某种密码学证明系统,几乎决定了这座桥有多安全。
延伸阅读:Bitget 一年内阻止 1.5 亿次网络攻击,新报告披露
四种主要的跨链桥设计
并不是所有跨链桥的工作方式都一样。现在主流生产环境中有四种占主导的架构模式,每一种在安全性、速度、资金效率和去中心化之间做出的取舍都不同。
锁定-铸造(Lock-and-Mint) 是最常见的设计。用户把代币发送到源链上的一个智能合约中,在那里被锁定。跨链桥的验证者集合观察到这笔存款,并指示目标链铸造该代币的“包装”版本。以太坊上的包装比特币(WBTC)就是这样工作的。早期第二层网络上的大部分跨链 ETH 也是如此。包装代币代表对被锁定原始资产的一项索取权。当用户想回到源链时,他们销毁包装代币,源链上的锁随之释放。
销毁-铸造(Burn-and-Mint) 用于当某个代币发行方可以直接掌控多条链上的供应时。这里不再包装,而是在源链上销毁代币(从而减少那条链上的总供应),并在目标链上重新铸造新的代币。Circle 为 USD Coin (USDC) 设计的跨链转移协议 CCTP 就是这样运作的。因为由 Circle 自己授权铸造,所以不存在一池供攻击者盗取的被锁定代币,但你等于把全部信任交给了 Circle。
流动性池桥(Liquidity Pool bridges),例如 Hop Protocol 和 Across Protocol 使用的模式,则截然不同。它们不锁定资产、不铸造表示,而是依赖掌握两条链上原生代币的流动性提供者。用户在源链上存入代币,目标链上的某个 LP 就立刻把等量的原生代币发给他。LP 随后通过协议得到补偿。这种方式更快,也避免了包装代币,但依赖充足的流动性,并引入了 LP 作为交易对手的风险。
轻客户端验证(Light-Client Verification) 是最“最小信任”的设计,也是最难构建的一种。在这里,目标链在智能合约或 ZK 电路内部直接运行源链共识的密码学证明。不需要外部验证者委员会,数学证明就能说明存款确实发生了。IBC(跨链通信协议),即 Cosmos (ATOM) 生态使用的桥标准,大致采用了这种模式。像 Succinct 的 SP1 和 Polyhedra 的 zkBridge 这类基于 ZK 的桥更进一步,利用零知识证明以更低成本验证状态转换。
延伸阅读:HIVE 刚以零利率借入 1.15 亿美元,对赌比特币挖矿
为什么跨链桥集中如此巨大的风险
跨链桥的攻击面从根本上不同于单条区块链的攻击面。像以太坊这样的链,由数千亿美金的质押 ETH 和成千上万的验证者来保护。要攻破它,就必须在同一时间攻破其中很大一部分验证者,这是一个几乎不可能付出的高昂代价。
一座桥的验证者集合通常小得多。为 Axie Infinity 游戏侧链服务的 Ronin 跨链桥,仅由 9 个验证者节点保护。攻击者只需要控制其中 5 个就能授权提款。朝鲜国家支持的黑客组织 Lazarus Group 通过钓鱼和虚假求职等手段,拿下了 5 把私钥,进而授权了 6.25 亿美元的虚假提款。底层的以太坊和 Ronin 链本身从未被攻破。
Ronin 被黑并不是区块链被攻破,而是一套 9 选 9 的验证者委员会中,有 5 把密钥被不安全地保管。跨链桥在设计上就是最薄弱的一环。
这正是外部验证型跨链桥的结构性问题。它们的安全性并不会从所连接的区块链继承,而是由一个独立、通常更小、也更少经过实战检验的系统支撑。跨链桥托管的价值越大,越能吸引攻击者,但它的安全模型却不会随托管资产规模自动提升。
2022 年 2 月的 Wormhole 漏洞在机制上有所不同,但结果类似。攻击者在 Wormhole 的 Solana 智能合约中发现了一个漏洞,可以伪造“守护者签名验证”事件。他说服合约相信,以太坊上已经存入了 12 万枚 ETH,而事实并非如此,于是在 Solana 上凭空铸造了价值 3.2 亿美元的包装 ETH。没有任何验证者被攻破,问题出在合约逻辑本身。Wormhole 背后的 Jump Crypto 在 24 小时内补足了资金,从而避免了市场崩盘,但并没有从根本上修复这类缺陷的结构性风险。
延伸阅读:Polymarket 用户在前端攻击中损失 310 万美元,CFTC 调查仍在继续
验证者与预言机在桥中扮演什么角色
除了纯轻客户端系统,大多数跨链桥都依赖某种形式的外部观察者来确认存款是否发生,并授权相应的铸造或释放。
这些观察者有不同的称呼——验证者、转发者、守护者、证明者(attestors)——但都在做同一件事:监控一条链,并向另一条链汇报状态。
信任问题永远是:要付出多大代价,才能让这些观察者说谎?
在多签模型里,答案是“攻破足够多的密钥”。在基于预言机的模型中,答案可能是“操纵预言机上报的价格或区块数据”。在基于权益证明的验证者模型中,答案则是“获取足够多的质押份额以控制超级多数”。
LayerZero 使用的是一种由每个应用配置自己预言机和转发者的模型,为应用提供特定安全性,而非共享的桥验证者集合。这把风险从“一个桥失败,所有应用遭殃”转变为“每个应用各自承担风险”,在隔离性方面是有意义的改进,但也把正确配置安全性的责任更多推给了开发者。
Axelar 则使用一套自己的权益证明网络来观察跨链事件。桥的安全性因此绑定在 Axelar 自身代币的质押价值上,这与一条一层区块链类似,但专门面向跨链消息。
根本挑战在于:如果不运行目标链的完整节点,你就无法原生验证外链的状态,而这非常昂贵。轻客户端和 ZK 方案通过密码学来解决这个问题。除此之外的一切方案,都涉及信任某个中介能如实上报。
ZK 证明如何改变跨链桥安全性
零知识证明是从长期看解决跨链桥信任问题最有前景的方案。ZK 证明允许一方向另一方证明某个陈述为真,例如“这笔交易已被打包进以太坊的一 个最终确认区块中”,而验证者无需自己重放所有计算。 从密码学层面来看,这一切都可以在无需信任任何外部验证者的情况下完成。证明本身就是“背书”。即便验证者被攻破,也无法伪造一个有效的零知识证明(ZK proof)。没有可被窃取的私钥,安全性完全来源于数学本身。
现实中的难点在于计算成本。要为整条链的共识生成 ZK 证明(比如以太坊权益证明机制中,对数千个验证者的 BLS 签名聚合进行证明),需要巨大的计算工作量,尽管随着 ZK 证明技术的成熟,这个成本已经显著下降。像 Succinct Labs、=nil; Foundation 和 Polyhedra 这样的团队,正在构建专门为区块链状态验证优化的证明系统。
目前在 CoinGecko 上很火的一级网络 TAC,对这个问题采取了一个特定路径:通过混合的验证者与证明模型,把以太坊的 EVM 开发者生态连接到 TON(The Open Network)以及 Telegram 用户群。像 TAC 这样的项目体现了市场对跨链桥的实际需求——Telegram 大约有 9.5 亿月活用户,要把这个体量的用户与兼容以太坊的应用连接起来,就需要正是这种由桥提供的跨链基础设施。
当前 ZK 桥的权衡主要在于延迟。为一个已经最终确认的以太坊区块生成证明可能需要几分钟。对于需要快速终局性的应用来说,人们往往仍然更偏好采用带欺诈证明窗口的乐观桥,接受更长的提款延迟(主流乐观 Rollup 通常是 7 天)来换取实现上的简单。
延伸阅读:Chainlink’s Wallet Record Turns LINK’s $9 Rebound Into The Main Test
原生桥 vs. 第三方桥
当你在一条一级网络(L1)与其二层 Rollup 之间转移资产时,你通常使用的是“原生桥”(native bridge)——由该 Rollup 团队自行搭建和维护,并与 Rollup 自身安全模型深度集成的桥。Arbitrum (ARB) 的原生桥、Optimism (OP) 的原生桥以及 zkSync 的原生桥都属于这一类。
原生桥继承了 Rollup 大部分的安全性保障。在乐观 Rollup 上,欺诈性的提款可以在 7 天的欺诈证明窗口内被挑战;在 ZK Rollup 上,只有当一批交易的有效 ZK 证明提交到以太坊之后,相应提款才会最终确认。这些保障显著强于绝大多数第三方桥。
权衡在于,原生桥只有一个方向:在 L1 与其对应的 L2 之间往返。它们不能把以太坊资产桥到 Solana,也不能直接在两条不同的 L2 之间转移资产。要进行跨生态的资产移动,比如从以太坊到 Solana,或者从 Arbitrum 到 Polygon (POL),用户就必须使用第三方桥,而这类桥会引入上文所述的验证者风险和智能合约风险。
这就形成了一个实用的分类方法:当安全性是首要考虑时,在 L1 与 L2 之间迁移资产优先使用原生桥;当你需要跨生态移动资产并愿意接受额外风险时,使用经过审计且有运行记录的第三方桥。在使用任何跨链转移服务前,至少要确认该桥是否经过可信安全公司(Trail of Bits、OpenZeppelin、Certik、Spearbit)审计,并查看其是否有过被攻击的历史,这是最低限度的尽职调查。
延伸阅读:Russian Hackers Found A Signal Weak Spot In Recovery Keys
谁实际需要使用跨链桥
大多数普通加密货币用户并不需要桥。如果你把 Bitcoin (BTC) 或 Ethereum (ETH) 放在中心化交易所里,只是想获得价格波动的敞口,那你根本不会接触到任何跨链桥。
当你想要使用的应用所在的链,与资产当前所在的链不同时,你才需要桥。比如你的 ETH 在以太坊主网,但你想用 Arbitrum 上的某个 DeFi 协议,那你会通过 Arbitrum 的原生桥把资产跨到 Arbitrum。如果你想在 Solana 原生应用中使用最初在以太坊发行的 USDC,你就会使用某个第三方桥。
开发跨链应用的开发者则是跨链桥的重度用户。任何希望在多条链间聚合流动性的协议,或任何希望让玩家可以在多个网络间使用同一资产的游戏,都需要在产品中原生集成跨链桥基础设施。这也是为什么像 LayerZero、Axelar、Wormhole 和 Hyperlane 这样的项目,会把自己定位为“全链消息协议”(omnichain messaging protocols)而不仅仅是桥:它们更像是面向开发者的底层基础设施,而不只是给终端用户转币的工具。
对普通用户而言,实用建议很简单:在 L1 与主流 L2 之间迁移资产时,优先使用官方的原生桥。对于第三方桥,只投入你承受得起损失的资金,查看其审计历史,并优先选择那些在有相当 TVL 的情况下,已经无事故运行至少一年的项目。“慢慢桥,少量桥”的做法并不是怯懦,而是忠实反映了当下这项技术真实的风险状况。
延伸阅读:Claude Fable 5 May Return As Washington Softens Anthropic Standoff
总结思考
跨链桥解决的是一个真实且无法回避的问题。
区块链本质上是主权系统。如果没有桥,加密世界就会变成一堆互相隔绝的孤岛,资产和应用之间完全无法互通。
桥所实现的互操作性,是大多数 DeFi、链游以及多链生态的基础,而像 TAC 这样的项目正积极在这一方向上不断建设。
那些黑客攻击,并不能说明桥这个概念在本质上就是错误的。
它们恰恰说明,早期的桥在设计中做出了过于激进的安全权衡——小规模验证者委员会、未经审计的智能合约逻辑、对预言机的高度依赖——这些安全设置并不足以支撑后续锁定的巨大价值。
每一次重大攻击事件,都促使行业向更好的设计演进:更大的验证者集合、形式化验证、基于 ZK 的证明系统,以及可以直接继承 L1 安全性的原生 Rollup 桥。
接下来阅读:PUMP Gains 12% While Protocol Data Warns The Rebound May Be Fragile





