Diamond Xie
Diamond Xie

If the path be beautiful, let us not ask where it leads

LayerZero 白皮书译文

译者(Translator) Twitter: @zzhang0x68;@Diamond_T_Xie

摘要

多链生态的快速增长使得开发者可以根据其应用的特征和性能需求(吞吐量,安全,成本)在众多平台中选择运行他们的智能合约。然而,选择的自由也带来了严重的隔离问题;每条区块链都是孤立的,因而用户的流动性也是割裂的,而且用户在这些孤立的生态系统中移动其流动性和状态数据时面临非常有限的选择。

本文提出 LayerZero,第一个去信任的任意链间的互操作协议;其提供一个强大的底层通讯协议,使得多种跨链应用可以在其之上搭建。开发者可以使用此新型协议去构建无缝的多链应用如跨链去中心化交易所或者多链收益聚合器,无需依靠一个可信的托管方或与中间方进行交易。简单来说,LayerZero 是第一个允许所有区块链直接进行去信任交易的系统。区块链间的自由交易不仅使得用户可以重组他们分裂的流动性,而且还能让不同链上的应用得到更多的使用。LayerZero 提供了未来全连接多链生态的底层网络。

1 介绍

区块链的核心是去中心化、透明和不可篡改。没有一个单一实体控制着区块链,链上行为是可验证和不可回滚的。这些区块链的核心特征创造了一个实体间去信任化互动的基础。这种基础是例如加密货币比法币更具有吸引力的原因。

如果所有用户和应用都在同一条区块链上,那么本文到此结束。然而,

图 1:LayerZero 使得跨链交易成为可能

区块链的实用性带来了各种类型应用的增长,且它们具有不同的复杂的细节与性能需求,进而刺激了专有目的区块链的增长。这些区块链促进了大量应用在其生态系统的落地,然而这些区块链之间的相互孤立的现状也逐渐变成了阻碍用户增长的最重要的因素。

在区块链术语中,最小的工作单元是一个不可篡改和撤回的交易。被整理进入区块后的交易是区块链安全的基础。然而,交易一直是单一区块链的概念;下文将会阐述为什么区块链间的互动通常需要一个区别于普通区块链系统的第三方机制来协作。而本文也会介绍 LayerZero,第一个使得链间交易成为可能的通讯协议。

我们通过一个代币跨链的例子来介绍 LayerZero 提供的强大的通讯组件。当前,用户进行代币跨链需要使用中心化交易所或者去中心化跨链桥。在使用如币安等中心化交易所时,用户需要信任交易所在如实跟踪代币的存入和取出。这种信任关系与区块链最基本的去信任中介的特性相反,因而不具有链上交易的安全性。在使用如 AnySwap [2]或 THORChain [23]之类的跨链桥时,它们虽然通过完全链上的交易消除了部分信任问题,但当前的跨链桥仍然将用户的代币转换为中间代币,并经过它们自己的中间共识层进行跨链。这类中间共识层需要用户信任它们所在的侧链的安全机制,而我们将会在本文说明为什么这种额外的共识机制是多余的。虽然市场需求旺盛,但我们认为当前没有任何跨链系统提供高效,直接的跨链服务,并同时保证区块链的去信任特性,而 LayerZero 则为开发者提供了打造更好的跨链系统的工具。

值得注意的是 LayerZero 和以上跨链系统在堆栈的不同层级。LayerZero 是任意链的应用间跨链通讯协议,而跨链桥则会通过集成 LayerZero 的二次开发获益。第 2 节勾勒了区块链技术的图景,以及更深入探索了跨链系统。

我们通过第 3 节中的「有效传递」概念首先定义链间交互所需的基础的通讯组件,并以此来更好地解释 LayerZero 的功能和在区块链生态系统中的角色。之后我们阐述 LayerZero 如何用去信任的方式提供此类组件,并保证区块链系统的安全性。LayerZero 是第一个去信任的任意链的互操作层,支持一层和二层区块链的直接信息传递(见图1)。

