作者:Tiga,W3.Hitchhiker

修订:Evelyn,W3.Hitchhiker

原文:《拆解 LayerZero 的多链野心》

LayerZero 技术简析

LayerZero 是一个跨链通讯协议,可以将一条链上的"信息"传递到另一条链。Layerzero 于 21 年 4 月完成了 $2M 的种子轮融资,随后分别于 21 年 9 月和 22 年 3 月分别完成了 $6.3M 和 $135M 的融资。参投机构包括 Binance Labs,Multicoin, Delphi,A16Z,Uniswap,Polygon,Coinbase 等一众机构,投资阵容可以说是顶级了。

LayerZero 通过在链上部署一系列的智能合约(Endpoint)实现去中心化信息跨链服务。Endpoint 上运行着超轻节点,“超轻”两个字体现在该节点只提供指定区块的 Block header。传输过程中,通过 Oracle 与 Relayer 保证信息发送的有效性与安全性。

跨链通信协议LayerZero生态盘点:如何成为“DeFi乐高”的第0层?

Endpoint 是一个部署在链上的合约,负责提供消息的发送与接收。Relayer 和 Oracle 功能职责是一致的,都是发挥预言机的功能,不过传输的内容有所不同,两者相互独立运行,再由接收链的 Endpoint 对 Relayer 和 Oracle 发送来的信息进行验证与匹配,提高 LayerZero 的安全冗余性。

跨链通信协议LayerZero生态盘点:如何成为“DeFi乐高”的第0层?

具体的,LayerZero 将 Endpoint 分成了三个部分,分别是 Communicator,Validator,Network:

  • Communicator:面向 Dapp 的接口,
  • Validator:在接收方是负责对信息进行核验的环节,
  • Network:是面向其他链的 Network 接受或发送信息的接口。

其具体步骤如下:

  • Step 1:A 链上的 Dapp 与 A 链上的 Endpoint 交互产生一个交易 TTT,会产生4个参数,这些参数会通过 LayerZero 发送给 Communicator。四个参数分别是:
  1. t:交易 T 的唯一交易证明(transaction proof)
  2. dst:目标链 Endpoint 的标识符
  3. payload:A 链的 Dapp 要发送到 B 链的数据
  4. relayer_args:A 希望使用的 Relayer 参数
  • Step 2: Communicator 将这些参数打包成 Packet(dst,payload),并与 t 和relayer_args 一起发送到 Validator。
  • Step 3:Validator 把 t 与 dst 传递到 Network。
  • Step 4:Validator 将 Packet(dst,payload),t 和 relayer_args 一起发送到Relayer。第四步与第三步是同时发生的
  • Step 5:Network 发送 dstdstdst 与包含当前交易区块的 ID(cur_blk_id)发送给 Oracle。
  • Step 6:Oracle 从 A 链上获取 block header
  • Step 7:Relayer 从 A 链上获取交易 T 的交易证明t,并存储在链下。
  • Step 8:Oracle 确定交易 T 已经在 A 链上被提交后,将 block header 发送给 B 链的 Network。
  • Step 9:B 链的 Network 将接收到 block hash(记为blk_hdr_hash)发送给 B 链的 Validator
  • Step 10:Validator 将 blk_hdr_hash 发送给 Relayer
  • Step 11:Relayer 接收到 B 链发送的 blk_hdr_hash 后,将与 blk_hdr_hash 匹配的数据返回给 B 链的 Validator。
  • Step 12:B 链的 Validator 将从 Oracle 获取到的 blk_hdr 与从 Relayer 获取到的交易证明 t 进行匹配,如果匹配通过,则会将 Packet(dst,payload)发送给 Communicator。匹配失败则直接忽略本次交易。
  • Step 13:Communicator 将 Packet(dst,payload) 数据发送给 B 链的 Dapp,完成信息跨链

简单说就是 A 链的 Dapp 告诉 LayerZero 部署在 A 链的 Endpoint:”我要给 B 链发个 XXX 消息“,发送消息这个过程也可以看做是一次交易。当这个交易在 A 链上链后,Oracle 会直接到 A 链上检查是否真的上链了,Relayer 也会去 A 链上获取这个交易的证明,Oracle 和 Relayer 将它们获取到的内容都发送给 B 链的 Endpoint,如果两者内容匹配,则 A 链的消息发送到了 B 链上。反之,如果 Oracle 和 Relayer 获取到的内容不匹配,则直接忽略该交易。

在安全层面,LayerZero 将安全性防御分散到 4 个点上,分别是 Endpoint,Oracle,Relayer,还有链本身。它们之间是相互耦合的,这种分散结构可以使 LayerZero 更安全。

当其中某一部分遭受恶意攻击时,其他部分会阻断 LayerZero 的流程,对恶意供给的部分进行隔离操作。这四个部分中,最薄弱的环节是 Oracle 与 Relayer,因为主流链的 51% 攻击难度与成本非常高,且 51% 攻击不是LayerZero考虑与防御的事情。Endpoint 本质是智能合约,可以通过安全审计的方式尽量减小安全风险点。如果 Oracle 与 Relayer 没有同时被攻击,LayerZero 都可以保证其安全性。

在最坏的情况下,即 Oracle 和 Relayer 同时被劫持且相互串通时,Oracle 提供了恶意的 block header,Relayer 提供了恶意的交易证明,且两者提供的内容是匹配的。这种情况首先从概率上讲非常小,因为 Oracle 与 Relayer 是相互独立的组件,且 LayerZero 使用的预言机服务是由 Chainlink 提供的,安全性还是很有保障的。其次,在不知道特定的 block header 的情况下,不可能针对一个 block header 进行验证交易证明。反之,根据一个交易证明也不能反推出 block header。这是保证 Oracle 与 Relayer 安全性的根本,也是保证 LayerZero 安全性的保障。

