6

区块链桥接介绍:在加密网络之上构建网络

 3 years ago
source link: https://learnblockchain.cn/article/3019
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

来源 | 1kxnetwork

经过多年的研发,我们终于形成了一个多链的市场结构。目前有超过 100 个活跃的公共区块链,其中许多都有自己独特的应用程序、用户、地区分布、安全模型和设计权衡。不管个体社区相信什么,现实都是宇宙趋向于熵增,这些网络的数量很可能在未来继续增加。

这种类型的市场结构使得我们必须获得不同网络之间的互操作性。许多开发者已经意识到这一点,去年区块链桥接的数量激增,旨在将日渐碎片化的网络聚集起来。截至本文撰写,已有 40 多个不同的桥接项目

截至 2021 年 9 月 8 日演示图 (不全)

在本文中,我将:

  • 解释桥接为何重要
  • 概述各种桥接设计及其优缺点
  • 概述当前桥接的总体情况
  • 描述未来桥接可能会是什么样子

互操作性解锁了创新可能性

随着单个生态系统的发展,它们会发展自己独特的优势:安全性更强、吞吐量更大、交易费更便宜、隐私性更好、特定的资源供应 (如存储、计算、带宽)、具有地区开发者和用户社区等。桥接之所以重要,是因为它们让用户能够访问新的平台和协议;使协议之间能够互相操作;允许开发者协作构建新产品等。更具体来说,它们具有以下好处:

提高现有加密资产的生产力和实用性

桥接允许现有加密资产转移到新平台,做新的事情。如:

  • 发送 DAI 到 Terra 以在 Mirror 上购买合成资产,或者在 Anchor 上赚取收益
  • 从 Flow 向以太坊发送 TopShot 以作为 NFTfi 的抵押品
  • 在 Maker 上使用 DOT 和 ATOM 作为抵押品贷出 DAI

扩大现有协议的产品功能

桥接扩展了协议能够实现的设计空间。例如:

  • 在 Solana 和 Avalanche 上使用 Yearn vaults 进行流动性挖矿
  • 以太坊上的 NFT 跨链共享订单簿和 Rarible Protocol 上的 Flow
  • Index Coop 的权益证明指数

为用户和开发者解锁新功能用例

桥接给了用户和开发者更多选择。如:

  • 在 Optimism、Arbitrum 和 Polygon 上跨 DEX 对 SUSHI 的价格进行套利
  • 使用比特币支付 Arweave 的存储费用
  • 在 Tezos 上通过 PartyBid 竞拍 NFT

桥接 101

从抽象层面来看,可以这样定义桥接:一个在两个或多个区块链之间传输信息的系统。而“信息”可以指资产、合约调用、证明或状态。大多数桥接设计由以下几个部分组成:

  • 监测:通常有一个参与者 (或一个“预言机”、“验证者”、“中继者”) 监测源链上的状态。
  • 消息传递/中继:参与者接收了事件之后,需要将信息从源链传输到目标链。
  • 共识:在一些模型中,为了将信息转发到目标链,监控源链的参与者之间需要达成共识。
  • 签名:参与者需要对发送到目标链的信息进行加密签名,可以进行单签或者作为门限签名 (threshold signature) 方案的一部分。

