如何使跨链代币重新具备可替代性:第一部分

如何让跨链代币再次可替代:第一部分

介绍

模块化的极客们说,加密货币的未来是一个百万(或更多)互联的领域,用户像Alice在仙境中漫游一样在区块链之间跳跃。如果你可以在其他区块链上访问尖端技术、新颖的应用程序、质押/流动性提供的高回报、高性能和超低交易费用,为什么要坚持使用一个链呢?

但是,在区块链之间移动要比Alice在仙境中的旅行复杂得多,主要是由于当前区块链互操作性方法固有的限制(例如,跨链桥)。特别是,今天的跨链桥要么不安全(桥黑客损失超过 25 亿美元),要么速度慢、费用高,或功能有限——或者显示出上述列表中的多种特性。

困扰跨链桥行业的其他问题更为微妙,但仍然足以将模块化极客对多链生态系统的梦想变成用户和开发者的噩梦——一个例子是可替代代币(如 ERC-20)在通过各种跨链协议桥接到不同链时变得不可替代(non-fungible),从而损害了其作为可转让资产的特性。在本文中,我们将探讨一个旨在跨链保持代币可替代性的解决方案,无论代币的原始合约存在于何处:ERC-7281:主权桥接代币(Sovereign-Bridged Tokens)。

image

ERC-7281 扩展了 ERC-20——以太坊中创建可替代代币的事实标准——以使代币发行者批准的多个桥接能够在远程域铸造和销毁 ERC-20 代币的规范表示。这确保了桥接 ERC-20 代币的用户在目的地接收到代币的可替代版本(即两个代币可以 1:1 交换),即使代币通过不同的路径/桥接进行跨链发送。重要的是,采用 ERC-7281 的协议保持对桥接代币的控制(与现状不同,跨链桥控制桥接代币),并可以限制铸造操作以减少在桥接失败时的风险。

让我们以 USDC 为例,说明理论上在不同链上相同的 ERC-20 代币之间的不可替代性。在 以太坊Layer2(L2)网络(如 Arbitrum、Base、Optimism)中,通常使用规范桥将流行的 ERC-20 代币从以太坊 L1 移动到这些链。这些来自 L1 的 L2 代币通常被称为“桥接的 [插入代币名称]”。

在 USDC 的情况下,常见的符号是 USDC.e、USDC.b 等。随着时间的推移,Circle 将其 USDC 部署扩展到其他链,包括 L2,在这些链上,USDC 已通过规范桥接上线。尽管这两个代币由同一实体铸造并且价格相同,但它们在技术上是不同的、不可替代的代币,因此不“互操作”——而原生 USDC 可以通过 Circle 的 CCTP 桥接,桥接的 USDC 只能通过规范桥接返回到 L1。

ERC-7281 通过引入 ERC-20 扩展来解决这个问题,代币的部署者可以为其分配和参数化不同的桥接来源。在上述示例中,Circle 可以在所有 L2 上部署一个通用的 USDC 代币,其中规范桥(例如 Circle Mint、Circle CCTP 和其他批准的桥接)都被指定为能够根据其逻辑铸造代币。为了最小化铸造者被黑客攻击的风险,部署者可以限制每个铸造者在特定时间段内可以铸造和销毁的代币数量——更可靠的桥接(例如规范的 L2 桥接)具有更高的限制,而具有集中共识的桥接则具有较低的限制。

虽然 ERC-7281 不是创建可替代跨链代币的第一次尝试,但它解决了与先前提案相关的问题——例如供应商锁定、代币发行者的主权丧失、桥接代币的流动性启动成本高、基础设施开销大以及对桥接失败的暴露增加。

这份两部分的报告将考察引入主权桥接代币标准的理由,并提供 ERC-7281(也称为 xERC-20)规范的全面概述。我们还将讨论实施 ERC-7281 对用户、开发者、基础设施提供者和以太坊生态系统中其他参与者的积极影响和潜在缺点。

关于区块链桥的回顾

在深入探讨不可替代桥接代币的问题之前,了解桥接代币存在的原因是有帮助的。这反过来又需要理解区块链桥的动机和运作——因为桥接运营商负责创建桥接代币版本。

桥接是一种在区块链之间传递信息的机制。除了纯粹的货币信息外,桥接还可以传递任何有用的信息,例如其他链上的代币汇率和智能合约状态。然而,从一个链转移资产(代币)到另一个链是用户今天与桥接互动的最常见用例。

促进跨链资产转移的方法各不相同,但代币桥接工作流程通常遵循三种高级模式之一:

锁定和铸造桥

  • 用户希望将代币从其本地或“主”链(最初发行的地方)桥接到另一条链。这两个区块链之间不互操作,因为每个链实现了不同的架构和协议设计,这阻止用户直接从链 A 的钱包地址转移代币到链 B 的钱包地址。

  • 桥接运营商在原链的智能合约中托管用户存入的代币,并通过在目标链上部署的代币合约创建代币的“包装”表示。

  • 当用户希望反向桥接(目的链 → 原链)时,他们将包装代币返回到目的链上的桥接,桥接根据桥接中的逻辑(例如 ZK 证明或外部法定人数)验证这一点,并释放原始代币从主链的托管中。