一个区块链 A 和 B 之间的跨链交易由一笔 A 链上的交易 tA、一个 A 链与 B 链之间的信息传递协议,以及信息 m 所构成。「有效传递」指的是信息 m 会被转递当且仅当交易 tA 已经被执行且是真实有效的。LayerZero 的核心构想是如果两个独立实体分别证实一笔交易(在这个例子中是 tA)的有效性,那么 B 链就可以确认 tA 的有效性。图 2 概括性的阐述了这个构想:假设两个实体不互相串通,如果(1)一个实体可以生成 A 链上包括了 tA 交易的区块的区块头,(2)另一个实体能够独立的生成 tA 确实被包括在那个区块上的交易证明,以及(3)区块头和交易证明是一致的,那么通讯协议可以在确认 tA 已经被稳定地执行地情况下传递信息 m 到 B 链。

图 2:LayerZero 通过要求两个独立实体(即预言机和中继器)分别证实一笔交易,来确保跨链通讯的真实性。

第 4 节中描述的 LayerZero 通讯协议保证接收链上的交易可以与一笔有效的、已被执行的发起链上的交易配对,而无需经过任何中间方区块链。我们结合两个实体来达成此目标:一个提供区块头的预言机,与一个提供交易证明的中继。

LayerZero 的接口是一个轻量级的链上客户端,我们称之为 LayerZero 端点。一个 LayerZero 端点可以在任意链上部署,而任意已经部署端点的链可以相互开展跨链交易。本质上,这种跨链方式创造了一个全连接的节点网络。LayerZero 端点通过简单的样板代码支持任何区块链。第 5 节通过一个在以太坊上部署 LayerZero 端点的实例阐述了这个过程。

直接与任意区块链网络开展跨链交易的能力带来了一系列此前不可行的规模化应用的机会,如跨链去中心化交易所,多链收益聚合器,以及跨链借贷。第 6 节深度剖析了此类可能的应用。通过 LayerZero,用户可以自由的在多链间移动流动性,而一个单一的流动性池即可满足多个生态系统中的多个 DeFi 应用的需求,无需经过第三方系统或者中间代币。

2 背景

为 LayerZero 奠定基础,我们考察了相关的现存系统,并解释为什么它们没有满足当前大量涌现的应用的需求。最终,我们会讨论在 LayerZero 基础上搭建跨链交易所的优势。

2.1 相关项目

这个章节阐述了主要的跨链交互项目,他们为什么无法达成去信任的有效传递,以及 LayerZero 是怎么达成的。

以太坊 [8] 是当前最受 DeFi 协议欢迎的智能合约平台。以太坊通过图灵完备的编程语言,使得一系列去中心化应用能够以开发者友好的方式利用其强大的安全性。然而,以太坊每秒只能处理 15–45 笔交易 [9];如此低的吞吐量、以及其可扩展性瓶颈已经影响到了应用部署的动力。由于以太坊更开发者友好和更受欢迎,许多跨链通讯技术都采用第三方中继链与以太坊交互的模式。LayerZero 提供了一种不经过中间人,直接与以太坊传递状态的能力,使得用户与应用可以利用以太坊的稳定性与可靠性,并无需承担既有跨链技术带来的成本与瓶颈。

以太坊 2.0 [22]是一系列旨在解决以太坊可扩展性、安全性以及可持续性弱点的升级。以太坊 2.0 推出分片链的概念,即替代所有交易集中在一条链上的架构,在多链上分配载荷。从 POW 到 POS 的转换去除了 51% 算力攻击的可能性,减少了每笔交易消耗的能源。这些改进多数与 LayerZero 不相关,除了它们一定会提升以太坊的热度,创造更多便捷、低成本的跨链交易的需求。

Polygon [17],即以前的Matic 网络,是一个旨在处理以太坊吞吐量问题的Layer 2 网络。虽受欢迎,以太坊饱受低吞吐量问题的困扰 [10],不适用于特定的应用部署。Polygon 提供以太坊兼容的应用导向的侧链,结合了以太坊的社区与安全性,以及侧链的可扩展性和独立性。特定的或者高吞吐量需求的应用在侧链运行,并周期性地。相反,LayerZero 是一个底层的允许直接跨链通讯的平台,可以被用作处理 Polygon 指向以太坊主网的交易,无需被 Polygon 本身跨链模块的复杂性所掣肘。

波卡 [26]是一个早期开发的开放跨链系统的例子。在波卡系统中,许多平行链通过一个共同的中继链互相传递代币与数据。然而,跨链通讯必须经过中继链,带来额外的成本。LayerZero 提供了类似的底层通讯平台,而无需与一个统一的链上中继者进行额外的交易。

