# 跨链桥与不可能三角分析

By [Martin Zhan](https://paragraph.com/@martin-zhan) · 2022-02-05

---

### 赛道现状

随着多链生态的爆发，近半年来桥接以太的跨链协议上TVL也呈现出不断攀升的状态。然而，由于不同区块链系统之间存在不同通信协议、身份管理、共识机制及其他差异，跨链互通依旧面临着与经典的不可能三角相似的问题——即扩展性，安全性和去中心化程度。以下将根据这三个维度来衡量目前市面上的跨链桥，并探讨未来跨链桥的发展空间和可能性。

探讨跨链桥的不同维度前，我们先来看下跨链桥的工作步骤和原理。资产成功的从源链转往目标链，通常要经历以下几个步骤：

1.  状态监控：通过预言机、验证器或中继器监控源链上状态，及时获取跨链请求。
    
2.  信息传递：一旦接收到跨链请求，从源链上将信息传递到另一条链（中间共识链或目标链）。
    
3.  达成共识：监控链的参与节点达成共识后将信息进一步传递到目标链。
    
4.  加密签名：参与节点对发送到目标链的信息进行加密签名。
    

而依照工作原理，目前市面上的跨链桥大致可以分为以下两种：

1.  通过锁定原生资产，铸造和销毁映射资产完成跨链。从A链跨到B链时，A链上的资产被跨链协议锁定在其智能合约地址中，并通过预言机通知B链上的智能合约后在B链上铸造等量映射资产。当用户需要跨回A链时，再通过智能合约将B链上的映射资产销毁，以赎回A链上的原生资产。
    
2.  通过挖矿激励的方式聚合流动性，在A、B链分别建立并使用流动性池作为跨链资产储备，同时利用锁定和争议机制，确保参与的节点无法转移用户资产。
    

### 安全性

当我们讨论跨链桥的安全性时，我们想问的问题其实是：每一笔跨链交易的真实性是由谁来验证的？破坏它的成本和可能性又是多少？

上文提及的两种跨链桥工作模式都存在对应的风险。第一种桥涉及超发风险和节点作恶风险。由于跨链请求、原生代币锁定、映射代币铸造等数据信息由第三方验证节点提供，因此用户或流动性提供者资金的安全性高度依赖这些验证器的准确性，而非源链或目标链的安全性。而验证器破坏安全性的代价和成本则取决于其所质押的资产，跨链协议应该确保抵押资产始终大于验证金额以防止作恶风险。

第二种流动性网络的跨链方案，由于用户在B链使用的资产已非跨链桥铸造的映射代币，而是在B链上部署原生代币智能合约的、普适性的代币，所以跨链后的资产已脱离跨链桥的背书支持。这类非托管方案，由于普适性代币崩盘可能性小于映射代币，安全性较之前有了巨大的提升。然而仍然高度依赖中间共识层，一旦共识层去中心化程度不足，资产依旧有被盗取的风险。因此，网络需要包含尽可能多的节点，同时设置合理经济激励以防止节点运行者作恶，以确保安全性最大化。

### 去中心化

去中心化程度最直接的评判标准就是参与验证的节点数量。数量越多，节点集体作恶的难度也就越高，相应地去中心化程度也就越高。下面的表格里罗列了目前市面上常见的跨链桥及其所支持的资产和区块链数量，以及各自的节点数。

通过上述表格可以看出，目前拥有节点数最多的是ThorChain, 其次是Anyswap和Connext. 然而，ThorChain并未披露其节点运行者的具体信息，匿名运行者的可靠性存疑，纵使拥有按节点数量评估下最高的去中心化程度，依旧要为其安全性画上一个问号。

### 可扩展性

可扩展性分为资产池的可扩展性与交易的可扩展性。交易的可扩展性受制于源链和目标链的出块速度和安全性，而资产池的可扩展性则取决于流动性激励或质押的资产总数。

交易的可扩展性可以类比Dex，而Dex里可扩展性最好的要数Uniswap。无需许可，任何ERC20代币一旦部署了流动性，任何人都可以自由地在上面进行交易。ChainSwap引入的无许可一键跨链部署功能，只要支付一定的费用就可以通过其门户桥接交换代币。然而，为了确保该功能的流畅度，ChainSwap选择采用了较为中心化的PoA共识机制，牺牲了一部分安全性以确保其可扩展性。也正是因此，ChainSwap曾多次遭到攻击。

资产池的可扩展性仅适用于前文提到的第二种流动性池模式，需要足够的激励保证流动性始终保持充裕。然而，虽然安全性相对第一种模式有所提高，其架构层面也更为复杂，部署难度的提升意味着需要更多的开发时间，也将导致可扩展性降低。

### 未来的跨链桥会如何发展？

1.跨链NFT桥

现阶段NFT玩家群体重叠度较低，如Solana以高性能，高吞吐量和低廉的NFT价格和gas fee吸引了很大一部分新人NFT玩家。对于NFT持有者而言，NFT作为资产的一部分，逐渐衍生出质押NFT挖矿，抵押NFT借贷等一系列金融产品。用户需要最大化运用自己的NFT，参与不同链上的金融活动，提升NFT利用率。同时，也能为自己所持有的NFT带来更多的流动性和潜在收益。而对于NFT项目方而言，可获取 NFT 的区块链越多，捕获额外用户和网络价值的机会就越大。因此我们可以期待，NFT未来将会复制Defi的发展路径，从单链到多链再到多链互通的进程。代表项目：Wormhole, Envelop。

2.Omnichain dApps (odApps) 概念桥

每一座锁定/铸造/销毁模式的跨链桥有自己的映射代币和信任模型，导致流动性进一步被割裂，并造成混乱和昂贵的使用体验。Omnichain的概念可以概括为资产和信息的转移与可编程性，而部署在Omnichain上的odApps可以利用多个网络的流动性池（如Uniswap, PancakeSwap)，在所有连接的网络上读取和更新状态。减少被攻击的概率同时，项目方无需关心部署在哪条链上，未来的应用也可以是原生的多链应用。代表项目：[ZetaChain](https://www.zetachain.com/), LayerZero

3.跨链聚合器

由于BD范围，技术壁垒等多层原因，单一跨链协议能桥接的资产类别和区块链数量有限，而交易聚合和信息聚合的需求却在不断攀升。跨链聚合器通过对比不同跨链协议中的最优价格，降低交易滑点，帮助用户搜寻时间和手续费最优的跨链桥，服务用户，同时对跨链桥项目方议价能力形成打击。代表项目：Lifi Protocol, XY Finance, Movr Network

4.跨链通讯设施

目前不同区块链间缺乏通讯能力，而跨链通信允许不同的协议验证数据和交易，无需第三方服务的干预，提升互操作性。相关技术如Stateless Simplified Payment Verification (SVP) 允许区块链估计交易的有效性，而无需存储有关交易的所有信息。此过程使区块链能够进行通信，而无需在彼此之间交换大量数据。代表项目：LayerZero，Axelar

5.Layer 2跨链桥

现有的Defi协议选择迁移和部署到不同的Layer 2：Uniswap选择了Optimism+Arbitrum，Curve选择了ZkSync，Aave则选择了Polygon。因此，Layer 2生态将面临与曾经的Layer 1相似的问题——流动性被割裂，且各Defi协议间缺乏可组合性与互操作性。此外，Rollup可以直接与Layer 1进行通讯，然而想要将资产从Rollup A向Rollup B转移，最原始的方案需要将资产从 Rollup A 提现到Layer 1（等待短则1 小时长则7 天以上的挑战期），再从Layer 1 存入 Rollup B。因此，为了凝聚二层间的流动性，不仅需要在 Rollup 和 Layer 1 之间架起一座桥梁，更需要在 Rollups 之间建立直接的桥梁，以保证交易的安全性和实时性。代表项目：Hop Exchange, Connext, Across Protocol

### 结尾

其实，跨链桥本身是个墒增的产物，而多链则不增加时间和空间的复杂度，因此，对于Vitalik来说，未来将是“多链“而非”跨链“。回到经典的不可能三角，跨链桥的存在本身为多链生态带来了可扩展性，却不可避免地增加了资产转移过程中的安全风险和中心化程度。然而，不管未来如何发展，只要多链生态始终存在，链与链间价值流动的需求也会愈发明朗。而跨链桥作为价值流动的承载体，将持续不断地迭代并涌现出更多优秀的项目，百家争鸣中，我们期待看到兼具「去中心化」，「安全性」和「可扩展性」的跨链解决方案。

### 附录：考量跨链项目的维度

![参考资料](https://storage.googleapis.com/papyrus_images/72dc4b15ee6ed44fb520d3f02256ea1636f8fa1f3bd04e027ee7779eeff5ebed.png)

参考资料

[https://andrecronje.medium.com/multichain-dapp-guide-standards-and-best-practices-8fabe2672c60](https://andrecronje.medium.com/multichain-dapp-guide-standards-and-best-practices-8fabe2672c60)

[https://medium.com/1kxnetwork/blockchain-bridges-5db6afac44f8](https://medium.com/1kxnetwork/blockchain-bridges-5db6afac44f8)

---

*Originally published on [Martin Zhan](https://paragraph.com/@martin-zhan/sC7SVMtsI1bqvqKZXoO2)*