image

销毁和铸造桥

  • 这种方法不是将代币锁定在托管中,而是销毁(销毁)源链上的代币;

  • 然后,桥接在目的链上铸造等量的代币;

  • 对于反向桥接,目的链上的桥接代币在新代币在源链上铸造之前被销毁;

  • 这保持了代币的总供应量,同时实现了跨链转移。

image

原子交换

  • 这种方法直接将源链上的资产与另一方在目的链上的资产进行交换。
  • 原子交换通过相互锁定具有相同秘密值的资金来工作,这意味着如果任何一方的秘密被揭示,另一方也可以揭示。这赋予了交换原子性属性。
  • 原子性意味着交换要么完全完成(在双方),要么根本不完成,从而防止欺诈或部分/失败的转移。

第一种方法(锁定和铸造)目前是最常见的。原生代币与桥接铸造的相应包装表示之间的价值等价性使用户能够“转移”资产跨链,并在与最初发行的链不同的链上使用代币。

然而,新设计——如基于意图的桥接——已变得相当流行。“意图”允许用户表达交易的期望结果(“用 100 USDC 交换 100 DAI”),而不是概述实现结果的具体步骤。意图作为一种强大的用户体验解锁出现,因为它们大大简化了人们的链上体验,使加密货币更易于使用,特别是当与 链抽象解决方案 配对时。

跨链意图 允许用户在不担心桥接的底层复杂性的情况下在链之间转移代币。在基于意图的桥接中,用户在源链上存入资金,并指定他们在目的链上的期望结果(他们的“意图”)。被称为“填充者”或“求解者”的专门运营商可以通过提前将请求的代币发送到目的链上的用户来满足这一意图。然后,运营商证明转移发生,以索取源链上锁定资金的报销。

一些基于意图的桥接在底层利用锁定和铸造机制。在这种情况下,桥接铸造包装代币,这些代币要么发送给满足用户意图的填充者——如果没有填充者介入,则直接发送给用户。虽然基于意图的桥接通过其求解者网络增加了额外的效率层,但它们仍然在根本上依赖于与传统锁定和铸造桥接相同的原则。

image

我们可以将每个包装代币视为来自桥接运营商的 IOU,承诺从托管合约中释放一定数量的基础代币。这些包装资产的价值与桥接运营商(感知的)处理持有者请求从代币的主链上提取原生代币的能力直接相关。

被授权在源链上锁定基础代币并在目的链上铸造其包装表示的桥接确保代币的总供应量保持不变。对于一个单位的基础代币,正好铸造一个单位的相应包装代币,反之亦然。如果一个应用程序接受包装代币作为交换媒介或使用包装资产作为货币,应用程序的开发者和用户信任桥接提供者来保护支持包装代币的“真实”资产。

我们为什么需要桥接?

能够在远程链上与资产的合成版本进行交易——通过桥接创建资产的表示——是一项强大的功能,使开发者和用户都能够利用跨链互操作性的好处。这些好处包括访问更多流动性、接触新用户以及为用户提供灵活性(用户可以无缝地与来自不同链的最爱应用程序互动)。

为了更好地理解这在实践中是如何运作的,以及为什么这对开发者和用户都很重要,让我们通过一个虚构的去中心化交易所 BobDEX 来检查一个具体的例子。这个例子将展示包装代币如何促进跨链扩展,同时突出可能出现的好处和潜在的复杂性:

BobDEX 是 Bob 在以太坊上创建的一个自动化做市商(AMM)交易所,旨在实现不同资产之间的无信任交换。BobDEX 有一个原生代币 $BOB,既是治理代币,也是 LP 奖励代币。在后者的情况下,BobDEX 向流动性提供者(LP)发行 BOB 代币,使提供流动性的用户有权获得 DEX 用户在池中交换资产时支付的费用的一部分。

BobDEX 的市场份额显著增长,但以太坊 L1 的限制阻碍了进一步增长。例如,一些用户不想在以太坊上使用 BobDEX,因为高昂的 gas 费用和交易延迟;同样,其他用户希望在不必持有以太坊上的原生 $BOB 代币的情况下接触 $BOB 代币的价格。

为了解决这个问题,Bob 在 Arbitrum(一个低费用、高吞吐量的Layer2(L2)Rollup )上部署了 BobDEX 的一个版本,并通过 Arbitrum-以太坊桥接在 L2 上部署了 BOB 代币的包装版本(wBOB)。Arbitrum 上的 BobDEX 与以太坊上的 BobDEX 完全相同,只是它使用 wBOB——而不是原生 BOB 代币——作为 LP 奖励和治理。

从用户(例如流动性提供者)与 Arbitrum 上的 BobDEX 互动的角度来看,应用程序代币(包装 BOB 与原生 BOB)之间的差异并没有影响。由于 wBOB 代币由 Arbitrum-以太坊桥接中持有的实际 BOB 代币支持,wBOB 代币持有者可以通过与桥接合约互动轻松地交换以太坊上的原生 BOB ERC-20 代币。