THORChain [23]是一个使用成对的流动性池进行跨链交易的 DEX。每个流动性池匹配一个第三方代币与 THORChain 原生的 RUNE 代币,此代币扮演一个共同中介载体的角色。如果没有 RUNE,所有代币对都需要一个流动性池,即流动性池的数量是代币数量的平方。不幸的是,RUNE 解决这个问题的方法导致跨链交易变得非常复杂。LayerZero 允许直接跨链通讯,避免了 THORChain 内生的规模化瓶颈、复杂的中间代币与协议。

AnySwap [2] 是一个类似于 THORChain 的代币对交易所。AnySwap 依赖于自己的中间代币 ANY 的混合式分布式控制权管理 [6]。所以类似 THORChain,ANY 的使用带来了同样的复杂、延迟与额外的使用成本。

Cosmos [5]是允许任意信息在所支持的区块链间传输的技术。Cosmos 有一个构建于 Tendermint BFT [21] 共识上的跨链通讯协议(IBC),处理 Cosmos Hub 上的区块链交互。Cosmos 和 LayerZero 主要有两点区别:(1) IBC 运行一个完全在链上的轻节点,以及(2) IBC 只支持即时确认的 [24] 区块链间的跨链通讯。IBC 的这些限制,以及它使用一条中间链处理共识的特征,让它更类似于 Anyswap, THORChain, 或 Polkadot,而不是通用型通讯层 LayerZero。Cosmos 也提供重力桥 [12]一个类似于 Anyswap 或 THORChain 的 DEX。与 Cosmos 和 IBC 相反,LayerZero 提供去信任的任意链的通讯,不局限于即时确认的区块链,也会延展至概率性确认的区块链如以太坊和比特币。

图 3:LayerZero 是跨链应用的基本单元。此图视觉化了中心化交易所、去中心化交易所、以及一个利用 LayerZero 作为通讯组件的跨链桥的架构区别。

Chainlink [7, 4] 是一个去中心化预言机网络(DONs)的构建与连接的框架。虽然智能合约是不可篡改的,但它们的链上特性阻碍了它们被更多采用所必要的可连接性:一个智能合约不能从链下获取其执行所必需的数据,例如股票价格、物联网设备数据,安全链下计算的输出。去中心化预言机网络将智能合约的不可篡改属性延伸至其所依赖的外部的数据源,而无需信任任何中心化实体。在一个去中心化预言机网络中,用户的智能合约在链上对 Chainlink 的接口发起请求,接口进而对许多独立的预言机节点发布事件;每个预言机节点会根据请求信息检索多种数据源,集成这些数据去过滤错误或者恶意的来源,同时选择性的对数据进行信任最小化的计算;预言机节点之后会对 Chainlink 接口合约进行回应,接口合约会进行二次集成去过滤错误或者恶意的预言机节点。这种二层过滤机制保证了最终数据的可信任性不依赖于任何单一的预言机或数据源。Chainlink 事实上提供了一个鲁棒的信息获取网络,同时也是一个安全的链下计算方案,并正在被业界进行广泛采用。LayerZero 利用 Chainlink 的去中心化预言机网络实现去信任的跨链信息传递。

2.2 LayerZero 的应用

开发者能够使用 LayerZero 构建复杂的跨链应用,同时避免稀释去信任性或者加入复杂的中间链。图 3 在开发去中心化交易所的语境中阐述了 LayerZero 的功能。

图 3 左边的中心化交易所要求用户将他们的代币存入并且信任一个中心化的机构,机构会在链下追溯那笔存入,并且在用户在其他链发出请求时分发代币。使用区块链的目的与信任一个权威机构不符,于是有了去中心化交易所的发展。

中间的图概括性的展示了一个典型的跨链 DEX 的工作流 — -通过一个智能合约管控的共识协议去自动在B链铸造代币,跨链 DEX 可以解决依赖于一个中心化需要信任的链下中介的问题。然而,跨链 DEX 一个重要的局限性在于其依赖一个中间代币和中间链,而且只会在 B 链上铸造中间代币或者打包代币而不是用户实际想要的代币。用户需要在额外的一次交易中将 中间代币(例如 RUNE)或者打包代币(例如 ANY)换成想要的代币。中间/打包代币、二次交易、以及中间链都是不必要的,理想状态下只应该有一次无缝衔接的交易。图 3 的右边展示了 LayerZero 上的交易所的架构:A 链可以发起一次单一的跨链交易,通过在链A上执行并且通知链B上的应用可以安全的将代币发放给用户。在这个应用中,LayerZer o可以让跨链交易只需一次,并且不涉及到任何中间代币;实际的跨链交易协议在任意一条链上由智能合约处理,LayerZero 负责在链间传递数据;这种形式提供了极大的灵活性,也遵循了端到端的原则 [18],即主要的交易逻辑由发起链和目标链上的智能合约完成。