桥接方案大致有四种类型,每一种都有其优缺点:

  • 资产专用型 (Asset-specific):该桥接类型唯一的目的就是提供访问外部链特定资产的渠道。这些资产通常为“封装” (wrapped) 资产 (由基础资产以托管或非托管方式完全抵押的资产)。比特币是桥接至其他链的最常见的资产,仅在以太坊上就有七种不同的桥。这种桥接是最容易实现的,并从中获得庞大的流动性。但其功能有限,并且需要在每个目标链上重新实现。例子有 wBTC 和 wrapped Arweave。
  • 链专用型 (Chain-specific):两条链之间的桥接,通常支持在源链上锁定和解锁代币以及在目标链上铸造任意的封装资产。由于这些桥接的复杂性有限,它们通常可以更快地上市,但也不容易扩展到更广泛的生态系统中。用例有 Polygon 的 PoS 桥接,它允许用户将资产从以太坊转移到 Polygon 中,反之亦然,但仅限于这两条链。
  • 应用专用型 (Application-specific):一种为两个或多个区块链提供访问的应用程序,但仅限于在该应用程序中使用。这种应用程序本身的好处是代码库较小;不是在每条区块链上都有整个应用程序的单独实例,而是通常在每条区块链上都有更轻量级的、模块化的“适配器”。实现了“适配器”的区块链可以访问它所连接的所有其他区块链,因而存在网络效应。它们的缺点是很难将该功能扩展到其他应用程序中 (例如,从借贷应用扩展到交易应用)。具体用例有 Compound Chain 和 Thorchain,它们分别构建了专门用于跨链借贷和交易的独立区块链。
  • 通用型 (Generalized):一种专为跨多个区块链传输信息而设计的协议。由于其复杂性不高,这种设计享有强大的网络效应 —— 项目的单一集成便可使其访问桥内的整个生态系统。缺点是,一些设计通常会在安全性和去中心化之间权衡,以获得这种可扩展效应。这可能会对生态系统产生复杂且意想不到的后果。其中一个用例是 IBC,用于在两条异构链中发送信息 (且具有最终确定性保证)。

截至 2021 年 9 月 14 日

此外,根据用于验证跨链交易的机制,桥的设计大致有三种类型:

类型一:外部验证者和联邦制 (External validators & Federations)

这类桥接方案通常有一组验证者监测源链上的“邮箱”地址,并根据共识在目标链上执行操作。资产转移通常是这样操作的:在“邮箱”上锁定资产,然后在目标链上铸造等量的资产。这些验证者通常存入了单独的代币作为抵押担保,以保证网络的安全性。

外部验证者和联邦系统的简化图示

类型二:轻客户端和中继 (Light clients & Relays)

参与者监测源链上的事件,并生成有关该链上记录的过去事件的加密打包证明。这些证明将和区块头一起被转发到目标链上的合约 (如“轻客户端”),然后验证某个事件是否被记录,并在验证后执行操作。这种设计机制需要一些参与者“中继”区块头和证明。虽然用户可以“自中继”交易,但确实存在中继将持续转发数据的活性假设。这是一种相对安全的桥接设计,因为它在无需信任中间实体的情况下保证了去信任的有效交付。但它也是资源密集型的,因为开发者必须在每条新目标链上构建一个新智能合约,来解析源链的状态证明;而验证流程本身则需要消耗大量 gas 费用。

轻客户端/中继系统的简化图示

类型三:流动性网络 (Liquidity networks)

这类似于点对点网络,其中每个节点都充当一个“路由器”,持有来源和目标链资产的“库”。这些网络通常利用底层区块链的安全性;通过使用锁定和争议机制,可以保证路由器不会盗走用户的资金。正因为如此,像 Connext 这样的流动性网络对于那些转移大量价值的用户来说可能是一个更安全的选择。此外,这种桥接类型可能最适合于跨链资产转移,因为路由器提供的资产是目标链的原生资产,而不是相互不能完全替代的衍生资产。

流动性网络的简化图示

按照上面的三种桥接类型分,可以得出以下图表:

截至 2021 年 9 月 14 日

需要注意的是,上述任何给定的桥接都是双向通信通道。在每条通道中可能有独立的模型,因而这种分类不能准确地代表诸如 Gravity、Interlay 和 tBTC 此类混合模型。因为它们都在一个方向上有轻客户端,而在另一个方向上有验证者节点。

