paint-brush
如何让跨链代币再次具有可互换性:第一部分经过@2077research
281 讀數 新歷史

如何让跨链代币再次具有可互换性:第一部分

经过 2077 Research30m2025/01/14
Read on Terminal Reader

太長; 讀書

本文探讨了跨链代币可互换性的挑战,重点关注了碎片化等问题以及在桥接期间接收不可互换的 ERC-20 代币的问题。它探讨了跨链资产可互换性的现有方法,分析了它们的有效性和局限性,以及锁定和铸造、销毁和铸造、原子交换和意图桥接等桥接机制。此外,本文还强调了 XERC-20 通过引入一个统一的框架来解决这些问题的潜力,该框架可确保桥接的 ERC-20 代币的可互换性。
featured image - 如何让跨链代币再次具有可互换性:第一部分
2077 Research HackerNoon profile picture

介绍

模块化的 Maxis 表示,加密货币的未来是一百万个(或更多)相互关联的域,用户像爱丽丝漫游仙境一样在区块链之间跳跃。如果你能在其他区块链上获得尖端技术、新颖的应用程序、质押/流动性供应的巨额回报、高性能和超低交易费用,为什么还要坚持使用一条链呢?


但在区块链之间移动比爱丽丝梦游仙境要复杂得多,这主要是由于当前区块链互操作性方法(例如跨链桥)固有的局限性。具体来说,当今的跨链桥要么不安全(桥接黑客造成的损失超过 25 亿美元),要么速度慢,要么成本高,要么功能有限——或者显示列表中的混合属性。


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

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


让我们以 USDC 为例,说明不同链上理论上相同的 ERC-20 代币之间的不可替代性。在以太坊第 2 层 (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 证明或外部仲裁)对此进行验证,并从主链上的托管中释放原始代币。


烧毁并毁掉桥梁

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

  • 然后,该桥在目标链上铸造等量的货币;

  • 对于逆向行程,桥接的代币会在目标链上被烧毁,然后在源链上铸造新的代币;

  • 这可以在实现跨链传输的同时维持代币总供应量。


原子交换

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


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


然而,新的设计(例如基于意图的桥接)已经变得非常流行。“意图”允许用户表达交易的期望结果(“将 100 USDC 兑换为 100 DAI”),而不是概述实现结果的具体步骤。意图已经成为一种强大的用户体验解锁,因为它们极大地简化了人们的链上体验,并使加密货币更易于使用,尤其是与链抽象解决方案结合使用时。


跨链意图允许用户在链之间转移代币,而无需担心桥接的底层复杂性。在基于意图的桥接中,用户在源链上存入资金,并在目标链上指定他们想要的结果(他们的“意图”)。称为“填充器”或“解析器”的专门操作员可以通过提前将请求的代币发送给目标链上的用户来实现此意图。然后,操作员证明转移已发生,以索取源链上锁定的资金作为补偿。


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

我们可以将每个包装代币(无论是通过传统桥接还是基于意图的桥接创建)视为桥接运营商的 IOU,承诺从托管合约中释放一定数量的底层代币。这些包装资产的价值与桥接运营商(感知)处理持有者提取托管在代币主链上的原生代币请求的能力直接相关。


有权在源链上锁定底层代币并在目标链上铸造其包装代币的桥接器可确保代币的总供应量保持不变。对于一个单位的底层代币,会铸造一个单位的相应包装代币,反之亦然。如果应用程序接受包装代币作为交换媒介或使用包装资产作为货币,则应用程序的开发人员和用户会信任桥接器提供商,以确保支持包装代币的“真实”资产的安全。

我们为什么需要桥梁?

通过创建资产表示的桥接器,可以与远程链上的资产合成版本进行交易,这是一项强大的功能,它使开发人员和用户都能利用跨链互操作性的优势。这些优势包括获得更多流动性、接触新用户以及为用户提供灵活性(用户可以毫无阻碍地与来自不同链的喜爱应用程序进行交互)。


为了更好地理解这在实践中是如何运作的,以及为什么它对开发人员和用户都很重要,让我们使用一个名为 BobDEX 的虚构去中心化交易所来研究一个具体的例子。此示例将演示包装代币如何实现跨链扩展,同时强调可能出现的好处和潜在的复杂性:


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


BobDEX 的市场份额已大幅增长,但以太坊 L1 的限制阻碍了进一步增长。例如,由于高昂的 gas 费用和交易延迟,一些用户不想在以太坊上使用 BobDEX;同样,其他用户希望了解 $BOB 代币的价格,而不必在以太坊上持有原生 $BOB 代币。