3 有效传递

本节中,我们会描述去信任的跨链通讯协议的基本属性。为了正式的描述在另一条链上验证交易的问题,我们定义有效传递的概念。有效传递是一个允许代币跨链的原语,提供了以下保证:

  1. 网络上传递的每条信息 m 都与一个发起链的交易t对应
  2. 信息 m 会被转递当且仅当交易t已经被发起链执行且是真实有效的。

中心化交易所保证有效传递:客户与交易所约定在客户存入代币时,交易所会给客户发放非加密货币的额度;由于交易所在其所支持的链上有大量流动性,此非加密货币的额度能够在任何支持的链上被便捷地取出;交易所在此次交易中扮演中间人的角色,而用户必须信任交易所。然而,一个恶意的或者被攻击的交易所可以从用户处获得代币、发放额度,然后拒绝用户在另一条链提取代币,从而事实上从用户处盗取代币。即使用户愿意信任交易所,近些年也有许多成功的攻击交易所的事件 [15],所以对用户更好的解决方案还是去除信任中间方。在更高维度上,加密货币的核心优势就是他们独立于类似银行的中心化实体,而依靠中心化交易所则让这个优势不复存在。

一个中心化交易所的替代方案是去中心化跨链交易所,类似 THORChain [23] 或 AnySwap [2]。所有现存的跨链 DEX 都使用一个中间代币,如 THORChain 的 RUNE和 AnySwap 的 ANY。因为这些中间代币由它们对应的跨链 DEX 管理,DEX 可以保证有效传递,因为不可能有恶意用户去伪造中间代币。现存的跨链 DEX 方案不理想,因为它们需要进行 2 笔交易:即将发起链的代币转换成中间代币,和将目标链的中间代币转换成用户需要的代币。此外,用户需要信任中间共识层,因为他们负责在发起链的交易上达成共识并转移到目标链上去铸造代币。当前的跨链 DEX 虽然已经支持跨链代币转移,但代价是高成本和复杂性,而带来的劣势也是明显的,即跨链应用并没有规模化。跨链交易理想的方案是无需信任任何中间实体的单次交易,即有效传递。LayerZero 开发了一个通用的跨链通讯协议,提供不仅是代币,而是任意数据的去信任的有效传递;DEX 或者其他 DeFi 应用可以使用我们的通讯协议提供跨链交易,而我们的底层通讯协议提供的灵活性可以让应用开发许多此前不可能的功能。

4 设计

LayerZero 的核心是一个提供无信任有效传递的通信协议。该协议是建立在第 4.1 节中介绍的一系列组件上的。我们在第 4.2 节中讨论了传输协议的通信流程,在第 4.3 节中描述了 LayerZero 是如何在不涉及可信中介服务的情况下实现有效传输的。并在第 4.4 节中介绍了我们对基于智能合约的低成本轻客户端终端的新颖设计。

4.1 LayerZero 组件

LayerZero 端点是 LayerZero 面向用户的接口。在 LayerZero 网络中的每条链都有一个 LayerZero 端点,它是由一系列链上的智能合约实现的。端点的作用是允许用户使用 LayerZero 协议的后端发送消息,并保证有效的传递。

一个 LayerZero 端点分成四个模块。通讯器、验证器、网络和库。通讯器、验证器和网络模块组成了端点的核心功能(图 4),而 LayerZero 所支持的每一个新的链都被添加为一个额外的库。这种设计使我们能够在不修改三个核心模块的情况下增加对新链的支持。在第 4.4 节解释了每个模块的功能。

图 4:一个单一的 LayerZero 跨链交易中的通信流

预言机(Oracle)是一个第三方服务,它提供了一种可以从一个链上读取区块头并将其发送到另一个链上的机制,独立于其他 LayerZero 组件。理论上预言机可以是任何提供这种机制的第三方服务,但在实践中,我们希望使用 Chainlink,它是目前去中心化预言机网络的行业领军

中继器(Relayer)是一种链外服务,功能类似于预言机,但它不是获取区块头,而是获取指定交易的证明。为了确保有效的传递,对于任何使用 LayerZero 协议发送的信息,预言机和中继器必须是相互独立的,这是唯一的要求。协议本身并不要求中继器的具体时间线,理论上 LayerZero 的用户甚至可以自己实现中继器服务。这种设计使得用户可以确信中继器不会与预言机串通,其独立性也使得我们可以实现无信任的验证交付(如第 4.3 节所示)。在实践中,LayerZero 提供中继器服务,而预言机则由 Chainlink 的去中心化预言机网络和相关的共识机制来处理。

4.2 LayerZero 协议

图 4 说明了一个单一的 LayerZero 消息的有效传递步骤。图中每个圆圈内数字代表协议的一个步骤,与本节的一个段落相对应。本节将通过一个例子来说明,A 链上的用户程序通过 LayerZero 向 B 链上的用户程序发一条消息。在第 5 节中,我们描述了在两个以太坊虚拟机之间发送消息的情况下,各种组件和协议步骤是如何实现的。

步骤 1:A 链上的用户应用程序(App A)执行了一系列的动作,作为交易 T的一部分。我们通过交易标识符 t 来唯一地标记识别交易 T,该标识符的格式可能因 A 链的类型而不同。交易 T 中包含的一个步骤是在 T 的条件下,信息在 LayerZero 上的传输是有效的。为了说明问题,在不丧失一般性的情况下,我们假设在本案例中应用A正在使用我们的参考中继器。应用 A 向 LayerZero 传播者发送一个请求,其中包含以下信息。

  • t: T 的唯一交易标识符
  • dst :一个全局标识符,指向 B 链上的智能合约
  • payload:App A 希望发送App B 的任何数据
  • relayer_args:在 App A 希望使用参考中继器的情况下,描述支付形成的参数

步骤 2:通信器构建一个包含dstpayload的 LayerZero 数据包,称为Packet(dst,payload),并将其与trelayer_asgs一起发送给验证器。

步骤 3:验证器向网络发送tdst。这一步通知网络,该文件的区块头为 A 链上的当前区块,需要发送到链B。

步骤 4:验证器将数据包、t 和转发给中继器,通知中继器T的交易证明需要被预取并最终发送到 B 链。

步骤 5:网络发送 dst 和当前交易的区块 ID(cur_blk_id)给预言机。这将通知预言机在 A 链上获取当前区块的区块头,并将其发送到 B 链上。

步骤 6:预言机从 A 链读取区块头(blk_hdr)。

步骤 7:中继器从 A 链中读取与交易T相关的交易证明(proof(t)),并且若不在链上则存储。步骤 6 与 7 是互相不同步进行的。

步骤 8 :预言机确认与blk_hdr相关的区块稳定提交至 A 链,然后将blk_hdr发送到 B 链的网络上。

步骤 9:网络发送区块哈希值至验证器,指定为blk_hdr_hash

步骤 10:验证器将blk_hdr_hash转发给中继器。

步骤 11:在收到blk_hdr_hash后,中继器发送一个与当前区块相匹配的任何Packet(dst,payload)tproof(t)。如果多个用户同时在同一端点之间发送消息,则同一区块内可能有多个包和相关的交易证明。

步骤 12:验证器使用收到的交易证明与网络存储的区块头一起验证相关的交易 T 是否有效且被承诺。如果区块头和交易证明不匹配,那么消息将被丢弃。如果它们匹配,则发送到Packet(dst,payload)通讯器。

步骤 13:通信器向应用程序 B 发送Packet(dst,payload)

4.3 实现无信任的有效交付

无信任:LayerZero 设计的核心是,用户不需要信任 LayerZero 的组件。我们不要求信任(这是一个很强的条件),而只要求预言机和中继器之间的独立。这种独立而非信任的要求是使 LayerZero 高效和轻量的一个方面。只要在预言机和中继器之间没有恶意的串通,那么 LayerZero 就能保证有效的传递。

有效传递:根据第 4.2 节所示的 LayerZer o协议,当且仅当与 m 相关的交易 t 的交易证明能够在步骤 12 中被验证时,信息 m 才会被通讯器传递给用户应用。只有当区块头和交易证明相匹配时,这个验证步骤才会成功,这只在以下两种情况下发生:

  1. 预言机提供的块头和中继器提供的交易证明都是有效的。
  2. 预言机提供的区块头和中继器提供的交易证明都是无效的,但仍然匹配。

第 2 种情况只有在预言机和中继器串通的情况下才会发生,因为从统计学上来说,在不知道某个区块头的情况下,是不可能发送一个可以针对该区块头进行验证的交易证明的,反之亦然。然而,LayerZero 的设计消除了串通的可能性,如第 1 节所述。因此,如果一个消息被传递给接收方的用户应用程序,它就可以保证满足有效传递的特性。

正如第3节所述的,一个能够保证无信任的有效传递,即无需信任中介机构或代币的有效传递,是实现跨链交易的理想解决方案。LayerZero 是第一个也是唯一一个证明了这个特性的系统。这一事实将推动用户采用 LayerZero 作为跨链通信的首选方法。

4.4 LayerZero 端点

LayerZero 端点目前作为 LayerZero 网络中每个链上的智能合约的一部分。LayerZero 端点的核心功能被封装在三个模块中:通信、验证和网络。这些模块的工作方式类似于网络堆栈,消息在发送方的堆栈中向下发送 — — 通信器到验证器到网络,然后在接收方的堆栈中向上发送。

除了核心模块之外,LayerZero 端点还可以通过 Libraries 进行扩展,Libraries 是一种辅助性的智能合约,定义了如何处理特定链的通信。LayerZero 网络中的每条链都有一个相关的库,每个端点都包括每个库的副本。这种模块化的设计使得 LayerZero 网络可以快速而容易地扩展,以包括新的链的需求。此外,两个链之间的通信只需要它们各自的库存在于两端,这使得 LayerZero 成为一个完全链接的网络,有能力协调任何一对节点之间的交易。

4.5 LayerZero 端点成本的可拓展性

正如许多读者所指出的,在 Layer 1 运行智能合约的成本很高,特别是随着存储数据量的增加,成本会越来越高。为了使 LayerZero 端点实用,我们有必要设计一个最轻量级的客户端。以前通过跨链状态机复制进行无信任的跨链验证工作,如 Golden Gate,在像以太坊这样一流的 Layer 1 链上运行,每天要花费数百万美元。

图 5:EVM 端点的 LayerZero 数据包布局

为了解决这个问题,我们开始设计尽可能轻的客户端。我们的主要观点是,在客户端内复制和存储区块头是没有必要的。相反,我们把获取必要的跨链头信息和交易证明的任务委托给链外实体:预言机和中继器。这使得 LayerZero 端点非常轻巧,即使在像以太坊这样出了名的昂贵链上,它们也具有成本效益。

5 案例研究:EVM 上的 LayerZero

在这一节中,将简要介绍我们如何实现对在以太坊虚拟机(EVM)上运行 LayerZero 的支持细节。为了简洁起见,我们将重点放在系统的实施有可能因链而异的方面,并强调我们的实现是如何处理以太坊链的具体要求的。如4.1 节所述,LayerZero 的当前版本依赖于 Chainlink 来提供预言机服务,并希望用户使用我们提供的中继器服务。

LayerZero 数据包:LayerZero 数据包的格式将根据源链和目的链的不同而不同。我们在图 5 中说明了 EVM 端点的 LayerZero 数据包的精确布局。每个字段的功能如下:

发送方链的稳定性:为了确保消息交易在源链上是稳定的,我们依靠去中心化网络的固有特性 — — 预言机只通知目的地,而不通知其他地方。在听到一定数量的区块确认后,它才会执行一个特定区块头的分类链,例如在以太坊上,这个数字是 15。准确地说,LayerZero 协议(第 4.2 节)的步骤 8 将只在预言机听到 A 链上的 15 个区块确认后执行。

LayerZero 端点:我们将 LayerZero 端点实现为一系列的智能合约,由我们在第 4.4 节描述的四个主要模块组成。对于大多数现有的区块链,包括以太坊,我们能够实现通讯器、验证器和网络各自作为独立的智能系统。然而这种设计并不排除在未来有不同要求的链上实现 LayerZero 端点。