这种情况对 Bob 和用户来说都是双赢的:

  1. Bob 可以吸引更多用户,特别是那些希望在 BobDEX 上交易时享受低 gas 费用和快速交易确认的用户

  2. LP 可以在不处理以太坊高昂 gas 成本和长确认时间的情况下,通过向 BobDEX 提供流动性来赚取奖励

  3. 持有者可以在市场上购买 wBOB 代币,以从 BOB 代币价格的变化中获利,而无需与以太坊上的 BOB ERC-20 合约互动

image.png

桥接的好处还扩展到增强可组合创新和解锁利用桥接代币流动性的新的用例。例如,Alice可以在 Arbitrum 上创建一个名为 AliceLend 的借贷协议,接受 wBOB 作为借款人的抵押品,以扩展 wBOB 的效用并为 借贷和借款 创建一个新市场。

向 AliceLend 提供流动性的借贷者可以确信会收到存款:如果用户违约,AliceLend 会自动拍卖作为抵押品存入的 wBOB 代币以补偿借贷者。在这种情况下,购买被清算的 wBOB 抵押品的买家承担了 BobDEX 上的 LP 角色,并拥有相同的保证,即 wBOB 代币可以 1:1 兑换为原始 BOB 代币。

当前形式的跨链桥接为确保 (先前孤立的)以太坊 L2 之间的互操作性 和促进新应用程序(例如跨链借贷和跨链 DEX)提供了可行的解决方案。但桥接生态系统目前正面临限制,阻碍进一步增长,例如跨链代币的不可替代性——我们将随后详细探讨这个问题。

为什么桥接代币会变得不可替代(non-fungible)?

前面描述的锁定和铸造桥接工作流程在纸面上看起来简单,但实际上需要大量的工程和机制设计工作才能正确运作:

第一个挑战是确保桥接代币的包装版本始终由锁定在源链上的原生代币支持。如果攻击者在远程链上铸造代币的表示而没有在源链上存入原生代币,则可能通过用(欺诈性铸造的)包装代币与主链上的原生代币交换来使桥接破产,并阻止合法用户——在铸造包装代币之前已在桥接合约中存入——提取存款。

第二个挑战更为微妙,源于桥接代币的性质:在同一远程链上由桥接提供者铸造的两个代币表示不能 1:1 交换。我们可以用两个用户尝试通过不同路径交换代币的另一个例子来说明这个问题:

  • Alice通过规范的 Arbitrum 桥将 USDC 从以太坊桥接到 Arbitrum,并在 Arbitrum 上收到 200 USDC.e,而Bob通过 Axelar 将 USDC 桥接到 Arbitrum,并在 Arbitrum 上收到 200 axlUSDC。Alice和Bob达成协议,让Alice向Bob发送 200 USDC(以换取 200 USDT),以便Bob可以提取 400 USDC 到以太坊。
  • Bob尝试通过 axlUSDC 提取 400 USDC,但只收到 200 USDC,并附有一条消息,解释说桥接只能给Bob 200 USDC。Bob感到困惑,因为包装的 ERC-20 代币应该是“可替代的”,不应该表现出阻止任何人在任何应用程序中 1:1 交换 ERC-20 代币的差异。
  • Bob从跨链桥接中学到了一个惨痛的教训:“可替代的 ERC-20 代币”并不总是意味着“你可以在任何应用程序中与其他 ERC-20 代币 1:1 交换这个代币”。Bob与Alice进行风险交易的尝试——因为Alice可能不会归还代币——以惊人的方式失败。

Bob在交换中被坑后

Bob在交换中被坑后

为什么如果他和Alice在目的链上收到了相同基础资产的包装版本,Bob就无法提取 400 USDC?你会记得我们提到过,在不同链上发行的代币是不兼容的,因此在非原生链上发行的原生代币的表示是来自桥接的 IOU,承诺在用户希望桥接回代币的原生链时偿还一定数量的原生代币(取决于剩余多少)。

因此,每个桥接代币的价值与负责在主链上持有存款并在目的链上铸造表示的桥接提供者相关;Bob的桥接提供者只能支付给Bob 200 USDC,因为这是它能够覆盖的存款金额;Alice的 200 USDC 不能通过Bob的桥接提供者提取,因为它从未收到存款或向Alice发行 IOU。Alice必须从 Arbitrum 上提取她锁定的 USDC,然后通过Bob的桥接提供者桥接,Bob才能访问剩余的代币。

image.png

Bob和Alice的困境指向了一个问题,即在多个竞争桥接提供者铸造的基础资产的不同不可替代表示之间桥接的问题。另一个关于同一资产的不同 ERC-20 表示的问题是,它们不能在单一流动性池中交易。

使用前面的例子,如果我们在链上有 axlUSDC 和 USDC.e,并希望将它们交换成 ETH 及反之,我们必须部署两个流动性池——ETH/axlUSDC 和 ETH/USDC.e。这导致了所谓的“流动性碎片化”问题——一种情况,即交易池的流动性小于它们本可以拥有的流动性,因为存在多个适合本质上相同交易对的池。

解决方案是在目的链上流通一个单一的“规范(canonical)”版本的代币,以便Bob和Alice可以在不需要每个人从源链的桥接中提取的情况下交换代币。每条链上拥有一个规范代币也使开发者受益,因为用户可以快速在生态系统之间移动,而无需处理代币流动性的问题。