为了解决这个问题,Bob 在 Arbitrum 上部署了一个 BobDEX 版本(一种低费用、高吞吐量的第 2 层 (L2) 汇总),并通过 Arbitrum-Ethereum 桥在 L2 上部署了 BOB 代币 (wBOB) 的包装版本。Arbitrum 上的 BobDEX 与以太坊上的 BobDEX 相同,只是它使用 wBOB(而不是原生 BOB 代币)进行 LP 奖励和治理。


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


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

  1. Bob 可以吸引更多用户,尤其是那些希望在 BobDEX 上交易时获得较低 gas 费和快速交易确认的用户

  2. LP 可以通过向 BobDEX 提供流动性来获得奖励,而无需处理以太坊的高昂 gas 成本和较长的确认时间

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


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


为 AliceLend 提供流动性的贷方肯定会收到存款:如果用户拖欠贷款,AliceLend 会自动拍卖作为抵押品存入的 wBOB 代币以偿还贷方。在这种情况下,清算 wBOB 抵押品的买家将担任 BobDEX 上的 LP 角色,并保证 wBOB 代币可以 1:1 兑换原始 BOB 代币。


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

为什么桥接代币会变得不可替代?

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


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


第二个挑战更加微妙,源自桥接代币的性质:桥接提供商在同一远程链上铸造的两种代币不能以 1:1 的比例兑换成另一种代币。我们可以使用另一个示例,即两个用户尝试交换通过不同路由桥接的代币,以说明跨链移动代币相关的问题的这一方面:

  • Alice 通过规范的 Arbitrum 桥将 USDC 从以太坊桥接到 Arbitrum,并在 Arbitrum 上收到 200 USDC.e,而 Bob 通过 Axelar 将 USDC 桥接到 Arbitrum,并在 Arbitrum 上收到 200 axlUSDC。Alice 和 Bob 达成协议,Alice 将 200 USDC 发送给 Bob(以换取 200 USDT),以便 Bob 可以将 400 USDC 提取到以太坊。
  • Bob 尝试通过 axlUSDC 提取 400 USDC,但只收到 200 USDC,同时收到一条消息,说明桥接器只能向 Bob 提供 200 USDC。Bob 感到困惑,因为包装的 ERC-20 代币应该是“可替代的”,并且不应出现差异,从而阻止任何人在任何应用程序上以 1:1 交换 ERC-20 代币。
  • Bob 从跨链桥接中吸取了惨痛教训:“可替代的 ERC-20 代币”并不总是意味着“你可以将此代币以 1:1 的价格与其他 ERC-20 代币在应用程序之间进行交换”。Bob 试图与 Alice 做有风险的交易(因为 Alice 可能不会归还代币),结果却大错特错。

鲍勃在交换后变得粗暴

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


因此,每个桥接代币的价值都与负责在主链上持有存款并在目标链上铸造代表的桥接提供商挂钩;Bob 的桥接提供商只能向 Bob 支付 200 USDC,因为这是其从存款中可以支付的金额;Alice 的 200 USDC 无法通过 Bob 的桥接提供商提取,因为它从未收到存款或向 Alice 发出 IOU。Alice 必须从以太坊上的 Arbitrum 中提取她锁定的 USDC 并通过 Bob 的桥接提供商进行桥接,然后 Bob 才能访问剩余的代币。


Bob 和 Alice 的困境指出了跨域桥接的一个问题,因为竞争桥接提供商会铸造出多个不可替代的底层资产表示。同一资产的不同 ERC-20 表示的另一个问题是,它们无法在单个流动性池中进行交易。


用前面的例子来说,如果我们在链上有 axlUSDC 和 USDC.e,并且想将它们兑换成 ETH,反之亦然,那么我们必须部署两个流动性池——ETH/axlUSDC 和 ETH/USDC.e。这会导致所谓的“流动性碎片化”问题——由于有多个池子基本上适合同一交易对,因此交易池的流动性比本来可以拥有的要小。


解决方案是让单一“规范”版本的代币在目标链上流通,这样 Bob 和 Alice 就可以交换代币,而无需每个人都从源链的桥中提款。每条链都有一个规范代币也使开发人员受益,因为用户可以在生态系统之间快速移动,而无需处理代币流动性问题。


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

跨不同链实现规范代币

为每条链创建规范代币并非易事,存在多种选择,各有优缺点。在为每条链创建规范代币时,我们通常需要考虑谁可以相信 IOU 的存在,以支持特定代币的价值。


假设你是一个代币的创建者,并且你希望它能够在不同的链之间使用和转移,而不会遇到可替代性问题;你有四个选择:

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


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


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

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

如果某条链有规范(已铭刻)桥接,您可以为想要从原生链桥接的用户分配铸造协议代币表示的权利。通过链的规范桥接(存款和取款)路由的交易通常由链的验证器集进行验证,这提供了更强有力的保证,即主链上的存款可靠地支持所有铸造的表示。


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


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


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


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


然而,侧链桥也与 Rollup 规范桥存在一个共同的弱点:用户只能在一对相连的链之间进行桥接。他们无法使用规范桥接器桥接到其他区块链。例如,目前您无法使用 Arbitrum 桥接器将 Arbitrum 桥接到 Optimism,也无法通过 Polygon PoS 桥接器将 Polygon 桥接到 Avalanche。


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

依靠 Rollup 的原生桥来移动规范代币会带来一些问题,例如流动性差和资产流动延迟。协议通过与流动性桥合作来解决此问题,以促进快速提款和低延迟桥接*。

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


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


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


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


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

  • 在源链上锁定原生代币
  • 目标链上原生代币的 Mint 桥表示
  • 通过 AMM 池将桥接表示与目标链上的规范表示进行交换
  • 向用户发送规范令牌


所有流动性桥梁(Across、Celer、Hop、Stargate 等)的流程都类似。然而,它通常从最终用户(尤其是由解算器/填充器)中抽象出来,尽管涉及许多活动部件,但感觉就像是一笔单一交易。


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


流动性桥接的优点在于它解决了 rollup 桥接中的延迟问题;例如,Hop 允许被称为“Bonders”的专门机构在 L2 上证明用户提款交易的有效性,并承担从 rollup 的 L1 桥中提款的成本。每个 Bonder 都会为 L2 链运行一个完整节点,并且可以确定用户的退出交易最终是否会在 L1 上得到确认,从而降低用户发起欺诈性提款并给 Bonder 造成损失的风险。


与传统桥接不同,流动性桥接还使用户能够在更多链之间移动;例如,Hop 允许用户在 Arbitrum 和 Optimism 之间进行桥接,而无需先提现到以太坊。与快速 L2→L1 桥接一样,快速 L2→L2 桥接要求 Bonders 为源 L2 链运行完整节点以确认提现,然后再为目标 L2 链上的用户支付铸造代币的成本。这使得 rollup 之间的可组合性更强,并大大改善了用户体验,因为用户可以毫无问题地跨 rollup 移动代币。


但是流动性桥接也有缺点,会影响使用链的固定桥在 L2/L1 链上铸造代币的规范表示的效用。我们将在下一节讨论基于流动性的桥接的缺点:

流动性桥梁的缺点

1. 滑点

滑点是指与 AMM 交互时预期收到的代币数量与实际收到的代币数量之间的差异。滑点的发生是因为 AMM 根据池中的当前流动性对掉期进行定价——定价使得掉期完成后,池中每种资产的余额保持平衡,这可能会在用户发起交易和执行交易之间发生变化。


桥接资产的流动性低也会增加滑点;如果池子没有足够的流动性来重新平衡池子的一侧,大额交易可能会大幅改变价格,导致用户以更高的价格执行掉期交易。套利者有望帮助纠正交易相同资产的池子之间的差异,但可能会对涉及交易活动/价值较低的代币的套利交易感到沮丧。


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


桥接聚合器等应用程序(无法知道流动性桥是否有足够的流动性来覆盖目标链上的掉期而不会出现滑点)通过指定最大滑点容忍度并使用该容忍度来通知提供给用户的报价来解决该问题。虽然这可以防止交易回滚,但用户总是会损失一定比例的桥接代币——无论桥接的 AMM 池中的流动性如何。

2. 流动性限制

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

  • 如果流动性下降得太低,桥梁操作可能会完全停止,从而阻止用户完成预期的转账;
  • 用户可能被迫将大额转账分成小额交易,以避免耗尽资金池流动性;
  • 在市场波动较大或压力较大的时期,流动性提供者可能会退出流动性池,而这正是最需要桥梁功能的时候;
  • 新的代币对的引导变得尤为具有挑战性,因为需要大量的初始流动性才能使桥梁正常运行。


流动性要求造成了一种循环依赖:桥梁需要大量流动性才能可靠地运行,但吸引流动性提供者则需要展示桥梁的持续使用和费用产生。这种先有鸡还是先有蛋的问题对于新代币或交易频率较低的代币尤其严重,它们可能难以在多条链上保持足够的流动性。

3. 激励机制不匹配

流动性桥梁的作用在于,它可以覆盖从桥接表示到目标链上的规范代币的交换,而不会让用户产生过多的滑点;从用户的角度来看,与桥梁交互的 gas 成本也决定了流动性桥梁的价值。因此,发行代币的桥梁聚合器和项目团队会根据流动性量和交易成本对桥梁进行优先排序。


虽然这可以确保桥接项目代币或使用桥接聚合器跨链发送代币的用户拥有更好的用户体验,但根据流动性选择桥接器会使无法在流动性提供者 (LP) 激励上花钱的桥接器处于不利地位。此外,根据纯交易费选择桥接器会使竞争偏向于采用中心化方法来降低运营成本并可以对桥接交易收取较低费用的桥接器。在这两种情况下,桥接器都没有在可以说是最重要的指标上竞争:安全性。

基于流动性的桥梁也不利于交易活动较少的长尾资产(这使得它们不太可能吸引流动性提供者)。长尾代币(或桥接量较低的新代币)的发行者要么必须建立 AMM 池并引导流动性以覆盖原生代币(通过流动性桥梁桥接)与发行者代币的规范表示之间的交换,要么与桥梁运营商合作,增加对流动性提供者为该资产提供流动性的财务激励。
4. 糟糕的桥接用户体验

流动性桥是对标准桥的改进,但并非没有用户体验问题。除了跨链交换的滑点之外,用户可能无法立即在目标链上完成桥接交易,因为桥没有足够的池流动性来覆盖目标链上与标准代币的交易。当用户的代币交换消息到达目标链时,桥无法知道资产对的流动性有多大,因此这种极端情况几乎是不可避免的。


在这种情况下,用户有两种选择(均不是最优的):

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

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

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


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


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

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

  • 用户在桥接时几乎不会遇到任何延迟,因为桥接提供商可以在 mint() 消息到达目的地后立即在目标链上铸造包装的表示。

  • 开发人员可以将多链代币部署管理外包给桥梁运营商,而不必担心引导 AMM 流动性或流动性提供激励计划。


目前存在的单桥接提供商代币的一些示例包括 LayerZero 的 Omnichain 同质化代币 (OFT)、Axelar 的 Interchain 代币服务 (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 在 BobToken 的竞争表示共存的各种链上的流动性。


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


然而,这让 Bob 这样的开发者陷入了困境,因为如果桥接提供商未能遵守协议条款、功能套件有限、缺乏广泛的生态系统集成、用户体验不佳等,供应商锁定将使开发者无法切换。它还为桥接提供了近乎无限的杠杆作用:桥接提供商可以做任意的事情,比如在没有明确理由的情况下限制桥接 BobToken 的用户速率、提高桥接费用,甚至审查桥接操作。在这种情况下,Bob 束手无策,因为彻底摆脱有缺陷的规范第三方桥接与保持业务关系一样复杂。

2. 协议主权的丧失

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


虽然 Bob 可能希望 LayerZero 将规范表示与原生代币的原始设计保持一致,但情况可能并非总是如此。在最坏的情况下,BobToken 在以太坊上的行为可能与 BobToken 在 Optimism 上的行为有很大不同,因为桥接提供商实施了完全不同的代币合约版本——这给协议的用户带来了问题。这个问题也可能因委托代理动态而加剧,因为协议和桥接提供商的目标和利益存在分歧。

3. 桥梁倒塌风险高

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


在第三方规范桥模型中,对代币发行者而言,影响合作伙伴桥的漏洞所造成的风险相当于攻击者在受影响桥部署的远程链上铸造的代币总量。这是可能的,因为所有链上的每个规范表示都可以 1:1 地兑换为在其他链上发行的规范代币:


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


来源: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 允许用户通过快速路径和慢速路径操作在以太坊和各种以太坊汇总之间移动规范 DAI。DAI 在一条链上被销毁,并在目标链上铸造。CCTP 的功能类似,并通过销毁和铸造机制实现原生 USDC(由 Circle 发行)的跨链转移。在这两种情况下,代币发行者都控制代币规范表示的铸造和销毁。


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


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


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


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


但它也代表着一个中心故障点——如果代币发行者的桥接基础设施受到损害,那么在多链生态系统中流通的所有规范表示的价值都将受到威胁。这也意味着只有中心化的托管人(例如 USDC 中的 Circle)才能实现这种发行规范桥接代币的模型。

最后的想法

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


为解决不可替代的跨链代币问题,人们提出了不同的解决方案——其中许多我们在本报告中进行了介绍。这包括通过原生(已实现)桥铸造规范代币、使用专用的第三方桥铸造跨多条链的规范代币,以及使用协议拥有的桥来促进代币的移动并保持可替代性。


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

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


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


我们关于跨链资产可互换性的两部分报告的下一部分(也是最后一部分)将详细介绍 ERC-7281,并探讨 xERC-20 代币标准如何使开发人员和用户受益。我们将比较 ERC-7281 与其他多链规范代币的设计,探索 xERC-20 的多链规范代币方法,并重点介绍希望在该标准基础上构建的协议和开发人员的注意事项。


敬请关注!


作者注:本文版本最初发布于此处