LayerZero 端点的 Library 组件时本案例研究中为以太坊链提供支持的关键。我们实现了一个 Library 来处理图 5 所示的 EVM 特定 LayerZero 数据包的构建,并处理 EVM 智能合约地址信息的编码和解码。

该库的另一个责任时处理验证交易证明时涉及的实际计算。我们的 EVM 库处理 EVM 块上交易的 Merkle-Patricia 树验证,我们以 Golden Gate 的开源实现为基础。

6 在 LayerZero 上的应用

去中心化的跨链交易所:正如第 2.2 节中描述的那样,LayerZero 可以实现一个跨链 DEX,专门交易本地资产。与现有的发行包装袋比或通过中介侧链的 DEX 设计相反,使用 LayerZero 在链间发送消息的 DEX 可以在两条链上都建立流动性池,用户可以简单地将他们的本地资产存入一个池,并从另一个池中提取本地资产。LayerZero 的信息传递原理足够强大,可以做到能够直接桥接(1:1 定价),自动做市($ab=k$ 定价),以及任何其他的衍生(比如类似 Curve DAO 定价的衍生)。LayerZero 所提供的有效交付的保证,使得广泛的去中心化交易所的应用成为可能。

多链收益聚合器:目前的收益聚合器通常在单链生态系统的范围内运作, Yearn Finance 等项目利用单链战略实现收益聚合。这些单链收益聚合系统的一个关键弱点使,它们不能利用其当前生态系统之外的任何收益机会,可能会错过许多最佳收益。一个使用 LayerZero 进行跨链交易的收益聚合器将允许在所有生态系统中挖掘最佳机会的策略,增加获得高收益机会的机会,使用户能够利用市场的低效率。严格来说,一个多链的收益聚合器要比一个单链的收益聚合器好,因为在最坏的情况下,该策略会退化到只利用一条链上的机会,而在最好的情况下,它将有大量的机会可供选择。

多链借贷:在目前,用户没有简单的方法来利用他们未持有资产的链上机会。例如,假设一个拥有 ETH 资产的用户想利用 Polygon 上的一个机会。他们的选择是:(1)将他们的全部资产转移到另一条链上,并将其转换为所需的代币,或者(2)在以太坊上借出他的资产,借入所需的资产,然后将该资产桥接到目的地链上。LayerZero 实现了一个借贷协议,允许用户在以太坊上保持他们的整个资产基础,将其借出,然后在 Polygon 上直接用 MATIC 借贷。这就消除了中间成本,如桥接和交换费用。

这三个例子只是 LayerZero 实现的众多可能性中的一小部分。通过利用 LayerZero,开发者将能够编写他们的应用程序而不必担心链间和链内交易的不同标准,并且用户将能够自由地在链上移动流动性。我们期待着社区在无信任的跨链交易的力量下,能够开发出创造性的新应用。

7 总结

本文介绍了LayerZero的设计和实现,这是第一个不涉及任何中间交易的无信任全链互操作平台。我们展示了用过利用两个独立的、无信任的链外实体,即预言机和中继器,LayerZero 能够实现有效的交付,而不需要昂贵的跨链状态复制机或中介通证。我们的协议是以一种不排除使用任意中继器服务的方式设计的,这确保了中继器和预言机之间没有串通。LayerZero 协议可以在所支持的链之间进行本地转换,而新颖的 LayerZero 端点设计可以很轻松地扩展到支持的任何链上。除此之外,我们的端点设计是轻量级的,足以运行在昂贵的 Layer 1 上,比如以太坊,而不会产生令人望而却步的成本。我们提出了一个如何在 LayerZero 中实现对基于EVM的链支持的案例研究,使用一个参考的中继器实现与 Chainlink 的去中心化预言机网络相结合,通过 LayerZero 实现跨链交易。

参考文献

[1] All layer 1 blockchain protocols. https://blockchaincomparison.com/blockchain-protocols/. Accessed:2021–5–13.

[2] Anyswap dex user guide. https://anyswapfaq.readthedocs.io/en/latest/index.html. Accessed: 2021–5–13.

[3] Binance.comhttps://www.binance.com/. Accessed: 2021–5–14.

