atom_crypto

Posted on May 23, 2022Read on Mirror.xyz

谁将成为跨链通讯协议标准? IBC vs LayerZero vs Axelar vs Wormhole ?

总览

通常情况下,我们将链与链间的沟通方式成为跨链通信,目前区块链已经逐步从单片链时代向多链,模块化区块链时代转变,我们从比特币,以太坊,发展到以太坊2.0和Layer2生态,Cosmos, Polkadot, Avalache的多链解决方案,以及像Solana这种高性能,高并发的单片链等的跨链互通新纪元。当然,所有的解决方案都是安全性,可组合性,可扩展性,去中心化等间的权衡和博弈。通常,我们将跨链通信分为信任最小化信任跨链通信和可信任跨链通信,最小化信任跨链通信指的是集群内部通信协议“Intra-cluster Communication”,比如以太坊和二层网络,就采用了欺诈证明/有效性证明等,Cosmos Hub间的IBC通信, 还有Polkadot 平行链和中继链的通信等。而集群和集群间的通信我们通常称为可信任跨链通信“Inter-cluster communication”。

以太坊上Rollups是基于少数诚实假设而状态验证的,而非大多情况下的多数诚实假设。通过欺诈证明/有效性证明,rollups可以确保存取款的原子性,以太坊最终确定rollups的交易有效性。以太坊可以理解为rollups的轻节点,rollups将数据发送到L1,任何L1节点都可以下载rollups的交易数据,但是只有部分愿意参与,通过付出一定成本/资源的节点可以参与到交易执行和rollups的状态创建中,大大减少了资源消耗。而任何单一全节点都可以基于少数诚实假设和数据可见证明,通过发出欺诈证明/有效性证明,从而进行状态更新和验证,保护网络其他节点。

而以rollups为代表的最小化信任跨链通信只解决了集群内部的通信问题,当我们不可避免的来到多链的区块链世界,集群间的通信就显得至关重要。例如Cosmos和以太坊生态间的跨链通信如何解决?例如如何实现Cosmos和Polkadot之间的跨链互通?目前这个方向的可信任跨链通信解决方案和最小化信任跨链通信相比,都存在一定问题,比如节点/中继者高度中心化的问题,比如为了实现可扩展性牺牲了一定的安全性,比如通过中心化可信任验证者/多签等方式实现。不管是Ronin,wormhole还是其他等高达上十亿美金的桥安全事故,都为投资者敲响了警钟。而朝鲜(被制裁国家,缺少外汇储备,和俄罗斯情况类似)的黑客/恶意攻击者,恰恰瞄准了多签,中心化的桥设计,一次又一次的通过智能合约漏洞非法获取巨额利润,增加其国家外汇储备,对于整个行业都带来了巨大的伤害。当然,我们可以通过各方紧密协调/配合和高难度的安全工作(例如审计,漏洞赏金等方式)实现相应的风险规避。

通用通讯协议

这里我们将着重于介绍协议层,而非Thorchain等这种单个跨链桥产品,当然Thorchain其上也可以搭建合成产品和Defi底层产品,但是和通用通信协议相比,他们无需信任,并且需要每个连接链上都有一个全节点,因此所耗费的计算资源/成本更为昂贵。而通用通讯协议除了底层设计以外,其上可以搭建更复杂/高级别的应用,比如桥聚合器,比如跨链NFT交易市场,比如跨链机枪池等,这也为其奠定了相较于单个跨链桥产品而言,其资本市场的极高估值和更广阔的目标市场。当然最核心的产品还是他们的桥应用,比如Axelar Bridge上的Satellite, 比如Wormhole Bridge的Potal, 比如LayerZero Birdge的Stargate。当然我们也看到这些解决方案在安全性,验证者和中继者模型,中心化,扩展性,UX用户体验等方面的权衡设计都不尽相同。