那么,我们如何在每条预期使用和转移的链上实施代币的规范版本呢?下一节将解释一些在多个链上创建规范代币的流行方法。

在不同链上实施规范代币

为每条链创建一个规范代币并非易事,存在多种选项,各有不同的权衡和优势。在为每条链创建规范代币时,我们通常需要考虑谁来信任支持特定代币价值的 IOU 的存在。

假设你是一个代币的创建者,你希望它能够在不同链上可用和可转让,而不会遇到可替代性的问题;你有四个选项:

  1. 通过规范Rollup /侧链桥铸造规范代币
  2. 通过第三方桥接提供者铸造规范代币
  3. 通过代币发行者桥铸造规范代币
  4. 直接多链发行与原子交换

前三个选项依赖于各种桥接机制来促进代币的跨链移动。然而,作为代币创建者,你也可以选择完全绕过桥接,在每个支持的链上原生发行代币。在这种方法下,而不是依赖包装代币或桥接基础设施,你在链上保持独立但协调的代币部署——通过原子交换实现链之间的无信任交换。

然而,这种方法需要复杂的基础设施来维持跨链流动性并促进原子交换。管理多个原生部署的复杂性历史上限制了这种方法仅限于拥有大量技术资源的大型协议。

1. 通过规范Rollup /侧链桥铸造规范代币

如果某条链有一个规范(内嵌)桥,你可以为希望从原生链桥接的用户分配铸造你协议代币表示的权利。通过链的规范桥路由的交易(存款和提取)通常由链的验证者集验证,这提供了更强的保证,确保主链上的存款可信地支持所有铸造的表示。

尽管规范桥铸造了代币的规范表示,但其他表示仍将存在。这发生的原因很简单,因为规范桥通常有一些限制,阻止它们为用户提供最佳体验。例如,通过Rollup 的规范桥从 Arbitrum/Optimism 到以太坊的桥接会产生七天的延迟,因为交易必须由验证者验证——如果无效,可能会通过 欺诈证明 进行争议——然后Rollup 的结算层(以太坊)才能结算交易批次。

希望更快退出的Rollup 用户必须使用其他桥接提供者,这些提供者可以承担待处理Rollup 退出的所有权,并在用户所需的目标链上提供前期流动性。当这样的桥接使用传统的锁定和铸造模型时,我们最终会得到由不同协议发行的多个包装表示的代币,并面临之前描述的相同问题。

具有独立验证者集的侧链具有较低的延迟,因为一旦侧链的共识协议确认包含提取交易的区块,就会执行提取。Polygon PoS 桥是一个示例,连接侧链与不同领域(包括以太坊Rollup 和以太坊主网)的规范桥。

注意:我们指的是原始的 Polygon PoS 链,而不是将使用以太坊进行结算的 计划中的 validium 链。一旦从由外部验证者保护的侧链切换到由以太坊共识保护的 validium,Polygon 将成为 L2。

然而,侧链桥也与Rollup 规范桥共享一个弱点:用户只能在一对连接的链之间桥接。它们不能使用规范桥接到其他区块链。例如,今天你不能通过 Arbitrum 桥从 Arbitrum 桥接到 Optimism,或者通过 Polygon PoS 桥从 Polygon 桥接到 Avalanche。

image.png

1.1. 使用流动性桥铸造规范代币

依赖于Rollup 的本地桥来移动规范代币存在几个问题,例如流动性差和资产移动延迟。协议通过与流动性桥合作来解决这个问题,以促进快速提取和低延迟桥接。

在这种安排下,批准的流动性桥 (a) 在源链上铸造协议代币的包装表示 (b) 通过协议拥有的流动性池在目的地交换包装代币与规范表示。

目的链上代币的规范表示通常是通过规范侧链/Rollup 桥铸造的版本,尽管存在例外(如我们稍后将看到的)。例如,Optimism 上的 USDT 的规范版本是由 Optimism 桥铸造的 opUSDT。

每个流动性桥的功能类似于 DEX,具有自动化做市商(AMM),以执行在不同流动性池中存入的资产对之间的交换。为了激励流动性提供,AMM 池将一部分交换费用分享给在池合约中锁定规范代币的持有者。

这类似于 Uniswap 的模型;唯一显著的区别是资产对通常是流动性桥的代币表示与规范表示之间的关系。例如,用户通过 Hop 将 USDT 桥接到 Optimism 时,必须通过 huSDT:opUSDT 池交换 hUSDT。

image.png

通过流动性桥的桥接工作流程如下:

  • 在源链上锁定原生代币
  • 在目标链上铸造桥接表示的原生代币
  • 通过 AMM 在目标链上用规范表示交换桥接表示
  • 将规范代币发送给用户

这个过程对所有流动性桥(Across、Celer、Hop、Stargate 等)都是类似的。然而,通常对最终用户是抽象的——特别是通过求解者/填充者——并且会感觉像是单个交易,尽管涉及许多移动部分。

当桥接回源链时,用户销毁规范表示或通过 AMM 将规范代币与桥接表示交换,然后销毁该表示并提供销毁收据。一旦确认,用户可以提取最初锁定的原生代币。(与之前的操作一样,返回原始链的代币移动的细节对用户是隐藏的,由求解者管理)。

