跨链三难困境和模块化解决思路
注:在上一篇介绍 optimistic 跨链桥的文章中,Connext 创始人 Arjun Bhuptani 为我们科普了一种信任最小化的跨链设计,同时该设计还保留了现有多重签名跨链桥的简单性和易部署特性。但当前 Connext 跨链桥产品的体验还是较为糟糕的,并且其支持的跨链功能也非常有限。
而在这篇文章中,Arjun Bhuptani 总结了目前 Connext 跨链协议存在的问题(例如费用高、速度慢等),然后他还解释了 Connext 如何通过称为 Amarok 的升级解决这些难题,而其原理就是结合 Connext 和 Nomad 的跨链机制。
在作者看来,与区块链本身类似,没有一种整体架构可以为我们提供跨链所需的所有理想属性,但我们可以通过模块化的协议栈来接近实现最佳的跨链方式。
升级动机
这次升级的动力是解决网络中不同类型的参与者遇到的关键问题。
终端用户面临的问题
Gas 成本:当前的跨链流程依赖于两个阶段的准备/履行过程来完成跨链交互,这不容易批量化处理;
签名 Claim:完成交易需要用户签名消息以 Claim 资金。这可以让 Connext 实现信任最小化,但这个过程也很痛苦,因为它要求用户在签名之前保持在线。
资金锁定风险:用户交易与 router 的关系为 1:1。如果 router 离线或在流程中途失去与链的连接,则用户的资金可能会被卡住,最多可能有 72 小时。
速度:因为用户必须为他们的 tx 绑定到一个给定的 router,所以特定 router 经历的任何延迟都会传递给用户。
流动性碎片化:router 提供的流动性依赖于路径,这意味着它在给定的一对链之间是可用的。而随着跨链数量的增长,用户进行大额交易会变得更加困难。
开发者面临的问题
链外依赖:该领域的大多数集成仅为合约,但 Connext 目前需要运行客户端 SDK 来为给定交易找到 router。
签名 Claim:claim 的需要要求开发人员跟踪正在进行的 tx,并提示用户在正确的时间签名。与简单的链上 tx 相比,这增加了很多开销以及复杂性。
没有通用消息传递:Connext 目前已支持了跨链调用合约,但这只能在某些情况下安全地完成。要求开发人员在什么时候可以使用这个功能,以及什么时候不能使用这个功能,这是一个很大的障碍。
Router 面临的问题
再平衡:Router 在目标链上发送资金,在来源链上接收资金。这意味着他们的流动性在链或 rollup 二层网络之间移动并且可能会被卡住,从而降低资本效率。
ROI 不明确:众所周知,Router 的投资回报率难以准确跟踪,因为两阶段的流程,意味着跟踪回报所需的数据分散在各个链中。
活性问题:如上所述,如果 Router 在交易过程中不可用,用户资金最多可被锁定 72 小时。这种活性问题增加了 Router 的难度。
Gas 恶意攻击:用户或 Router 可以协同取消交易。然而,当这种情况发生时,没有明确的机制来补偿预付 gas 成本。
最初的解决方案是什么?
Connext 最初计划通过以下组合来修复以上这些问题:
激励措施——例如,使用 vAMM 定价来激励再平衡以及使用罚没机制来增强系统活性;
钱包集成——通过将 Connext SDK 代码移植到钱包中,可以从开发者和用户那里抽象出“签名 claim”的流程;
Connext 的重点一直是确保交易尽可能减少信任,而上述障碍是为了实现这种安全性而做出的权衡。
而在过去的几个月里,Connext 研究出了一种更好的体系结构,它可以在不引入信任的情况下避免上述问题。
模块化跨链方案
这种思维突破来自于 Connext 与 Nomad 的紧密合作。Nomad 是一种 optimistic 跨链桥协议,它可以提供在任何链上充分表达且信任最小化的通信,但权衡的代价是 30 分钟的延迟。
与区块链本身类似,没有一种整体架构可以为我们提供跨链所需的所有理想属性,但我们可以通过模块化的协议栈来接近实现最佳的跨链方式。
模块化跨链堆栈
新的流程
新的设计流程大量使用了 Nomad 协议,该方法不需要签名,而是简单地允许任何 router 为用户交易提供资金并执行调用,并对通过 Nomad 的资金进行 claim。
由于没有预先明确指定 router,因此存在 router 可以在 mempool 中相互竞争以完成给定交易的风险。这是一个次优的结果,因为输掉这场比赛仍然会让 router 消耗 gas。为了解决这个问题,开发者引入了一个定序器(在概念上类似于 rollup 定序器),它负责从 router 那里收集出价(尝试的交易),并将它们批量发布到链上。
请注意,Connext 中的定序器角色不会以任何方式影响系统的资金安全。相反,它只是一种机制,旨在公平地在 router 之间分配费用收入/工作,如果给定(a)用户 tx 的所有 router 出价的数据可用性,以及给定(b)选择中标的一个确定过程,则可以无需信任地完成。Connext 目前正在研究解决这个问题的方法,包括让定序器将数据发布到自己的 rollup 中,或者让 router 和定序器达成 Tendermint 共识。
相关的变化
Amarok 升级将实现更好的跨链流程和功能集,它可以解决我们之前提到的一些问题:
简化流程:不再是带有签名的两阶段流程,所有的交易现在都发生在发送链的单笔交易中,这简化了用户体验和开发者体验。Connext 也不再需要取消,从而消除了 router 的 gas 恶意攻击成本。
1-of-N 路由:任何 router 都可以完成用户的交易,这消除了用户资金锁定的可能性,并显著降低了对 router 的活性要求。这也完全消除了开发人员对链下代码的需求。
更简单的流动性:Router 在交易的目标链上接收流动性,即他们提供流动性的地方。流动性也不再依赖于路径,这消除了再平衡难题和碎片化问题,大大提高了资本效率和可用性。
更便宜和更快的交易:新流程将链上调用的数量从 4 减少到了 2,这使得交易不仅变得更便宜,也变得更快了。
任意消息传递:Amarok 升级带来的最令人兴奋的改进,在于开发人员现在能够构建各种跨链 dapp,这解锁了 JS 风格的异步开发等强大功能(包括对 Solidity 回调的支持)。
下一步是什么?
Connext 目前在运行一个带有 Amarok 升级的专用测试网,而在未来的几周,一个功能齐全的公共测试网将可供任何人使用。
而在 5 月份,Connext 计划完成升级审计,并于 6 月份进行主网升级。
随着 Amarok 升级完成后,这将为建设者打开大门,允许他们在 Connext 之上构建他们能想到的任何类型的跨链应用,以下是开发者们已经讨论过的一些早期用例:
在单笔交易中跨链连接 DEX 流动性;
跨链金库策略管理;
关键协议操作,例如跨链复制/同步全局常量(如 PCV);
在不引入预言机的情况下将 UniV3 TWAP 引入每条链;
与链无关的 veToken 治理;
元宇宙与元宇宙之间的跨链互操作;
微信扫描关注公众号,及时掌握新动向
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场