通常我们将可互操作性堆栈分为底层,传输层,验证层和应用层。底层由通常由可连接区块链,验证者,节点服务商等基础设施组成;传输层负责数据包传输,路由,和支付相关费用等。比如IBC中无许可的中继服务商,他们负责数据包从起始至目标链的传输,监控数据的状态,并且提交信息至目标链。等工作。验证层我们通常理解为共识层,往往支持链间的轻节点/全节点的运行,而验证包括验证节点的签名或者共识证明等;应用层通常提供了应用开发者跨链通信的场所,比如IBC通信协议中数据如何在IBC进行传输,比如数据包的相关特性定义,起始链的(PortID), 目标链的(PortID),通道ID等。IBC在底层引入了轻节点的设计,如果需要实现A链和B链的互通,他们需要在对方链上运行轻节点,从而了解其最新状态。其上搭建的是信息/连接层,通过节点的安全性实现链间的信息传递和跨链连接。跨链连接之上IBC引入了通道的概念,例如IBC上将Atom从Cosmos Hub转账到Osmosis和将Atom从Cosmos Hub转到Secret Network的通道完全不同,Atom从Cosmos 转账到Osmosis 和将Atom从Osmosis转到Cosmos Hub的通道也完全不同,每个通道都是独立存在的,代表是不同区之间的信息流。理论上2条链间可以存在无数条通道,但是这需要特定的中继基础设施,并且当连接链数量增多时,难度也大大提升了,当然目前社区关于Cosmos Hub作为中继服务等相关提案已经在试图解决这个问题。

IBC 的局限性

IBC和以太坊的设计理念较相近,都是以确保网络安全性作为第一目标,那么当然会牺牲一部分的可扩展性和成本为代价。

由于其传输层和验证层的设计,目前IBC上实现跨链通讯Communicating Chain需要在Connected Chain上运行轻节点,因此对于像EVM兼容,以太坊等高成本的链而言,部署成本也大大增加了。这一定程度上限制了IBC可接入的链数量,目前仅限于Tendermint链。当然对于Polkadot, Celo等为代表的其他共识协议,也有团队开始进行轻节点的开发。而LayerZero等协议的出现,或许可以解决这个问题。LayerZero(我们将在下文详细介绍)通过将其传输层和IBC传输层互换, IBC将能够通过LayerZero的传输层连接至其他包括EVM, Solana等协议。同时IBC目前仅支持以POS等为代表的确定性确认链,而LayerZero希望将比特币为代表的概率性确认链引入Cosmos生态。虽然目前IBC仅支持跨链转账,Cosmos Hub即将上线的跨链账户模块,Cosmwasm跨链合约通信,中继模块等的出现都将为IBC生态的发展添砖加瓦。

LayerZero

LayerZero作为传输层协议,并没有IBC一样的应用层,当然其将来准备直接CopyIBC的应用层,而其传输层分离了中继节点和预言机。Layer Zero通过引入底层产品 有效传送“ Valid Delivery”,实现跨链互通,而有效传送需要其中继节点和预言机互相独立。

LayerZero的架构主要包含端点,中继节点和预言机。端点可以理解为面向用户的界面,主要由通讯者,验证者,网络和文库等组成。每个端点的核心功能主要由通讯者,验证者,网络等组成,而当任何新的链被添加时,则被添加为额外的文库,而核心功能不会被修改。端点可以理解为网络上每条链上的一系列智能合约。当发送者发送信息时,信息从通讯者到验证者到网络,当接收者接受信息时,信息从网络到验证者到通讯者。而这些文库也可以理解为定义每条链通讯标准的带有的辅助功能的智能合约。当LayerZero上两条链通讯时,两边都需要各自的文库。

Layerzero

上文提到IBC为了实现安全,牺牲一定的成本和扩展性,那么LayerZero如何解决呢?他们引入了超级轻节点的设计(ULN)。超级轻节点将获取必要的跨链区块头和交易证明的任务委托给线下的中继节点和预言机。预言机提交的区块头和中继节点提交的交易证明将会同时被验证,通过离线避免了链上的安全隐患,提高了轻节点验证效率(线下验证)。