另外,可以根据以下几个因素来大致评估一个桥接的设计:

  • 安全性:信任及活跃度假设、对作恶行为的容忍度、用户资金的安全性和自反性。
  • 速度:交易完成的延迟时间,以及最终确定性保证。通常需要在速度和安全性之间进行一定的权衡。
  • 连接性 (Connectivity):为用户和开发者所做的目标链选择,以及集成额外目标链的不同难度级别。
  • 资本效率:经济机制,即设置确保系统安全所需的资本和资产转移的交易成本。
  • 状态性 (Statefulness):转移特定资产、更复杂的状态和/或执行跨链合约调用的能力。

综上所述,可以从下图角度来评估这三种设计机制的权衡:

此外,安全性是一个范围,我们可以将其大致分为以下几类:

  • 去信任的 (Trust-less):桥接的安全性与它所桥接的底层区块链绑定。 除非底层区块链遭到共识级攻击,否则用户的资金不会丢失或被盗。也就是说,这并非完全去信任,因为所有这些系统的经济、工程和加密组件都含有信任假设 (如,代码不存在漏洞)。
  • 投保的 (Insured):攻击者能够盗取用户资金,但他们这样做可能无利可图。因为他们参与网络需要先提供抵押品,而当出现错误行为和作恶行为时将受到罚没。如果用户资金丢失,协议会通过罚没攻击者的抵押品来对用户进行补偿。
  • **抵押的 (Bonded) **: 与投保模式类似 (如,参与者的经济利益与其行为密切相关),除了用户因其错误以及作恶行为而抵押品被罚没之外。抵押品类型对投保和抵押模式都很重要;内生抵押品 (协议代币作为抵押品) 的风险更大,因为如果桥接出现故障,那么代币的价值也很可能会崩溃,这进一步降低了桥接的安全保证。
  • 基于信任的 (Trusted):参与者不需要抵押资产,在系统出现故障或者作恶行为时用户无法取回资产,因此安全性主要依赖于桥接运营商的声誉。

截至 2021 年 9 月 14 日

在未来的升级中,有几个项目将从“基于信任的”类别中移除。

总结设计机制的权衡

“外部验证者和联邦制”通常在状态性和连接性方面较佳,因为它们可以触发交易、存储数据,并允许在任意数量的目标链上与数据进行交互。然而,这是以安全性为代价的,因为根据定义,用户依赖于桥接而非源链或目标链的安全性。虽然目前大多数外部验证者机制都是基于信任的模型,但有一些是需要抵押资产的,其中的一个资产子集用于为终端用户投保。不幸的是,它们的保险机制通常具有自反性 (reflexive)。如果将协议代币作为抵押品,即假设该代币的价值足以赔偿用户的损失。此外,如果抵押资产与保险资产不同,则还需依赖预言机的价格流,因此桥接的安全性还会降级为预言机的安全性。而如果不需要信任的模型,这些桥接也是资本效率最低的,因为它们促进经济吞吐量的同时也需要成比例地扩大抵押品的规模。

“轻客户端和中继”也是在状态性方面较好,因为区块头中继系统能够传送任何类型的数据。尽管由于需要中继器来传输信息而存在活性假设,但它们的安全性也很好,因为其不需要额外的信任假设。同时,它们是资本效率最高的桥接,因为不需要锁定任何资产。然而,这些优势都是以牺牲连接性为代价的。每连接一对链,开发者必须在源链和目标链上部署一个新的轻客户端智能合约,该合约的复杂度介于 O(LogN) 和 O(N) 之间 (之所以介于这个范围,是因为使用相同的共识算法添加链支持相对容易)。在依赖欺诈证明的 optimistic 模型中也存在显著的速度缺陷,这可能会将延迟增加到 4 小时

“流动性网络”在安全性和速度方面较强,因为它们是本地验证的系统 (即不需要全球共识)。它们也比抵押/投保机制的外部验证者机制更具有资本效率,因为资本效率与交易流/交易额有关,而不是与安全性有关。例如,假设两条链的交易流相等,再给定一个内置的再平衡机制,流动性网络可以促成任意大的经济吞吐量。