[4] BREIDENBACH, L., CACHIN, C., CHAN, B., COVENTRY, A.,ELLIS, S., JUELS, A., KOUSHANFAR, F., MILLER, A., MAGAURAN, B., MOROZ, D., NAZAROV, S., TOPLICEANU, A.,TRAMER` , F., AND ZHANG, F. Chainlink 2.0: Next steps in the evolution of decentralized oracle networks. White paper, ChainLink, 2021.

[5] What is cosmos? https://v1.cosmos.network/intro. Accessed: 2021–5–15.

[6] Dcrm — fusion.orghttps://www.fusion.org/tech/dcrm. Accessed: 2021–5–13.

[7] ELLIS, S., JUELS, A., AND NAZAROV, S. Chainlink: A decentralized oracle network. White paper, ChainLink, 2017.

[8] Ethereum. https://ethereum.org/en/. Accessed: 2021–5–13.

[9] Ethereum 2.0 (eth2) vision. https://ethereum.org/en/eth2/vision/. Accessed: 2021–5–13.

[10] GALAL, H. S., ELSHEIKH, M., AND YOUSSEF, A. M. An efficient micropayment channel on ethereum. In Data Privacy Management, Cryptocurrencies and Blockchain Technology. Springer, 2019, pp. 211–218.

[11] Golden gate — trustless-bridging ethereum (evm) blockchains — part 1: Basics. https://loredanacirstea.medium.com/golden-gate-trustless-bridging-ethereum-evmblockchains-part-1-basics-d016300ea0dd. Accessed: 2021–5–14.

[12] Announcing the gravity bridge. https://blog.althea.net/gravity-bridge/. Accessed: 2021–5–15.

[13] HILDENBRANDT, E., SAXENA, M., RODRIGUES, N., ZHU, X.,DAIAN, P., GUTH, D., MOORE, B., PARK, D., ZHANG, Y.,STEFANESCU, A., ET AL. Kevm: A complete formal semantics of the ethereum virtual machine. In 2018 IEEE 31st Computer Security Foundations Symposium (CSF) (2018), IEEE, pp. 204–217.

[14] Ibc overview — cosmos sdk. https://docs.cosmos.network/master/ibc/overview.html. Accessed: 2021–5–15.

[15] LAZARENKO, A., AND AVDOSHIN, S. Financial risks of theblockchain industry: A survey of cyberattacks. In Proceedings of the Future Technologies Conference (2018), Springer, pp. 368– 384.

[16] LU, Z., WANG, Q., QU, G., ZHANG, H., AND LIU, Z. A blockchain-based privacy-preserving authentication scheme for vanets. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 27, 12 (2019), 2792–2801.

[17] Polygon: Ethereum’s internet of blockchains. https://polygon.technology/lightpaperpolygon.pdf.9

[18] SALTZER, J. H., REED, D. P., AND CLARK, D. D. End-to-end arguments in system design. ACM Transactions on Computer Systems (TOCS) 2, 4 (1984), 277–288.

[19] Solidity types. https://docs.soliditylang.org/en/v0.5.3/types.html. Accessed: 2021–5–14.

[20] SPAIN, M., FOLEY, S., AND GRAMOLI, V. The Impact of Ethereum Throughput and Fees on Transaction Latency During ICOs. In International Conference on Blockchain Economics, Security and Protocols (Tokenomics 2019) (Dagstuhl, Germany, 2020), V. Danos, M. Herlihy, M. Potop-Butucaru, J. Prat, and S. Tucci-Piergiovanni, Eds., vol. 71 of OpenAccess Series in Informatics (OASIcs), Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, pp. 9:1–9:15.

[21] Tendermint. https://tendermint.com/. Accessed: 2021–5–15.

[22] The eth2 upgrades. https://ethereum.org/en/eth2/. Accessed: 2021–5–13.

[23] Thorchain. https://thorchain.org. Accessed: 2021–5–13.

[24] VIRIYASITAVAT, W., DA XU, L., BI, Z., AND SAPSOMBOON, A. New blockchain-based architecture for service interoperations in internet of things. IEEE Transactions on Computational Social Systems 6, 4 (2019), 739–748.

[25] WARREN, W., AND BANDEALI, A. 0x: An open protocol for decentralized exchange on the ethereum blockchain. URl: https://github. com/0xProject/whitepaper (2017), 04–18.

[26] WOOD, G. Polkadot: Vision for a heterogeneous multi-chain framework. White paper, Polkadot, 2016.

[27] yearn.finance. https://yearn.finance/. Accessed: 2021–5–14.


CC BY-NC-ND 2.0 版权声明

喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。

加载中…

发布评论