那么LayerZero的安全性如何保证呢?如果中继节点和预言机为同一主体,他们勾结攻击网络的情况下会发生什么?配置最坏情况下的安全性应该和预言机最好情况下的安全性保持一致。比如如果Chainlink作为预言机,而网络最坏的情况下,中继节点和预言机为同一主体,那么网络的安全性将会和Chainlink保持一致,基于Chainlink的信任假设。而Chainlink上搭建跨链协议需要通过3-20的多签流程,相对来说风险会高(目前大部分的桥攻击都是针对多签)。因此,多签可以将聚合器切换到另一个可能包含不正确数据的聚合器,并通过使用它的所有应用程序推送不正确的价格。这会导致大规模的清算问题,当然在之前MEV的研究中也提到Chainlink,Maker等预言机的价格并不与特定的区块高度/哈希相挂钩,会促使Time Bandit等攻击(双花攻击, Reorg攻击,如果发生会对Defi生态造成毁灭性的伤害(结论是大概率不会发生)。LayerZero非常信任Chainlink, 而接下来介绍的Axelar 和Wormhole则通过全节点/轻节点实现网络安全。

中继服务是维护LayerZero网络的核心基础架构, 而这些中继节点和预言机一样,有不同的信任假设。而IBC的中继节点则是无许可的成对的节点。目前LayerZero上的中继节点并没有明确的激励机制,但我们相信其可以通过治理代币实现其去中心化中继网络的愿景。目前IBC也没有正式的中继节点激励方案,不过目前已经讨论的提案方向包括费率激励和费率补贴等。目前LayerZero的信任假设是基于每个应用的中继节点和预言机,而IBC协议是通过验证者/节点维护网络安全。LayerZero上的应用自己选择中继节点和预言机的行为,实际上可以解读为一种乐观方法的信任机制,当然前提是这些节点并不作恶。如果中继节点和预言机相串通,那么也仅仅会给应用本身带来风险,而非整个LayerZero网络。这和Cosmos的工程设计有异曲同工之处。主要有两点,第一点是中继节点和预言机串通,那么会给应用带来风险。这个在IBC协议主要体现在如果一条链和另一条链需要实现互操作性,那么它也会受到另一条链的安全影响。第二点是是应用本身受攻击并不会影响整个网络。比如最近的Terra崩盘事件, Sovereign Cosmos 链彼此独立——它们都有自己的验证者集合和政治经济安全性。如果一个失败,其他人不受影响。从这个意义上说,包括 Cosmos Hub 在内的各种Cosmos 链都不受 Terra 崩溃的影响  对于Cosmos并不会造成影响。但是如果中心化的桥比如Near Bridge出现了风险漏洞,那么整个链上的资产都会受到威胁。这就是我们所称的“划分风险”和“系统性风险”。所以它和IBC最大的不同是,一个是缺乏应用层,第二是其数据包验证节点的删选方法比较中心化或者可以说是乐观受信任节点。

这里提下,LayerZero的中继节点可以是单个服务器,应用的多签拓展到中继交易证明,也可以是像Sushiswap, AAVE这种想搭建自己去中心化中继服务的开放式网络,当然对于网络的验证者全集也适用 (比如Solana 的全节点,Tendermint的全节点等)。其服务/产品包括跨链桥,NFT,各种应用搭建,集成ICS标准(Cosmos跨链标准),集成各种以Solana, Tendermint 链等非EVM兼容的链,三方审计,验证合约等。

Axelar

Axelar也是链间跨链通讯传输层的设计,目前基于Cosmos SDK, Tendermint 共识机制开发,因此通过一系列的节点维护网络安全,执行交易,因此享有和其他POS链类似的安全保证。其基础架构主要包括网络和网关。网络目前由41个节点组成,但是不难发现,这些都是Cosmos上的节点,而且20个节点控制了网络100%的投票权,其余节点并没有质押代币,而是积极参与生态做事,提供节点服务,参与社区建设,生态搭建等。这些没有质押的节点并没有实际收入,想必也是Cosmos生态早期的参与者,积累了足够的资本/资源。网关是部署在每条链上的智能合约。那么他们间是如何运作的?通过中继节点。中继节点会监控网关合约,并将交易中继给到Axelar网络。网络上的验证节点读/写这些网关账户上的操作, 并且对目标链上的交易进行投票和验证。

Axelar的应用层可以理解为搭建在节点和网关上的开发工具, 一系列提供给开发者的APIs,供其访问跨链所需的工具和基础设施,功能包括锁定/解锁,资产转移,执行合约调用和处理2条链上的任何要求。

上文提到Axelar目前基于Tendermint BFT共识机制,因此和其他POS链, Cosmos链享有类似的安全保证, 但是网络目前的节点非常中心化(20个节点控制了100%的投票权), 并且都是Cosmos上的大节点,会带来中心化风险和审查风险。除此以外,Axelar的代币分配非常集中,目前30%给到早期投资人,主要是一些以Polychain Capital, Dragonfly Capital, Galaxy Digital等为代表的主流头部VC和以币安,Coinbase为代表的交易所, 并且这部分份额会在前两年会完成线性释放。另外30%给到团队,而社区仅有40%。

目前网络有合约更新和机构中继节点。这些合约更新未经审计,并且不通过治理提案进行更新,存在很大风险。这些可更新合约上会有管理功能,会带来系统风险。比如Axelar开发者钱包遭受攻击,那么对协议的原生资金的安全也会带来影响。除此以外,目前所有Axelar代币都通过未知的管理人进行管理。当然,协议未来会通过治理实现, 引入节点签名进行合约更新, 采用Cosmos中的个性化线上治理功能。目前以太坊,EVM链为代表的区块链主要是通过Snapshot等工具进行线下治理,以Cosmos, Osmosis为代表的Tendermint主权链通过智能合约,线上治理,实现合约自动更新。

除此以外, Axelar采用了Throw Away存储地址, 用户如果使用Axelar的桥功能,需要支付合约创建和合约毁坏而带来的费用。而目前Axelar对每笔交易征收10bps的费用,同时每笔交易费用上限仅在$20.5, 那么对于以太坊这种高Gas,交易费用的网络,这里的交易价差究竟由谁承担?会不会其背后的投资人? 当然对于其他EVM网络并不存在这样的问题,费用会大大降低。

Axelar已经被社区选择成为Osmosis的默认桥, Omosis是Cosmosis上最大的DEX应用链,积聚了Cosmos生态的大部分流动性,占据了整个IBC交易量的80%以上。这为Axelar接入IBC生态,流动性,用户等奠定了基础。目前他们支持了以太坊和其他大部分EVM链,未来也会逐步向非EVM链拓展,例如比特币,Osmosis等。另外,因为他们也是Cosmos上的特定应用链,所以可以更方便地与其他Tendermint 链,例如Osmosis, Juno Network等相连接/兼容,并且可以享有IBC上的任何模块功能,例如Cosmwasm,即将上线跨链账户等。这也是Osmosis选择与其合作的重要原因之一。其生态的应用目前在跨链NFT交易市场, 跨链机枪池聚合和优化器,桥聚合,跨链游戏公会, 跨链NFT收藏等领域进行创新。

Wormhole

Wormhole是基于POA( Proof of Authority)共识机制的多签网络。主要包括核心合约和守护者网络。任何核心合约上的信息都需要通过守护者网络进行签署和验证。目前守护者网络有19名守护者,这个类似于与POS中的验证节点。守护者负责Wormhole网络上的交易验证, 2/3的守护者需要共同验证,一旦共识达成, 证明将会发送至目标网络进行交易或者特定合约执行。Wormwhole网络目前基于多数诚实假设。

目前网络上的守护者都是行业中头部和非常有名的节点,保证了网络的安全, 但是上文提到,这也会带来中心化问题和审查风险。如果1/3的守护者相互勾结, 那么他们可以审查Wormhole上的相关交易。网络目前的治理相对封闭, 目前还没有关于去中心化治理和守护者网络的明确计划。同时, 在经历了12万个以太坊的攻击之后,目前大部分补救资金/开发都来源于Jump Capital, Jump Capital 是一家美国的公司, 而且最近的Terra事件也让Jump Capital遭受了不少损失,让我们不禁为Wormhole的未来发展担忧。当然目前协议正在通过连续审计和1000万美金的漏洞赏金等计划防止此类安全事件的再次发生。

目前网络还没有中继相关的设计,不过很快就会上线(等待审计)。中继节点会通过用户支付的桥费用进行补贴,同时也会实现中继和目标链赎回功能的自动化。

未来网络会上线更多的行业前沿的新功能,其中包括实合约控制转账, UX上Wormhole的代币显示问题,这个我们在之前Osmosis2022的报告中提过。不同桥跨入的资产是不可替代的,例如从Axelar和Wormhole转入的以太坊是两种资产,不能互相替换, 而因此就会对应不同的流动性和不同的UX前缀。例如之前Terra的Wormhole桥进入的ETH就被标记为Wormhole Wrapped ETH。而在Solana上的WormholeETH显示的就是ETH,这个是先发优势和其带来的网络效应,目前Solana上大部分资产都来源于Wormhole。而Wormhole试图在解决这个问题,解决这些冗余前缀和名称的麻烦,让用户可以有在中心化交易所上的体验(感觉和Osmosis的设计很像)。另外, Wormhole上所有资产都可以实现互相替换,无需经过多笔交易兑换。例如会上线一键交易功能, 将一种资产从一条链兑换到另一条链上的另一种资产(这个设计Osmosis也有)。除此以外, Wormhole将在Cosmos生态发力,例如在Cosmwasm上搭建NFT桥(目前在最终审计), 通过CW20资产铸造Cosmos原生资产, ICS集成, 和Osmosis合作将Solana生态引入IBC,在Cosmos上创建主权链,创建治理等,并且能够通过Cosmos Hub即将上线的跨链账户功能将EVM链带入到主权链的世界。当然还有一些例如借贷, 预言机等功能的开发。

综上,我们对目前市场上主流的跨链通讯协议进行了分析。目前可信任桥的设计还在非常早期, 我们相信随着加密领域多链共存的论点逐步被证实, 可信任桥将能够有机会捕获更多的价值,并且服务于Web3.0领域最大的市场。