二、 Rollup 导致生态割裂
大多数 DeFi 协议都是基于智能合约而创建的,这些智能合约摆设在 Layer1 的以太坊上,并通过各自的方式,毗连到本身的 Layer2 网络。
对用户来说,将资金存入智能合约,开始利用这些 Layer2 网络,智能合约会记载全部的生意业务变革,用户在 Layer2 网络上利用,能提拔服从,低落本钱。
但是假如 Synthetix 和 Uniswap 分别存在于差别的 Layer2 网络上,那么相互之间大概就处于各自的孤岛,怎样交互会成为题目。
怎样让差别的扩容方案毗连起来,保持 DeFi 协议最为人所知的可组合性和协作性?
在币乎社区的一次线上 AMA 中,Vitalik 提到了现在 Rollup 等 Layer2 方案必要办理的两个题目:
如今以太坊上会有许多用户体验方面的挑衅(题目)。但我以为6个月之后许多这些题目都会办理。
如今以太坊上会有许多用户体验方面的挑衅(题目)。但我以为6个月之后许多这些题目都会办理。
那么怎样办理?
三、 Vitalik 提案:怎样实现跨 Rollup 转账
几天前以太坊团结首创人 Vitalik Buterin 提了个想法,将差别的第二层扩展办理方案毗连起来,如许它们就可以相互“攀谈”,以保持 DeFi 协议的可组合性和协同性。
假设存在两个 Rollup:A 和 B。用户 Alice 想要将 Rollup A 上的一些代币,换成 Rollup B 上的别的一些代币。假设存在两种环境:
- Rollup A 和 Rollup B 都可以或许支持合约
- 只有一个 Rollup 支持智能合约,另一个 Rollup 只支持简朴的转账。
第一种环境,社区也有一份提案,名为 "Hop: Send Tokens Across Rollups(Hop: 跨 Rollup 发送代币)",地点见:http://ethresear.ch/t/hop-send-tokens-across-rollups/8581。
Vitalik 的提案,针对第二种情况,即:假如 RollupA 只支持简朴的转账生意业务,而 Rollup B 支持智能合约。
V 神发起,有一种简朴的方法,可以将这些各自孤立的合约网络毗连起来。
跨 Rollup 转账的根本场景
“假设有一个生意业务中介,名为 Ivan(固然有许多中介可以选择,这里只是举例)。Ivan 在 Rollup A 上有一个帐户 IVAN_A (他完全控制该帐户)。Ivan 也有一些资金存入到 Rollup B 上的智能合约 IVAN_B 中。”
假想有如下的操纵:
- Alice 向 Rollup A 上的 IVAN_A 账户发起一笔生意业务,转账到 Rollup B 上的账户:ALICE_B。(Alice 在 Rollup A 上转给 IVAN)
- Ivan 能怎么办呢?他会通过 IVAN_B 账户,发送一笔生意业务,将扣除了手续费之后的代币数目,发送到 ALICE_B 这个账号中。
在第一步之后,第二步可以立刻举行。假如 Ivan 证实第二笔生意业务跟第一笔生意业务之间的差别非常小,那么乃至可以在合约里设置规则,答应收取更高的费用。
“最坏的环境”是 Ivan 没有像预期的那样向 ALICE_B 发送代币。在这种环境下,Alice 可以等候 Rollup A上的生意业务确认,然后通过其他途径得到 Rollup B 上的代币用来付出跨 Rollup 传输的手续费,然后她本身就可以 claim,得到资金。
按照 V 神的表明,用户 Alice 可以直接在 Rollup B 上完成。只必要让 Rollup B 可以得到在前一 批 Rollup 记载之前的 L1 上的相应 hash 记载,然后 RollupB 就可以或许记载下来 Merkle 分支,可以或许在 Rollup 里验证。
普通来说,通过技能方式可以或许确保用户 Alice 在 Rollup A 上生意业务确认之后,可以有方式安全的在 Rollup B 上领取到对应的资金(付出了手续费之后),制止由于此中某一个大概几个生意业务中介出现题目,导致资金受损。
无论这个生意业务中介 Ivan 是谁,为什么别人会选择转给他代币,这些可以临时不管;这里的寄义是,存在毗连层,让存入到各类孤立的 Layer2 智能合约上的资金保持同步,实现跨 Rollup 转账的功能。
详细的实现细节,大概要相识在 Rollup B 上的合约 IVAN_B 的规则了。服从下面的设定(为便于明白有所删减):
- 假如任何人发起一个生意业务,发送多少数目的比特币到 IVAN_A 这个账户(存在 Rollup A上),在 memo 中,包罗了目的地点的信息。那么,在多少时间之后,他们可以向合约 IVAN_B 发送一笔生意业务,该生意业务包罗了转账的证实,该证实可以或许将对应数目的比特币提到在 Rollup B 上的目的地点之中。
- 提款要颠末一些耽误(比方,1天的时间),是为了确保对应的转账批次和索引可以记载到 Rollup A 的 Layer2 网络之中。
- 当 Ivan 在 IVAN_A 收到资金时,他可以本身将代币发送到目的地点。他可以通过 IVAN_B 合约发送生意业务。
在这种环境下,Ivan 充当告终算商的脚色,可以收取肯定的转账手续费,让 Rollup A 这个只支持简朴转账生意业务的Layer2 网络,和可以支持智能合约生意业务的 Rollup B,可以或许毗连起来。而通过转账证实、Merkle 索引等方式,也确保用户资产可以或许在转移过程中不会碰到丧失。
结算商充当了跨 Rollup 转账的协作脚色
Ivan 本身也必要举行内部结算,究竟有大概在某个 Rollup 上会耗尽资金。好比,用户不停在通过 Rollup A 向 Rollup B 转账,必要通过 Ivan 在 Rollup B 上的储备资金转给用户所指定的地点。这时间 Ivan 这类生意业务中介,就必要举行内部结算了,也因此这提案的限定,会要求 Ivan 这类中介商持有大量的资金在账户之中,以便服务用户需求。
我们用法币举例,大概能更好明白。假如你从工商银行向建立银行的卡转账,只管 ATM 机上表现立刻变动了,但是现实的结算过程是天天举行一次,只有在工行结算后,才将现实的资金转给建行,更详细来说,是通过在央行的结算账号之间举行的。
同样的,从支持智能合约的 Rollup B 向只支持平凡转账的 Rollup A 发起转账生意业务,也是雷同的操纵。
- Alice 发送代币至合约账号 IVAN_B, 并附上了目的地点;
- 多少时间之后,Alice 可以将资金取回;
- 不外假如中心 IVAN 这个中心商可以或许提供证实至智能合约 IVAN_B, 附上链上的转账记载等信息,证实本身已经将资金在 Rollup A 上转给了 Alice,那么,Alice 就不能再取回资金了。这时间,跨 Rollup 转账完成。
至此,我们大抵明白了 Vitalik 提案之中所提到的跨 Rollup 转账原理,而且只必要此中一个 Rollup 支持智能合约即可实现,重要引入了 IVAN 这一中心商来支持跨 Rollup 转账。
至于怎样设置限定,制止中心结算层的资金不敷和浪费、以及转账的 Memo 应该怎样设定等技能细节,可以检察 Vitalik 的提案所述: http://ethresear.ch/t/cross-rollup-dex-with-smart-contracts-only-on-the-destination-side/8778。
四、Hop 的跨 Rollup 转账方案
上文中,我们还提到过别的一个场景:两个 Rollup,好比 ZKSync 和 Optimism,都支持智能合约,那么怎样实现跨 Rollup 交互?
Hop 团队成员 chris whinfrey 1 月 24 日在 ETH Research 论坛发了一篇帖子,先容 Hop 怎样跨 Rollup 举行去中央化的代币转账。
内容如下:
Hop protocol 提供了去信托、可扩展的跨 Rollup 通讯桥。致力于:
- 快速轻松实现跨 Rollup 代币转移
- 可以快速从 Rollup 中退出
- 终极实现跨 Rollup 合约调用的功能
在 Hop 团队看来,对于办理跨 Rollup 可组合性题目,他们提供了广泛的办理方案,通过双管齐下的方式实现:
- 创建一个跨网络桥接代币,可以快速而经济地从一个 Rollup 移动到另一个 Rollup ,大概在 Layer1 上创建,支持领取对应的底层资产。
- 利用主动做市商(AMM) 在每个 Rollup 上的每个桥接代币和其对应的代币之间举行生意业务,以便动态订价,并让整个网络的活动性再均衡。
换句话说,借助于一个锚定代币(好比 Bridge),在多个 Rollup 上都有摆设,也可以在 Layer1 的以太坊网络上摆设并支持 Layer1 跟 Layer2 的 Rollup 上的 Bridge 代币的1:1锚定兑换。
假如用户想要从 Rollup A 转账 100 个 BTC 到 Rollup B 上本身大概他人的账号中,那么,就有如下的过程:
- 起首,在 Rollup A 上,通过 AMM 将这 100 个 ETH 兑换为 Bridge_A 代币,即桥接代币;
- 生意业务确认之后,Rollup B 上通过 AMM 将 Bridge_B 代币兑换为 100 个 ETH 代币,然后转给用户所指定的在 Rollup B 上的对应地点;
- 由于 Bridge_A 和 Bridge_B 都是同样的代币,只是起到了跨 Rollup 桥接的作用,他们的比值是 1:1 锚定的。假如有代价颠簸,套利者会举行无风险套利,搬砖搬平差价。
Hop 现在已有测试网上线 http://hop.exchange/send。
五、另有没有其他方案?
除了上述方案之外,Celer 跟 Matic Network 的方向我们也一并聊聊。
Celer 的 Layer2 方案:原地扩容
国产 DeFi 项目 Celer 提出了个新的思绪,称为“原地扩容”,原地的意思就是,让 DeFi 项目继承在 Layer1 即可,不必要专门去 Layer2 别的摆设专门的版本,即可通过 Celer 的方案--Layer2.finance, 实现扩容。
根据 Celer 团队的先容,在该场景下,用户的资产存放在 Layer2 链上(Celer 从基于 Optimistic Rollup 的方案开始,后续扩展升级,支持 ZK Rollup),然后用户发送指令,告诉 Layer2.finance 协议本身的操纵要求,指明将本身的多少资金、存放到哪些 DeFi 协议中,好比 Curve、AAVE、Compond 等位于以太坊 Layer1 网络上的 DeFi 协议。
通过这种方式,Layer2 充当了下令署理,用户存储资产 + 发送指令即可,而详细的业务逻辑,则仍旧是交给了 Layer1 上的 DeFi 协议实行。而差别用户的下令,可以通过归并生意业务的方式,更经济的与 Layer1 合约交互。
该方案预计在3月份上线。
Matic Network 品牌重塑:Polygon
Polygon 原名为 Matic Network,则走了别的一条路,定调为 Layer2 聚合器,通过两种方式实现扩容:
- 依靠以太坊网络,借助对应网络上的验证者,并支持 Matic Plasma、zkRollups、Optimistic Rollups、Validium 等方案。
- 创建本身的子链体系和独立的验证节点,自行负责本身的安全性。这一方向,现在已经上线的是 Matic PoS 链。
Matic Network 升级之后的方案走得更远,除了依托现有生态之外要独立创建本身的生态体系,所付出的积极也要更多。据统计,现在有 80 多个 DApp 摆设在 Polygon 上,涵盖 DeFi、NFT、游戏等范畴。
按照当前的希望,Matic Pos 链和 Matic Plasma 方案已上线,而现在还未支持 zk Rollup 和 Optimistic Rollup,这些方案会在将来上线。限于篇幅,对 Polygon 不再睁开。Polygon 链访问:http://polygon.technology/
六、 小结
三月份会很热闹,Arbitrum、Optimism 的主网上线,标志着我们现在处在 Rollup 等 Layer2 方案的发作前夜。Layer2 方案争取用户的办法,会成为三月份以及上半年的一大母题。
而差别 Layer2 (详细来说 Rollup)之间怎样兼容,制止粉碎 DeFi 的协作性?现在见到的这几个方案,实在也都在摸着石头过河。Vitalik 的提案,Hop 的实现,以及 Celer 的创意,大概可以或许办理各自假想中的题目,但是跨 Rollup 实现 DeFi 的调用组合,仍旧是个摆在火线的浩劫题。
另一方面,近来 Sushi 等协议在多条链上摆设的动作,大概预示了别的一种大概性,跟 Hop 方案之中所提到的雷同,借助于 AMM + 协议自身代币的方式,大概很多 DeFi 协议会先实验在内部买通差别 Layer2 网络及 Layer1 之间的隔阂,形成闭环。
大概将来随着更多 DeFi 参加 Layer2 的行列,更广泛意义的 DeFi 聚合器巨无霸将会出现,如今还只是刚刚开始,读者朋侪们不妨多想想多看看。
参考资料:
http://mp.weixin.qq.com/s/2HYIsxnUaovKYs19xQ_KbQ
http://www.trustnodes.com/2021/03/02/vitalik-buterin-proposes-cross-rollup-scaling-solution
http://www.chainnews.com/articles/872971457746.htm
http://hop.exchange/whitepaper.pdf
声明:本文为作者独立观点,不代表区块链研习社态度,不构成任何投资意见或发起。
作者:区块链研习社;来自链得得内容开放平台“得得号”,本文仅代表作者观点,不代表链得得官方态度凡“得得号”文章,原创性和内容的真实性由投稿人包管,假如稿件因抄袭、作假等举动导致的法律结果,由投稿人本人负责得得号平台发布文章,如有侵权、违规及其他不妥言论内容,请广大读者监视,一经证明,平台会立刻下线。如遇文章内容题目,请发送至邮箱:[email protected]返回搜狐,检察更多