LayerZero 生态一览

Stargate

Stargate 是基于 Layerzero搭建的第一个项目,致力于构建完全可组合的原生资产跨链桥协议。目前 Stargate 支持 Ethereum,BSC,AVAX,Matic,Arbitrum,Optimism 与 Fantom 链,仅支持 USDC,USDT,ETH 与 STG 这四个 token。

Stargate 的跨链方式与其他跨链桥不同,采用类似 OTC 的方式进行跨链。在各个链分别建立流动性池,用户在 A 链流动性池中"质押"资产,在 B 链流动性池中"赎回"资产,无需中间资产的参与,A,B 链之间的消息互通是通过 LayerZero 实现。

作为 LayerZero 的"亲儿子",Stargate 作用远不止一个跨链桥,从 Stargate 的文档中也可以看出 Stargate 的目标是作为资产跨链的技术提供商,让更多的项目可以轻松使用 Stargate,实现跨链的功能。所以 Stargate 的业务需要分为 2B 和 2C 两部分, 2B 的业务模式也远比 2C 的模式有想象空间,基于 Stargate 可以向上搭建更为复杂的 Dapp。

Hashflow

Hashflow 是一个主打零滑点,MEV 保护的跨链 DEX,通过使用 LayerZero 实现跨链消息传递。Hashflow 目前支持 Ethereum,BSC,AVAX,Polygon,Arbitrum 与 Optimism 链。

作为一个 DEX,Hashflow 并没有使用 AMM 模型,Hashflow 使用询价(request-for-quote ,RFQ)方式的进行代币交换,与订单薄的方式非常相似。其具体机制为:交易者报价将 A 链的 1 个 ETH 兑换成 B 链的 1000USDC,做市商将交易者在 A 链的 1 个 ETH 发送到 A 链上的流动性池,然后触发 B 链的合约将 1000USDC 汇入交易者的 B 链钱包中。

跨链通信协议LayerZero生态盘点:如何成为“DeFi乐高”的第0层?

RadiantCapital

Radiant 是一个部署在 Arbitrum 上基于 LayerZero/Stargate 的多链借贷项目,目前仅支持 USDC,USDT,DAI,BTC 和 ETH 这五种 Token。用户可以选择在 Arbitrum 上抵押上述五种资产,从而借出其他资产。目前 Radiant 仅支持 USDT 和 USDC 的跨链借贷,即用户可以在一条链上抵押资产,在另外一条链上借出 USDT 或 USDC。

跨链通信协议LayerZero生态盘点:如何成为“DeFi乐高”的第0层?

SushiXSwap

SushiXSwap 是 SushiSwap 推出的跨链 DEX,世界上第一个跨链 AMM。基于 LayerZero 的 Stargate协议打造,目前仅支持 ETH 主网,Arbitrum,AVAX,Polygon,Fantom,BSC 与 Optimism 网络。SushiX 交易过程如下图所示,通过 Stargate 的跨链功能将与 Sushiswap 的多链流动性实现跨链DEX。

跨链通信协议LayerZero生态盘点:如何成为“DeFi乐高”的第0层?

其他 Layerzero 生态项目(部分还未上线)

  • @OmniBTC: 构建在 Sui 和 Aptos 的 DEX+Lend+Bridge 的三合一 dex
  • @rage_trade:Arbitrum 上的去中心化合约
  • @MugenFinance:基于 Layerzero 的 RealYield
  • @InterSwap:基于 LayerZero 的 Swap
  • @CashmereLabs:全链 DEX
  • @holographxyz:全链 NFT 的 Mint,Bridge 协议
  • @OmniX_NFT:全链原生 NFT 平台和交易市场
  • Moonbean:已集成 LayerZero
  • Clearpool:将与 LayerZero 集成
  • Angle Protoco:与 LayerZero 集成

这里列出的项目不全,其余为列出的项目请读者自行探索。

LayerZero 展望

需要和可以被跨链的不仅仅是 Token,还有各个协议的功能与服务。随着 crypto 发展,当下的区块链世界已经有了一堆值得称赞的真正创新项目/协议,它们机制成熟,运行稳定,完全可以作为一个底层"零件"去被其他协议所使用。

这些协议本身也是可编程,可组合,可交互的,并且 web3 远比 web2 开放,包容。智能合约天然地暴漏出 API,如果能够打破链与链之间的隔阂,让流动性与用户可以自由,便捷的穿梭于各个协议之间,各条链之间,开发者可以创造出更多更具想象力的"东西",DeFi 也可以再进化,不断拓宽 crypto/web3 的边界。

未来的区块链世界会是怎么样的?LayerZero 会给区块链有哪些改变,产生什么样的影响?不知道,不过可以确定的是,未来区块链的发展一定是朝向互联互通的方向进行,即便捷用户又方便开发者。万维网的发明人蒂姆·伯纳斯·李(Tim Berners-Lee)谈到设计原理时说过:“简单性和模块化是软件工程的基石;分布式和容错性是互联网的生命”。将各个链上的成熟协议模块化的串并联使用,未来一定会迸发出 web3 的 killer App。天才需要舞台,也需要锤子和钉子,LayerZero 可以作为 web3 天才们的锤子和钉子。

合理且保守预计,未来区块链的 gas 费会降低好几个数量级,DeFi 的用户也会增长几个数量级,庞大的市场需求催生出链与链之间的“远洋货轮”,跨链的费用由于边际效应而无限趋近于 0。费用的降低是扩大规模的必要条件,正如动力电池价格十年下降了 10 倍,电动汽车走向千家万户。

202209:LayerZero 更新 V2 版本:

  • 将支持非 EVM 链
  • 推出 LayerZero Scan
  • 降低 20% gas fee
  • 安全补丁

Reference: