作者:2077Research
编译:Glendon,TechubNews
如果你尚未阅读《如何使跨链代币重新具有可互换性》系列的第一部分,建议优先查阅——该部分详细分析了跨链代币失去可互换性的根本原因及其引发的系统性挑战。在第二部分中,我们将聚焦ERC-7281这一创新标准,该方案通过重构跨链代币转移机制,增强可靠性,并为发行方提供更精细的治理权限。
前文已系统探讨了多种解决跨链代币可互换性问题的技术路径,并解决非原生链上流通的原生代币的非标准版本,所带来的流动性碎片化和用户体验不佳的问题,具体包括:
通过标准Rollup/侧链桥接协议在目标链上铸造原生代币的标准版本;
依托第三方跨链服务在目标链上生成原生代币的标准版本;
由代币发行方自主运营的标准桥接服务,在目标链上实现标准跨链代币铸造。
上述方案均有其优缺点。因此,ERC-7281(又称xERC-20)的设计哲学在于融合各个方案的优势,为期望实现跨链部署代币的协议构建更全面、高效且可扩展的解决方案,并在保障安全性、主权完整与用户体验的情况下取得突破性平衡。
什么是ERC-7281?ERC-7281:主权跨链代币是一项提案,旨在创建代币的标准版本,使它们能够与不同跨链协议铸造的代币实现兼容与互换。该标准通过扩展ERC-20接口引入以下核心功能:
铸造和销毁标准ERC-20代币的功能;
代币持有者的治理权限:1.授权指定跨链桥提供商执行跨链转移时的代币铸造/销毁操作;2.为每个授权的跨链桥提供商设置动态铸造/销毁限额(例如对中心化跨链设置较小的限制,为更安全的协议设置更高的限制)。
鉴于ERC-7281与ERC-20代币标准存在细微的技术差异,标准制定者将其命名为“xERC-20”。想要系统性了解ERC-20代币标准基础架构的读者,可参阅OpenZeppelin发布的技术指南。
本质上,每个ERC-20代币合约通过实现标准接口管理全局代币供应量,记录地址持仓数据,同时包含代币授权管理、流通总量查询、地址余额获取等基础功能。
ERC-7281代币标准在ERC-20标准之上新增了一项可选的“Lockbox”合约模块——作为封装合约(功能类似于WETH合约),Lockbox合约可以通过熟悉的铸造和销毁机制将传统ERC-20代币转换为xERC-20代币版本。这一设计也使得ERC-7281能够向后兼容缺乏销毁/铸造接口且不可升级的现有ERC-20代币合约。
根据第一部分的分析框架,ERC-7281可归类为一种“信任代币发行方+信任(获批的)跨链桥提供商”的跨链代币铸造范式。其核心优势在于:
跨链部署的ERC-7281代币完全由发行方控制(区别于多数需让渡主权的跨链代币方案)
发行方仍然面临获批跨链桥遭遇安全事故的风险,但他们可通过手动选择和限制授权跨链桥提供商来进行管理。
本报告重点探讨的关键突破在于:代币发行方可对指定跨链桥提供商的铸造/销毁额度实施动态调控,从而精确校准跨链安全事件的风险暴露。此外,ERC-7281支持多跨链桥提供商白名单机制,允许不同提供商跨链铸造同一标准代币,有效降低发行方对单个提供商的路径依赖。
这两个功能使ERC-7281相较于传统方法有了显著改进,有助于促进协议代币的跨链桥接,并对用户、互操作性基础设施提供商(尤其是聚合器)和应用程序开发人员产生积极的二阶效应。下文将深入解析技术规范细节,并系统评估实施ERC-7281的潜在优势与缺点。
ERC-7281解析:主权跨链代币用户代币铸造与销毁机制根据ERC-7281标准,项目需部署符合“IXERC20接口”的新型ERC20兼容代币合约。跨链桥提供商在源链上销毁用户存入的代币后,可在目标链为其铸造等量代币。铸造过程中,系统会检查代币数量是否超出该桥的铸造限额,若通过验证则更新代币总供应量及跨链桥铸造限额。
对于现有的ERC-20代币,我们需采用Lockbox逻辑:跨链桥提供商将用户存入的ERC-20代币转移至Lockbox合约完成封装,转化为xERC-20代币。Lockbox随后授权提供商铸造等量的xERC-20代币。
目标链上的桥铸造的xERC-20代币使用“burn()函数”在源链上销毁,此过程确保代币销毁数量不超过桥的销毁限制。桥的传输层将销毁消息中继到目标链,目标链的跨链桥合约验证消息后并向该链上的用户地址铸造等量的xERC-20代币。
反之,为了将代币跨链回源链,跨链桥提供商会在目标链上销毁xERC-20代币,并提供用户的地址和代币数量。销毁收据由传输层中继到源链。如果销毁消息得到验证,跨链桥提供商会在源链上为用户执行xERC-20代币的铸造与销毁操作。待代币合约确认销毁凭证,用户即可取回原始ERC-20代币。源链销毁操作同步减少代币总供应量及跨链桥销毁限额。
重点是,xERC-20合约在技术层面支持无需凭证验证的铸造操作。虽然本文描述的是标准验证流程,但代币发行方可自主选择是否将未实施跨链消息验证或采用新型验证机制的跨链桥纳入白名单。最终决策权取决于发行方的风险承受能力。
代币铸造与销毁速率限制机制setBridgeLimits函数是一个受保护的函数,仅代币合约所有者可调用。此函数允许设置桥接合约的地址,并指定跨链桥可以为用户铸造限制(mintingLimit)和销毁限制(burningLimit)的最大代币数量。所有者可动态调整限制,灵活应对跨链桥提供商的安全态势变化。例如:
当发现跨链桥的基础设施存在漏洞时,可调低mintingLimit以控制风险敞口;
相反,若跨链桥方完成安全升级,则可提升铸造限额。
xERC-20标准还包括检查获准处理代币的跨链桥的销毁和铸造限制的功能。“mintingMaxLimitOf”返回跨链桥可以铸造的最大代币数量,而“burningMaxLimit”则返回跨链桥在指定时间内可以销毁的最大代币数量。此外,这些函数还显示跨链桥在达到预设限制之前可以销毁和铸造的剩余代币数量。
该设计对跨链桥聚合器至关重要——若某跨链桥在源链/目标链触及销毁或铸造限额,将导致交易延迟甚至失败。因此,聚合器倾向于将请求路由到可用限额充足且支持目标交易量的跨链桥上。
速率限制参数解析xERC-20代币接口标准中定义的“Bridge”结构体包含“burningParams”与“mintingParams”(xERC-20代币速率限制函数的参数控制桥接器在预定义时间内可以销毁和铸造多少个代币)。“maxLimit”定义代币铸造和销毁的最大限制,并以预定义的速率(ratePerSecond)每秒增加。
此处我们要解决一个可能引起混淆的问题:“maxLimit”(为销毁和铸造限制设置)是在特定时间范围内对铸造和销毁操作的限制,即在预设时间窗口内根据预定义阈值限制铸造和销毁的速率限制。“currentLimit”定义跨链桥可以铸造或销毁多少,并以预定义的速率增加。相比之下,“maxLimit”定义跨链桥每天可以铸造或销毁代币的数量。
销毁和铸造参数主要与代币所有者相关(与跨链桥提供商关系较小)。但是,最大和当前限制参数对于用户和跨链桥提供商而言都是重要的考虑因素。例如,当前限制可能会影响用户在多大程度上可以放心地使用跨链协议桥接,而不会在目标链接收xERC-20代币时遇到延迟。
xERC-20Lockbox初始的ERC-20代币未指定增加和减少代币供应的功能(早期代币经济学多采用固定总量模型)。因此,并非每个ERC-20代币都具有铸造和销毁功能。由于ERC-7281使用了当前大多数跨链桥青睐的铸造和销毁机制,所以需要通过Lockbox与ERC-20代币实现向后兼容。
在原始标准中(即项目部署实现IXERC20接口的新代币合约),跨链桥提供商只需调用mint()即可在目标链上为用户铸造代币(在源链上锁定存款后)。Lockbox合约借鉴WETH封装合约设计,它实现了一个deposit()函数,用于将相应的ERC-20代币存入Lockbox,并实现了一个withdraw()函数,用于跨链桥提供商在远程链上销毁包装代币后解锁ERC-20代币。
这一标准中重点介绍的前两种错误类型(“IXERC-20Lockbox_NotNative”和“IXERC-20Lockbox_Native”)发生在用户尝试将代币存入错误的Lockbox合约时。Lockbox可以是原生的(也可以是非原生的),具体取决于它支持的代币类型。
原生Lockbox保管原生代币,即用于向验证者支付Gas费用的代币。具有原生Lockbox以将其包装成xERC-20代币的代币典型示例是ETH:将ETH包装成xERC-20代币需要调用Lockbox的depositNative()函数并存入ETH以接收与ERC7281兼容的ETH代币版本。
非原生Lockbox可以保管ERC-20代币,如USDC、DAI、WETH、USDT等。例如,要将USDC铸造为xERC-20代币,用户需要在锁定USDC后在Lockbox合约上调用deposit()。使用ETH调用deposit()会导致这些资金被永久锁定,因为非原生Lockbox合约只能包装和解包ERC-20代币。此外,使用ERC-20代币调用depositNative()会产生类似的结果,因为原生Lockbox合约旨在使用原生代币,而不是ERC-20代币。
如此一来,通过将标准的ERC-20代币包装成具有铸币/销毁支持的xERC-20代币,Lockbox为标准提供了重要的兼容性层。但是,在某些情况下,例如将其他跨链解决方案集成到xERC-20中,仅使用Lockbox并返回包装的代币是不可行的。由于这个原因,项目可能会实施适配器合约。
适配器合约如果跨链协议无法识别xERC‑20代币固有的操作(铸造/销毁、事件日志记录等),则应用层可以构建适配器合约。这些合约可充当自动包装器和解包器,有效地将ERC‑20批准+调用(call)行为转换为xERC‑20标准所需的更细致的铸造/销毁方案。
这是必要的,因为许多跨链协议(例如Chainlink的CCIP)仍然针对传统的ERC‑20行为进行了优化。适配器合约可以通过实现以下逻辑来弥补这种兼容性差距:它将代币存入Lockbox以在源链上生成xERC‑20版本,然后在目标链上收到消息后,触发退出机制以恢复为标准资产。
这一流程确保了用户最终收到的是一致的标准代币,而不会受到xERC-20底层支持的封装机制的影响。这样一来,适配器可以使协议与非xERC-20标准的跨链桥无缝集成,并增加它们支持的可互操作解决方案的范围。
为何选择ERC-7281?主权跨链代币标准案例从总体上看,ERC-7281有四大目标:
1.可互换性:将代币从其原生链桥接到另一条(L1/L2)链的用户,应始终在目标链上收到跨链代币的标准版本。出于前面解释的原因(例如流动性分散和代币可组合性差),在非原生链中流通同一代币的多个非可互换版本是有问题的。创建ERC-20标准的最初愿景是确保以太坊上的代币,在应用和以太坊基础设施之间具有可互换性和无缝互操作性。然而,在采用以rollup为中心的扩展路线图后,出现了缺乏原子可组合性的问题,并且许多不同域的创建降低了这些可互换性属性。xERC-20允许将各种跨rollup桥的流动性聚合为统一的多rollup代币标准,从而恢复以太坊的初始愿景。
2.安全性:为了降低交易对手风险,代币发行方需具备自主选择权,基于对跨链桥提供商安全基础设施的评估,择优接入多个提供商。同时,发行方需建立有效风险隔离机制——当部分桥接服务商遭遇安全事件时,其影响范围应被严格限制,避免单一攻击导致协议总锁仓价值(TVL)全面崩盘。
3.零流动性依赖的跨链代币冷启动:协议DAO不应被迫将大量(资金)资源用于引导跨链代币的流动性,作为多链扩展计划的一部分。基于流动性的跨链不仅不利于用户体验,而且随着支持链数量的迅速增加,项目方在流动性提供激励方面的支出可能变得不可行。
4.代币发行方的主权控制:发行方应继续控制在非原生链上铸造的协议代币的标准版本。解决不可替代跨链代币的问题,不应以让渡代币控制权为代价(尤其是控制总供应量,配置铸造和销毁机制等管理方面)。
接下来,我们将进一步扩展这些目标,以了解ERC-7281为协议和社区带来了哪些好处。
ERC-7281的优势改善用户体验并消除流动性碎片化ERC-7281解决了各种路径依赖问题。路径依赖可以是特定于链的(例如,从以太坊跨链到Arbitrum再跨链到Optimism的ETH,与从以太坊跨链到Optimism再跨链到Arbitrum的ETH存在差异),或特定于桥的(例如,通过Celer从以太坊跨链到Optimism的ETH,与通过Connext从以太坊跨链到Optimism的ETH也不相同)。
路径依赖虽具有安全价值,但严重损害跨链用户体验与可组合性。以跨链DEX场景为例,用户若需向Optimism和Arbitrum的流动性池同时注资,将因链间资产表征差异(如opETH与arbETH)而无法实现自动化操作。
ERC-7281通过引入xERC-20代币彻底消除该问题。无论用户跨链次数或使用何种跨链桥提供商,xERC-20始终保持可互换特性。例如:
用户无需撤回至以太坊链,即可将Arbitrum的封装USDT转移至Optimism;
跨链桥提供商销毁Arbitrum链的xERC-20代币后,可以在Optimism铸造等量代币;
目标链代币价值始终锚定Lockbox内的原生资产储备,维持1:1刚性兑付。
值得注意的是,ERC-7281实现了类似CircleCCTP(跨链传输协议)的标准代币部署优势,却无需协议方集中托管跨链资产。其核心价值在于:
流动性聚合:围绕协议代币的标准版本形成统一市场,提升DeFi应用效用;
运营成本削减:避免为同一资产的不同版本创建分割化市场。
强化代币发行方主权控制xERC-20被称为“主权跨链代币”,因为代币发行方不必锁定使用特定选项来铸造代币的标准版本,并在跨链部署中保留对跨链代币设计和管理的控制权。ERC-7281是“通过第三方桥铸造标准代币”与“通过代币发行方控制的桥铸造标准代币”之间的混合体,它将主权、用户体验和去中心化相结合。
使用ERC-7281跨链部署代币的项目,可以通过多个桥铸造原生代币的标准版本,而不会遇到同一原生资产的不可互换包装版本,导致用户体验受损的问题。此类项目还保留了与代币发行者类似的对代币跨链部署的控制级别,代币发行者运行内部基础设施来管理域之间标准代币的转移,因为xERC-20代币合约和Lockbox(跨链桥用于为用户锁定、铸造和销毁代币)由项目部署和控制。
这一被低估的功能,在某一知名项目在其主链上发行原生代币的情况下非常有用,尤其是当来自其他生态系统的用户出于不同原因希望接触该代币,但不想在其原生链上持有时。
在这一情况下,该项目没有能力或意愿为每条链运行内部跨链基础设施,以确保跨链代币之间1:1的兼容性,也不想将其代币的控制权交给不一定与协议及其社区保持一致的第三方。而在实施跨链治理时,这种情况会成为一个考虑因素,允许使用跨链代币进行投票,同时在原生链上进行投票统计;拥有跨链代币控制权的非一致跨链桥提供商成为协议治理的瓶颈。
出于上述原因,收益耕作协议Beefy采用了xERC-20标准。正如该项目的跨链桥文档所述,ERC-7281为该项目提供了更多跨链代币选项(在主要跨链桥合作伙伴遭受黑客攻击后,这一选项变得必不可少),并提供了对跨链机制设计的更精细控制。在Beefy的案例中,ERC-7281的白名单功能使该协议能够选择各种跨链合作伙伴,并在桥接mooBIFI代币时为用户提供在速度、去中心化、成本和安全性方面进行优化的不同选项。
激励机制重新调整,促进开放竞争和安全基于流动性的桥通常青睐于有财务能力为流动性激励提供资金的项目——由于代币发行方希望在流动性提供者(LP)激励上花费较少,并提供不错的跨链桥用户体验,因此流动性对于使用标准L1/L2桥接的协议来说成为最关键的因素。这也延伸到跨链桥聚合器对跨链桥提供商的选择,可以说这使得新的跨链服务(即使那些拥有安全基础设施的服务)更难与更成熟的跨链协议竞争。
ERC-7281通过消除基于流动性的跨链需求来解决这个问题。无需铸造和将非标准代币兑换为标准代币,任何规模的桥都可以被批准在目标链上铸造项目的代币。由于代币发行方希望最大限度地减少跨链失败的风险,因此更多协议可能会开始更加关注跨链桥的安全性设计,而不是优先关注流动性。
这激励了开放竞争,因为它变成了“让最安全的桥获胜”而不是“让流动性最强的桥获胜”的情况;这种开放竞争可以采取跨链桥在流动性/安全性之外的其他功能上进行竞争的形式(例如费用、API/SDK、应用集成等)。这些功能从一开始就更容易融入应用程序,因为它们主要取决于开发团队的专业知识;相比之下,流动性和跨链数量更难启动,需要业务发展、资金、行业联系、营销等多种因素的结合。
为代币发行方提供更好的风险管理ERC-7281引入了代币铸造和销毁的可配置速率限制,这极大改善了与非原生链上铸造标准代币的第三方跨链协议合作的风险状况。若合作跨链桥提供商遭遇黑客攻击或入侵,攻击者所能造成的最大损害相当于受损桥的限制额度。如果代币发行者谨慎选择速率限制参数,对某一跨链桥的孤立攻击,对于协议偿付能力的影响可能降至最低。
此外,为每个跨链桥配置速率限制还可以改善协议DAO的风险评估过程。采用ERC-7281使风险评估更具动态性。项目仍需对跨链桥提供商进行尽职调查,以选择合适的速率限制属性;然而,风险评估时间线可以缩短。项目方无需花费数月时间分析多个跨链桥以选择一个,而是可以选择多个跨链桥提供商,并根据安全评估设置不同的铸造限制。然后,代币发行方可以进行安全审查,以确定是否增加或减少选定跨链桥合作伙伴的铸造限制,或从某一跨链桥撤回铸造权(例如,作为对黑客攻击或漏洞披露的回应)。
ERC-7281还降低了那些希望采用跨链桥安全技术,但又不愿完全采用某项技术的项目所面临的阻碍,除非该技术经过实战测试并被社区严格审查(即创新者的困境)。假设跨链桥提供商提出了一种据称可以大大改善安全保障的新基础设施。在这种情况下,协议可以通过为桥分配有限的铸币权并随着对拟议系统设计信心的增强,而逐步增加桥的铸币限额来进行“试水”。
就像消除流动性相关的担忧一样,在分配铸币权之前,消除协议对跨链桥技术堆栈100%信任的需要,可以在新进入者和老玩家之间创造平等的竞争——老玩家有动力迭代更好的安全方法,因为代币发行方现在可以灵活地撤回铸币权并重新分配给较小的项目,而后者则表现出对安全和去中心化的更高承诺。
同时,这也消除了与第三方跨链桥合作的协议面临的另一个风险因素:尽管跨链桥安全中的漏洞和问题,被披露和发现的速度很快,但选定的跨链桥提供商仍可能停止在安全方面进行创新,因为它知道代币发行方无法执行惩罚措施(例如,快速迁移到另一个跨链桥提供商),执行此类活动的难度很大。
提升生态系统之间的可组合性由于基于流动性的桥接定价不可预测,今天构建需要将代币通过任意数量的链进行路由的复杂应用工作流程十分困难。例如,一个从以太坊(Ethereum)→Linea→Base的桥接聚合器有两个选择:
由于基于流动性的跨链桥定价不可预测,如今构建需要通过任意数量的链路由代币的复杂应用工作流程非常困难。例如,从以太坊→Linea→Base的跨链桥聚合器有两个选项:
设置滑点容忍参数,并根据用户在每条链上将收到的最小代币数量(取决于跨链消息到达每层时可用的流动性数量)执行跨链路由定价;
不设置滑点容忍参数,如果一条或多条链上收到的代币数量低于预期数量,则创建逻辑以获取链上流动性(例如通过DEX)。
相比之下,通过检查允许铸造特定代币的跨链桥的mintingLimit和burningLimit,桥聚合器可以预先知道跨链交易中每个域中应该有多少代币。
诚然,在交易广播和交易到达某一域之间的时间段内,跨链桥可能会达到maxLimit——这意味着用户无法在目标链上收到标准代币。但出于以下原因,ERC-7281在这方面仍然是一种改进:
如果跨链桥提供商在交易进行过程中达到mintingLimit,则跨链交易将被暂停,并在速率限制参数调整后重试。与当今的流动性桥不同,用户不会收到标准代币的专有包装版本。
跨链桥聚合器对于跨链交易何时执行,以及预期代币数量具有更高的可预测性。由于mintingLimit和burningLimit配置为使用区块作为时间度量(如速率限制参数部分所示),因此很容易计算跨链桥何时会再次开始铸造和销毁代币;相较之下,预测跨链桥中的流动性何时会增加则无异于玩“俄罗斯轮盘赌”。
流动性的不可预测变化也意味着重试跨链交易定价的不可预测性。假设一个跨链桥聚合器(或另一个应用)根据跨链桥流动性池中代币对的当前价格(此价格基于总池流动性)对跨链交换进行报价。然而,由于池流动性急剧下降,交易无法执行。假设交易被暂停并在稍后重试。在这种情况下,应用开发人员无法知道先前的报价是否仍然准确,或者流动性是否会达到用户首次提交交易时的相同水平。
而跨链xERC-20代币不受流动性变动的影响,因此用户可以确信跨链交易不会产生滑点——即使它们不会立即执行。
跨链桥聚合器并不是唯一从这种可组合性改进中受益的聚合器;任何跨链应用程序都可以利用xERC-20代币的可互换性来创建更吸引人的应用程序。
而由于路径依赖问题,目前想要实现这一点并不容易。假设开发人员希望从以太坊跨链ETH,在ArbitrumDEX上开设借贷头寸,并使用利润在Optimism上购买NFT,然后再跨链回以太坊。在此过程中,开发人员必须确保与这些链上的跨链桥提供商集成,因为用户无法轻松地交换专有版本。而当项目采用xERC-20后其跨链代币具有可替代性,情况就发生变化了。
此工作流程与前面描述的代币发行方跨链桥类似,以CircleCCTP为例:
Circle的跨链传输协议让用户可以拥有统一的、标准的USDC代币版本,而不会被困在不同链的生态系统中。所有跨链传输都通过其协议使用销毁和铸造方案进行处理。
不过,CCTP是一个中心化协议,Circle的运营商是唯一被授权销毁和铸造其USDC代币的实体,但xERC-20却可以通过允许具有各种安全机制的多个实体操作跨链传输来消除信任风险。
支持以太坊以Rollup为中心、多链未来的愿景ERC-7281还可以加速以太坊以rollup为中心的路线图,让项目有信心在新型EVML2上部署代币,而这些新的EVML2可能缺乏现有L2链的强大安全性。例如,第0阶段rollup的标准桥不太安全,因为以太坊L1不保证桥的安全性。代币项目可以通过向标准桥授予有限的铸币权并在rollup进入第1阶段后增加铸币限制,来逐步向此类链进行部署。
此过程可以持续到L2达到第2阶段(rollup的去中心化和安全性达到最高阶段)。通过这种机制,协议可以以风险最小化的方式部署在新推出的链上,这有利于以太坊生态系统,因为它使新的L2更容易引导代币流动性和应用程序,同时鼓励项目方在rollup设计领域进行更多创新。
实施ERC-7281的潜在缺点DAO项目管理团队的成本增加虽然ERC-7281对于协议而言极具吸引力,但DAO可能会因为管理xERC-20代币而产生的巨大运营成本而犹豫是否采用。DAO项目团队必须承担大量的运营开销来管理各种部署中的xERC-20代币。
GerardPersoon在《管理大量链上的跨链代币》一文中列出了从ERC-20迁移到xERC-20后,协议必须执行的一次性和重复性任务的不完整清单:
一个提议的解决方案是,DAO将与管理跨链xERC-20代币相关的一些任务外包给第三方服务,但这仅仅是在一种人力资源成本与雇用服务成本之间进行权衡。
假设一个协议之前使用内部基础设施管理跨链代币(例如,为每条链部署单独的代币合约,并控制铸造和销毁)。在这种情况下,ERC-7281似乎并不是一个根本性的改变。然而,那些习惯于将核心跨链基础设施的管理外包给跨链桥开发团队的项目会发现,额外的工作量令人担忧。
管理xERC-20代币会给协议和社区成员带来不可忽视的管理成本增加。例如,跨链桥限制需要积极监控和评估跨链桥的安全性,以便根据这些信息调整铸造限制,而关于跨链桥限制(或铸造权的撤销/分配)的决策可能需要DAO投票(如果此类决策需要频繁做出,DAO成员可能会感到投票疲劳)。
不过,这不应被视为对ERC-7281的价值判断。每个项目都有不同的风险状况、长期目标和资源——这些因素共同决定了采用ERC-7281的长期利益是否大于短期和持续的成本。
例如,较小的项目可能发现管理发行xERC-20代币的成本更高,并选择使用像Axelar的ITS(跨链代币服务)或Wormhole的NTT(原生代币转账)这样的托管多链代币跨链服务。而更成熟的项目可能有资源来管理发行xERC-20代币的运营成本,并可能认为ERC-7281所提供的控制权值得承担管理跨链代币的额外开销。
将现有代币迁移到xERC-20标准存在难度对于没有铸造/销毁接口或无法通过升级代币合约以使用IERC20,并且已经在非原生链上流通了原生代币的标准版本的项目而言,迁移到xERC-20代币是一个漫长且需要大量协调的过程,并涉及复杂的参与者网络,包括代币持有者、交易所(DEX和CEX)、合作伙伴桥以及与传统ERC-20代币集成的各种应用程序。即使这部分工作已经完成,协议仍然需要承担将ERC-20解包为xERC-20以完成迁移过程的成本。
正如ERC-7281标准讨论中所解释的那样,现有代币需要锁定在Lockbox中,以便为用户铸造包装好的xERC-20。不过,旧版ERC-20的淘汰可能在不久之后发生,并且涉及另一个长期的过程,即围绕冻结新(旧版)ERC-20代币铸造的时间表与社区进行沟通。再次强调,从协议的角度来看,这可能是值得的——尽管收益也可能不足以证明协调整个生态系统迁移到与协议代币兼容的xERC20版本的成本是合理的。
DAO治理的风险面更大使用ERC-7281在多个域上管理xERC-20代币需要监督该协议的DAO进行积极治理。这包括设置铸造限制等参数、升级Lockbox合约以及暂停铸造或销毁代币。这些决策具有敏感性,应由DAO管理,以避免因闭门决策而承担责任。
ERC-7281旨在让协议控制这些决策,而不是第三方跨链桥。这很有必要,因为DAO已经在其原生链上管理代币,因此将治理扩展到其他链上的代币,对于寻求这种控制的协议和社区来说是合理的。然而,一些协议可能由于担心治理和稳定性而不想拥有这种额外的DAO控制。
例如,Lido面临着治理问题的审查,增加对代币管理的控制会增加治理接管的风险。如果一个项目将所有ERC-20代币整合到一个Lockbox中,并由DAO进行管理,那么治理攻击可能会产生广泛的影响。攻击者可以控制Lockbox并引入一个没有铸造限制的恶意跨链桥提供商,从而使其他链上的xERC-20代币变得一文不值。
这种情况与Multichain漏洞相似,多方计算(MPC)签名基础设施中的漏洞使黑客能够破坏保管以太坊和Dogecoin上原生代币的主要Multichain地址——这些代币支持在非原生链(如Fantom和Moonriver)上铸造的代币,从而产生了“多米诺骨牌效应”,导致其他地方的项目因以太坊和狗狗币上Multichain智能合约受到攻击而遭受损失。
与最大程度去中心化的协议不兼容当代币由具有代币治理或中心化实体的协议发行时(例如Circle的USDC或CZKC稳定币),ERC-7281才符合要求。然而,如果协议最大限度地去中心化且缺乏正式治理,那么它的价值就不大——Liquity的LUSD稳定币就是一个难以与xERC-20标准兼容的代币示例。
xERC-20代币要求实体决定特定参数,例如铸造和销毁限制,并做出是否将某些跨链桥提供商列入白名单等决定。这意味着xERC-20代币的存在需要持续治理。对于希望随着时间的推移将协议的关键组件(例如DAO的代币合约)去中心化的项目,这可能会引发问题并使去中心化计划复杂化。
核心组件(Lockbox合约和跨链桥提供商)相关漏洞会带来更大风险
上文已提及路径依赖的工作原理,以及它为何能确保影响链A的漏洞不会影响链B,或链A上的桥A的漏洞不会影响链B上的桥B。ERC-7281标准消除了路径依赖,这带来了好处,但同时也引发了安全性方面的权衡问题。
由于不同跨链桥提供商铸造的代币在跨链间具有可互换性,跨链桥中可用的最大流动性,不再代表跨链桥漏洞对代币发行方可能造成的最大影响。ERC-7281标准的作者建议,基于代币发行方可用于补偿欺诈铸造损失的金额,为跨链桥提供商设定一个速率限制;尽管如此,从回顾的角度来看,所选的速率限制可能过于保守。
如果一个具有高限制的跨链桥遭到攻击,其影响可能十分显著,甚至影响到使用其他铸造相同代币的跨链桥的用户。所以,协议可以通过将铸造权分配给多个跨链桥来降低风险(因此,与其他跨链桥相比,一个跨链桥提供商所能铸造的代币数量就不会过大),但通过这种方式来规避风险可能会降低效率,因为每个跨链桥都需要DAO团队进行独立评估,并且与更多跨链桥进行协调,这样又会增加上文提到的管理成本。
另外,由DAO管理的Lockbox合约也可能会在发生治理攻击时引入不利的传染效应。而即使有安全的DAO治理,代币主链上的原生/非原生Lockbox合约中的错误也会导致同样多的问题。相比之下,由于金库合约(跨链桥提供商的Lockbox合约等同物)仅持有通过相应跨链桥桥接的代币,这一问题得到了缓解,因为一个提供商的金库合约中的漏洞也只会影响到在该跨链桥中存入代币的用户。
生态系统集成的成本ERC-7281标准带来的额外管理工作还会影响使用项目xERC-20代币的应用程序开发人员和服务提供商。跨链桥聚合器需要跟踪xERC-20代币与其对应的Lockbox合约之间的映射关系,以防止垃圾邮件代币和欺骗攻击等问题。虽然这些映射的注册表可能有所帮助,但在不承担中心化风险或使xERC-20采用者面临威胁的情况下建立这样的注册表具有挑战性。
风险来自攻击者可能会将恶意合约添加到代币注册表中,并诱骗用户和开发人员将代币发送到错误的地址。这可能会导致L2和L1网络上发生代币盗窃事件。交易所也面临着类似的挑战,因为伪造的代币可能会引发严重问题,如代币行为异常,这与经过审核的标准代币不同。
总结ERC-7281标准为不可互换跨链代币问题提供了一个令人信服的解决方案,并提供了增强用户体验、去中心化、安全性和代币跨链设计灵活性的功能。其中一些特性直接影响以rollup为中心的路线图的可行性,使xERC-20标准成为以太坊L2生态系统的关键基础设施。
当前,包括Hyperlane、Omni、Sygma、RouterProtocol和Everclear在内的多个跨链桥领域的关键参与者已承诺采用ERC-7281标准,这表明该提案受到了广泛关注。甚至一些已有代币跨链机制的成熟代币发行方(如Circle)也对ERC-7281标准表现出兴趣,以解决未经批准的代币对用户和开发者造成的挑战。值得一提的是,对于关注ERC-7281标准讨论或希望集成xERC-20的开发人员而言,以太坊魔术师联盟(FellowshipofEthereumMagicians)和xERC-20网站,以及xERC-20发射台(用于聚合创建、监控和管理xERC-20代币的工具)将是重要的信息来源和工具。