流动性桥接非常出色,主要是因为它解决了Rollup 桥接中的延迟问题;例如,Hop 允许被称为“Bonders”的专门方证明用户在 L2 上的提取交易的有效性,并承担从Rollup 的 L1 桥接提取的费用。每个 Bonder 为 L2 链运行一个完整节点,并可以确定用户的退出交易最终是否会在 L1 上得到确认,从而降低用户发起欺诈性提取并导致 Bonder 损失的风险。

流动性桥接还使用户能够在更多链之间移动,而不是规范桥接;例如,Hop 允许用户在 Arbitrum 和 Optimism 之间桥接,而无需先提取到以太坊。就像快速的 L2→L1 桥接一样,快速的 L2→L2 桥接也需要 Bonder 为源 L2 链运行完整节点,以确认提取,然后承担在目的 L2 链上为用户铸造代币的费用。这增强了Rollup 之间的可组合性,并大大改善了用户体验,因为用户可以在Rollup 之间无障碍地移动代币。

但是,流动性桥接也有影响使用链的内嵌桥铸造代币规范表示的实用性的缺点。我们将在下一节讨论流动性桥接的缺点:

流动性桥的缺点

1. 滑点

滑点是用户在与 AMM 互动时预期的代币数量与实际收到的代币数量之间的差异。滑点是由于 AMM 根据池中的当前流动性定价交换——定价是这样的,以便在交换完成后保持池中每个资产的平衡,这可能会在用户发起交易和执行交换之间发生变化。

桥接资产的流动性不足也可能增加滑点;如果池没有足够的流动性来重新平衡池的一侧,大额交易可能会大幅改变价格,导致用户以更高的价格执行交换。套利者预计会帮助纠正交易同一资产的池之间的差异,但可能会因涉及低交易活动/价值的代币的套利交易而受到阻碍。

这也影响到构建跨链应用程序的开发者,因为他们必须考虑滑点发生的边缘情况。用户可能无法完成跨链操作,因为在一个或多个目的链上收到的代币数量较少。

像桥接聚合器这样的应用程序(无法知道流动性桥是否有足够的流动性来覆盖目的链上的交换而不产生滑点)通过指定最大滑点容忍度来解决这个问题,并利用该容忍度来告知提供给用户的报价。虽然这可以防止交易回退,但用户总是会损失一部分桥接代币——无论桥接的 AMM 池中的流动性如何。

2. 流动性约束

流动性桥的一个根本挑战是目的链上对足够流动性的绝对要求。与传统的锁定和铸造桥不同,后者的代币铸造直接由锁定资产支持,流动性桥依赖于 AMM 池中可用的代币来完成跨链转移。当流动性低于关键阈值时,整个桥接机制实际上可能停止运作。

  • 桥接操作可能会完全停止,如果流动性下降到过低的水平,用户将无法完成他们的转账;
  • 用户可能被迫将大额转账拆分为较小的交易,以避免耗尽池流动性;
  • 在高波动性或市场压力期间,流动性提供者可能会从池中撤回资金,恰恰是在桥接功能最需要的时候;
  • 新代币对的引导变得特别具有挑战性,因为需要大量的初始流动性才能使桥接正常运作。

流动性要求造成了循环依赖:桥接需要大量流动性才能可靠地运作,但吸引流动性提供者需要展示一致的桥接使用和费用生成。这个“鸡蛋与鸡”的问题对于新代币或交易频率较低的代币尤其严重,这些代币可能难以在多个链上维持足够的流动性。

3. 激励不匹配

流动性桥接的帮助程度取决于它能否在用户不遭受过度滑点的情况下,覆盖从桥接表示到目标链上规范代币的交换;与桥接的交互的 gas 成本也决定了流动性桥接在用户视角下的价值。因此,桥接聚合器和项目团队在发行代币时,会根据流动性和交易成本优先选择桥接。

虽然这确保了用户在桥接项目的代币或使用桥接聚合器进行跨链发送代币时有更好的用户体验,但基于流动性选择桥接使得无法在流动性提供者(LP)激励上花费的桥接处于劣势。此外,基于纯交易费用选择桥接会使竞争偏向于那些采用中心化方法以降低运营成本并能够对桥接交易收取较低费用的桥接。在这两种情况下,桥接并没有在可能最重要的指标上进行竞争:安全性。

基于流动性的桥接也不利于交易活动较低的长尾资产(使其不太可能吸引 LP)。长尾代币的发行者(或桥接量较低的新代币)将不得不建立 AMM 池并引导流动性,以覆盖原生代币(通过流动性桥接桥接)与发行者代币的规范表示之间的交换,或与桥接运营商合作,以增加 LP 提供流动性的财务激励。

4. 较差的桥接用户体验

流动性桥接比规范桥接有所改善,但也存在用户体验问题。除了在跨链交换中遭受滑点外,用户可能无法立即在目标链上完成桥接交易,因为桥接没有足够的池流动性来覆盖与目标链上规范代币的交易。桥接无法知道在用户的交换代币消息到达目标链时,资产对的流动性将存在多少,因此这种边缘情况大多是不可避免的。

image.png

在这种情况下,用户有两个选择(都不是最佳选择):

  • 等待桥接有足够的流动性来完成交换并提取规范代币。这是次优的,因为在桥接交易中经历的延迟,以及用户无法知道他们是否会收到与最初报价相同数量的代币,因为池流动性可能在非常短的时间内发生变化。
  • 接收桥接的专有代币表示(例如,Hop Bridge 的 hUSDT)。这是次优的,因为大多数应用程序更愿意与原生代币的规范表示(例如,由 Optimism Bridge 铸造的 opUSDT)集成,并且可能不接受用户的包装资产。

2. 通过规范第三方桥接铸造规范代币

多链 dapp 可以通过选择一个单一桥接来解决非同质化桥接代币的问题,以在每个 dapp 部署的链上铸造 dapp 代币的规范表示。与规范桥接铸造项目代币的批准表示一样,这种方法需要将远程链上铸造的代币映射到项目的主链上部署的代币合约——确保代币供应在全球范围内保持一致。桥接提供者必须跟踪代币的铸造和销毁,并确保铸造和销毁操作与主链上的代币供应保持同步。

使用单一桥接提供者为项目团队提供了更多灵活性,尤其是因为第三方桥接被激励支持在更广泛的生态系统之间的桥接,而规范桥接最多只连接到一个链。如果在应用程序部署的所有链上都存在桥接,用户可以快速进行跨链移动,而无需撤回到主链;桥接提供者只需确保在目标链 A 上铸造的代币在用户在目标链 B 上铸造代币之前被销毁,并且链 B 上的规范代币被(重新)映射到主链上的代币。

非同质化桥接代币的问题也得以消除;只要用户通过批准的桥接提供者进行桥接,他们就可以始终以 1:1 的比例与其他桥接代币进行交换。这种方法进一步解决了规范桥接模型中基于流动性的桥接问题:

  • 用户在桥接交易中不会遭受滑点,因为桥接提供者不必通过 AMM 将其表示转换为规范表示——桥接提供者的代币是每个域上桥接代币的规范表示。这些表示的价值与桥接提供者在代币的原生链上锁定的代币价值挂钩。

  • 用户在桥接时几乎没有延迟,因为桥接提供者可以在 mint() 消息到达目标链后立即铸造包装表示。

  • 开发者可以将多链代币部署的管理外包给桥接运营商,而无需担心引导 AMM 流动性或流动性提供激励计划。

image.png

一些单一桥接提供者代币的实际例子包括 LayerZero 的 Omnichain Fungible Token (OFT)、Axelar 的 Interchain Token Service (ITS)、Celer 的 xAsset 和 Multichain 的 anyAsset。所有这些例子本质上都是专有代币,并且与通过不同桥接提供者发送的同一代币的表示不兼容。这个微妙的细节突显了处理桥接代币时这种方法的一些问题。即:

  • 供应商锁定
  • 主权丧失
  • 高风险暴露于桥接故障
  • 在目标链上丧失代币的自定义特性
  • 限于供应商支持的链
  • 无法在所有所需链上保持相同的代币地址,这可能会损害用户安全或使他们容易受到网络钓鱼攻击

使用规范第三方桥接的缺点

1. 供应商锁定

选择单一桥接提供者在一个或多个链上铸造规范表示,使开发者面临供应商锁定的风险。由于每个桥接提供者铸造的专有表示仅与其基础设施(和集成的生态系统项目)兼容,单一桥接提供者模型实际上将代币发行者锁定在特定的桥接服务上,而没有未来切换到其他桥接的选项。

虽然可以切换桥接提供者,但切换成本足够高,以至于大多数项目不愿意走这条路。大致来说,假设一个开发者(我们称之为 Bob)在以太坊上发行了一个代币(BobToken),并选择 LayerZero OFT 在 Optimism、Arbitrum 和 Base 上铸造 BobToken 的规范版本。BobToken 的固定供应量为 1,000,000 个代币,而通过 LayerZero 铸造的桥接代币占流通中 BobToken 总供应量的 50%。

商业安排顺利进行,直到 Bob 决定用户更好地通过竞争桥接服务(例如 Axelar)桥接 BobToken。然而,Bob 不能简单地说:“我将切换到 Axelar ITS 在 Optimism、Base 和 Arbitrum 上铸造 BobToken 的规范表示”;由于 OFT 代币和 ITS 代币不兼容,Bob 面临着为旧用户和新用户带来麻烦的风险,因为两个 BobToken 可能不具备可替代性(重新引入我们之前描述的问题)。此外,与 LayerZero 版本的 BobToken 集成的应用程序无法接受 Axelar 版本的 BobToken 作为替代——这会在不同链上共存的 BobToken 的竞争表示中分散流动性。

为了使过渡成为可能,Bob 需要说服用户通过发送一笔交易来解开通过 LayerZero 铸造的 BobToken 的包装表示,销毁桥接的 OFT 代币并解锁以太坊上的 BobToken。用户现在可以通过在以太坊上锁定代币并在目标链上接收规范 BobToken(映射到以太坊上的代币合约供应)来切换到 BobToken 的新规范表示。这既成本高昂,又需要大量协调和运营开销,因此通常选择坚持所选提供者是最安全的选择。

然而,这使得像 Bob 这样的开发者处于一个棘手的位置,因为供应商锁定使得如果桥接提供者未能遵守协议条款、功能有限、缺乏广泛的生态系统集成、用户体验差等情况,无法切换。它还为桥接提供者提供了近乎无限的杠杆:桥接提供者可以随意做一些事情,比如限制用户桥接 BobToken 的频率、提高桥接费用,甚至审查桥接操作。在这种情况下,Bob 的手被束缚,因为与有缺陷的规范第三方桥接断绝关系的过程与维持业务关系一样复杂。

2. 协议的主权丧失

上一节关于供应商锁定的结尾部分突显了使用规范第三方桥接的另一个问题:代币发行者为了获得更大的便利和用户体验改善而放弃了对规范桥接代币的控制。以之前的例子为例:以太坊上的 BobToken 完全在 Bob 的控制之下,因为他控制着底层的 ERC-20 代币合约,但在 Optimism、Arbitrum 和 Base 上的 BobToken 由 LayerZero 控制,后者拥有发行这些区块链上 BobToken 规范表示的 OFT 合约。

虽然 Bob 可能期望 LayerZero 将规范表示与原生代币的设计保持一致,但这并不总是如此。在最坏的情况下,BobToken 在以太坊上的行为可能与在 Optimism 上的 BobToken 行为显著不同,因为桥接提供者实施了一个截然不同版本的代币合约——为协议的用户创造了问题。这个问题也可能因主要代理动态而加剧,其中协议和桥接提供者的目标和利益发生分歧。

3. 高风险暴露于桥接故障

在第一种方法中,代币通过每个链的规范桥接进行跨链桥接,代币发行者面临的风险仅限于受影响的桥接。例如,假设黑客设法攻破一个流动性桥接并铸造无限数量的包装代币而不存入抵押品。在这种情况下,它只能提取到流动性池中包装资产的最大流动性(例如,铸造 cUSDT 在 Optimism → 交换 cUSDT 为规范的 opUSDT → 通过快速桥接提取 opUSDT 到以太坊 → 兑换为以太坊上的原生 USDT)。

在第三方规范桥接模型中,代币发行者面临的风险与影响合作桥接的攻击者在远程链上铸造的代币总量相等。这是可能的,因为所有链上的每个规范表示都可以与其他链上发行的规范代币以 1:1 的比例进行交换:

假设攻击者攻破了链 B 上的第三方桥接,并在未存入抵押品的情况下铸造了 1000 个代币(该代币最初在链 A 上发行)。攻击者在链 B 上的代币未映射到主链合约,因此无法从链 A 提取。然而,它可以桥接到链 C,并将 1000 个链 B 代币交换为 1000 个链 C 代币——请记住,每个跨链代币都是兼容和可替代的,因为它们源自同一桥接服务。链 C 上的代币映射到主链合约,因为它们是由在链 A(代币的主链)上锁定代币的用户合法铸造的,允许攻击者在链 C 上销毁代币并提取主链 A 上的原生代币,并可能通过 CEX 或法币出口完成行程。

image.png

来源: https://www.chainalysis.com/blog/cross-chain-bridge-hacks-2022/

4. 丧失自定义代币特性

使用规范第三方桥接时,代币发行者通常失去实现自定义特性或代币行为的能力,这些特性或行为存在于其原始部署中。这是因为桥接提供者往往使用标准化的 ERC-20 实现合约,这些合约可能不支持原始代币实现中存在的专门功能。

常见的代币特性如投票委托(ZK)、重基机制(stETH、USDM)、转账费用能力(memecoins)、黑名单和白名单功能(USDT、USDC)、可暂停转账以及特殊铸造规则或权限,通常在通过第三方提供者桥接时被剥离,因为桥接版本通常会使用基本的 ERC-20 实现。这种功能的丧失在不同链上代币的操作方式上造成不一致,并可能破坏依赖这些自定义特性的集成。

桥接代币的标准化,虽然从桥接提供者的角度来看更简单,但实际上降低了代币的能力,并可能妨碍发行者在其应用程序的整个多链生态系统中维持一致的代币行为。这些问题可能使跨链扩展对开发者来说变得困难,并成为实现应用程序在多个链上运行梦想的障碍。

5. 支持链有限

代币发行者变得依赖于所选桥接提供者的网络覆盖和扩展计划。如果桥接提供者不支持代币发行者希望扩展的特定区块链网络,他们面临两个次优选择:

  • 等待桥接提供者为所需链添加支持,这可能需要很长时间,或者由于高昂的集成成本而永远不会发生(例如,ZKsync Era 的 EVM 不等价性导致许多 dapp 从未在其上部署)
  • 对于该特定链使用不同的桥接提供者,这重新引入了非同质化代币和流动性碎片化的问题

这种限制可能会显著影响协议的增长战略和在新兴链上接触新用户的能力。桥接提供者可能优先支持流行链,而忽视可能对代币发行者具有战略重要性的小型或新网络。

6. 跨链代币地址不一致

第三方桥接提供者可能由于其技术栈的特殊性,在每个链上部署桥接代币时使用不同的地址——例如,不支持 CREATE2。地址不一致反过来又会造成许多用户体验问题:

  • 安全风险:用户必须在每个链上验证不同的代币地址,增加了与欺诈代币交互的风险;
  • 集成复杂性:开发者必须维护每个网络的有效代币地址列表;
  • 增加网络钓鱼风险:不法分子可以更容易地用假代币欺骗用户,因为没有一致的地址可供检查。

这些缺点,加上之前讨论的供应商锁定、主权丧失和高风险暴露于桥接故障的问题,突显了依赖规范第三方桥接进行跨链代币部署的重大局限性。这种理解有助于为为什么需要像 ERC-7281 这样的替代解决方案来更全面地解决这些挑战奠定基础。

3. 通过代币发行者桥接铸造规范代币

如果开发者希望在项目代币的跨链部署中保持最大控制权,他们可以管理在远程链上铸造代币的规范表示。这被称为“信任代币发行者”,因为每个桥接表示的价值与由负责在源链上发行原始版本代币的协议锁定在代币主链上的代币相关联。

为了使这种方法有效,代币发行者必须建立基础设施来管理跨链桥接代币的铸造和销毁(同时确保全球供应通过规范映射保持同步)。代币创建者发行的代币规范表示的显著例子包括 MakerDAO 的 Teleport 和 Circle 的 跨链转移协议 (CCTP)

Teleport 允许用户通过快速路径和慢速路径在以太坊和各种以太坊 Rollup 之间移动规范 DAI。DAI 在一个链上被销毁,并在目标链上被铸造。CCTP 的功能类似,并通过销毁和铸造机制实现原生 USDC(由 Circle 发行)的跨链转移。在这两种情况下,代币发行者控制着规范表示的铸造和销毁。

这种方法为协议提供了对桥接代币的完全控制。并且它以最有效的方式解决了同一代币的非同质化表示的问题——只有一个规范版本的代币(由发行者在目标链上铸造)存在,这确保用户在代币发行者支持的每个生态系统中使用代币时都有相同的体验。

通过这种方法,应用程序还受益于消除由于在同一生态系统中漂浮的非官方桥接表示的协议代币而造成的流动性碎片化。开发者还可以构建更强大的跨链应用程序(例如,跨链交换和跨链借贷),因为规范代币发行者桥接允许在链之间高效、无缝和安全地移动代币。

然而,规范代币发行者桥接的缺点是,这种模型仅适用于有足够资本来覆盖跨链部署代币的开销并维护执行跨链铸造和销毁所需的基础设施(预言机、守护者等)的项目。这也有一个不太理想的效果,即将桥接资产的安全性与协议的安全模型紧密耦合。

这种关系(桥接版本的协议代币与协议安全性之间的关系)是友好的,因为支持规范表示的原生代币的安全性已经依赖于协议的安全性,因此用户和外部开发者不会承担新的信任假设。这对于由 Circle 和 Maker(现在是 Sky)等发行者运营的 稳定币桥接 尤其如此——用户已经信任稳定币发行者拥有足够的资产来覆盖稳定币兑换法币,因此信任稳定币桥接的安全性并不困难。

但这也代表了一个中心化的失败点——如果代币发行者的桥接基础设施受到攻击,所有在多链生态系统中流通的规范表示的价值都将面临风险。这也意味着只有中心化的保管人(例如,在 USDC 的情况下是 Circle)才能实施这种发行规范桥接代币的模型。

最后思考

正如本报告所示,跨链资产的可替代性是 Rollup 互操作性的重要组成部分,影响在不同链之间移动的体验。代币在桥接到远程链时保持可替代性的能力也影响开发者体验,因为某些用例依赖于此特性。

已经提出了不同的解决方案来解决不可替代的跨链代币问题——许多我们在本报告中已经涵盖。这包括通过原生(内置)桥接铸造规范代币、使用专用第三方桥接在多个链上铸造规范代币,以及使用协议拥有的桥接来促进代币的移动并保持可替代性。

虽然这些方法解决了特定问题,但它们未能解决所有问题,使用它们来实现跨链资产的可替代性需要一些不理想的权衡。我们能找到更好的方法吗?答案是肯定的。

ERC-7281 是一种新的跨链资产可替代性方法,减轻了现有方法相关的权衡。也被称为 xERC-20,ERC-7281 使协议能够高效地在多个链上部署规范代币,而不牺牲安全性、主权或用户体验。

ERC-7281 的独特设计允许多个(白名单)桥接在每个支持的链上铸造协议代币的规范版本,同时允许协议开发者动态调整每个桥接的铸造限制。此功能解决了与历史提案的多链规范代币相关的许多问题——包括流动性碎片化、激励对齐、用户体验问题、桥接安全风险、自定义(跨链代币)等。

我们关于跨链资产可替代性的两部分报告的下一部分也是最后一部分将详细介绍 ERC-7281,并探讨 xERC-20 代币标准如何使开发者和用户受益。我们将比较 ERC-7281 与其他多链规范代币设计,探讨 xERC-20 对多链规范代币的处理方法,并强调希望在该标准上构建的协议和开发者的考虑。

点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
2077 Research
2077 Research
https://research.2077.xyz