而权衡点在于状态性,因为虽然可以传输调用数据,但其功能有限。例如,它们能够跨链与数据交互,其中接收方有权根据所提供的数据进行交互 (例如,使用来自发送方的签名信息调用智能合约),但是对于传输没有“所有者”的数据或者传输属于广义状态的数据 (如铸造代表代币) 没有帮助。

构建强健的跨链桥接是分布式系统中的一个难题。虽然在这领域已有许多尝试,但仍存在一些为解决的问题:

  • 最终确定性和回滚 (Finality & rollbacks) :在具有概率最终确定性的链中,桥接如何应对区块重组和时间盗贼攻击? 例如,如果任何一条链都经历了状态回滚,那么从波卡向以太坊发送自己的用户会遇到什么样的情况?
  • NFT 转移和溯源 (NFT transfers & provenance) : 桥接如何为跨多条链的 NFT 溯源?例如,如果有一个 NFT 曾在以太坊、Flow 和 Solana 的多个市场上进行交易,那么所有这些交易和所有者是如何记录的?
  • 压力测试 (Stress testing) :在链遭遇拥堵或协议和网络级别攻击的情况下,各种桥接设计会如何应对?

区块链桥接的未来

虽然桥接为区块链生态系统解锁了更多创新可能,但如果团队在研发方面走捷径,也可能会带来很大的风险。Poly Network 跨链攻击事件向我们展示了漏洞和攻击的潜在经济损失规模,并且我估计未来会出现更大规模的攻击。虽然对于桥接构建者来说,现在的网络高度碎片化而竞争十分激烈。但各个团队应高度自律,优先考虑安全性而不是发布速度。

虽然最终的理想状态是构建一条为所有事物共用的“同构桥接”,但现实是,很可能不存在单一的“最佳”桥接设计。不同类型的桥接将适用于不同的特定应用 (如资产转移、合约调用、代币铸造等)。

此外,最佳的桥应该是最安全的、具有可连接性的、快速的、资本效率高的、成本效益高且抗审查的。如果我们想要实现“区块链互联网”的愿景,这些属性都是需要我们促进达到最大化的。

到目前为止,我们还没有构建出最优的桥接。而所有桥接类型都有几个有趣的研发方向:

  • 降低区块头验证的成本:轻客户端的区块头验证成本十分高,如果能解决这一问题,将使我们更接近于实现完全通用且去信任的互操作性。一种有趣的设计则是桥接至 L2 以降低这些成本。例如,在 zkSync 上实现 Tendermint 轻客户端。
  • 从基于信任的模式转变为抵押模式:虽然抵押验证者的资本效率要低得多,但“社会合约”的安全性不足以保障数十亿美元的用户资金安全。此外,花哨的门限签名机制并不会减少信任;这一群签名者仍属于受信任的第三方。在没有抵押的情况下,用户实际上是将他们的资产移交给外部托管人。
  • 从抵押模式转变为投保模式:损失资产是用户最不想遇到的情况。虽然抵押资产的验证者和中继器一定程度上可以防止作恶行为,但协议应该更进一步,直接使用罚没资金对用户进行补偿。
  • 扩大流动性网络的流动性:“流动性网络”可以说是资产转移的最快的桥接,并且在信任和流动性之间存在着一些有趣的设计权衡。例如,流动性网络可能可以利用抵押验证者模式来外包资本供应,其中路由也可以是具有抵押流动性的门限多签。
  • **桥接聚合:**虽然对于特定的资产来说,桥接的使用可能会遵循指数定律,但像 Li Finance 这样的聚合器可以改善开发者和终端用户的使用体验。

非常感谢 Aidan Musnitzsky、Arjun Bhuptani、James Prestwich 和 Pranay Mohan 的反馈 。

本文首发于:https://news.ethereum.cn/Layer2/blockchain-bridges


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK