Rollup割裂以太坊生态,V神、Matic、Celer等想怎么解决?_ROL:ALI

三月将会是Rollup扩容方案的高光时刻。从进度看各个?Rollup方案已经蓄势待发,有些方案已经明确将会在3月上线,而Rollup扩容方案的上线,将会为行业带重大影响。

但由于?Rollup之间难以互通,这就造成了以太坊生态的割裂,不同协议之间难以实现协同性,对DeFi非常重要的可组合性也将支离破碎。那有没有办法解决这个问题呢?

今天聊一聊几种想要解决跨Rollup交互问题的方案,看看如何将不同Rollup?Layer2扩容方案连接起来,保持协议间的可组合性和协同性。

一、?Rollup蓄势待发

之前我们已经介绍了Optimism、ZkSync、Arbitrum以及StarkEx这四种主要的Rollup扩容方案,这里再进行简要叙述,以作为背景。

四种Rollup方案的详细内容,可以点击查看:《四种主流Rollup方案及热门DeFiLayer2进展盘点》。

不同的Rollup方案和DeFi协议的选择

目前四种主要?Rollup扩容方案各自都吸引到了一批生态用户,其中:

Optimism吸引了来自Uniswap、Compound的目光,更是在主网预启动之后,得到了合成资产交易平台Synthetix的深度参与。

Curve、StablePay、GitCoin采用或计划采用MatterLabs的zkSync方案作为扩容选择。

OffchainLabs所创建的Arbitrum,有多个DeFi项目已开始测试或有计划使用,包括Bancor、Bounce、DODO、麦子钱包、Burgerswap、Hop、MCDEX和Swapr等。

StarkEx一边,也不乏战友。去中心化合约交易平台dYdX会使用StarkEx所支持的Layer2网络,还有Paraswap,DeversiFi等应用,也会使用StarkEx的方案。

各Rollup扩容方案进展如何??

Optimism二月份宣布完成A轮融资,领投方为AndreessenHorowitz,将于三月份上线主网。

Arbitrum由学术性研究计划而肇始,在计划进入商业化阶段时,曾申请专利。团队近日表示,在征得普林斯顿大学同意后,考虑到项目进入社区成熟阶段,将放弃专利。Arbitrum也公告主网处于即将上线阶段。

Reddio上线StarkEx提供支持的zkRollups API主网:9月29日消息,区块链基础设施服务商Reddio宣布,上线由StarkWare扩容引擎StarkEx提供支持的zkRollup API主网。Reddio表示,开发人员可以使用Reddio在zkRollup上构建应用内和游戏内NFT市场、扩展应用和游戏资产交易、使用Javascript SDK和Unity SDK以0 Gas费铸造NFT等,具有低Gas费用和即时确认等特点。[2022/9/29 6:01:45]

zkSync项目的创始团队MatterLabs?也公开了A轮融资的信息,“联合广场风投领投该轮,此前的投资者Placeholder、1kx和Dragonfly继续参与本轮,除此之外还有zkSync的生态合作方参与了投资,其中包括Aave、Balancer、1inch、Curve、Binance、CoinbaseVentures、火币、路印、Argent、MYKEY、imToken、Flexa、MoonPay、ripio、ZKValidator、CoinGecko”。MatterLabs表示,zkSync将于今年支持图灵完备的智能合约。

二、Rollup导致生态割裂

大多数DeFi协议都是基于智能合约而创建的,这些智能合约部署在Layer1的以太坊上,并通过各自的方式,连接到自己的Layer2网络。

对用户来说,将资金存入智能合约,开始使用这些Layer2网络,智能合约会记录所有的交易变化,用户在Layer2网络上使用,能提升效率,降低成本。

但是如果Synthetix和Uniswap分别存在于不同的Layer2网络上,那么彼此之间可能就处于各自的孤岛,如何交互会成为问题。

如何让不同的扩容方案连接起来,保持DeFi协议最为人所知的可组合性和协作性??

在币乎社区的一次线上AMA中,Vitalik提到了目前Rollup等Layer2方案需要解决的两个问题:

以太坊的社区很多应用喜欢调用智能合约,比如DeFi的项目。但目前的ZK?Rollup不支持智能合约,只支持发币、交易币等简单的应用。这是第一个问题。当我们有支持完整EVM的Rollup的时候,我觉得会有更多的用户搬到Rollup。

现在Rollup相关的基础设施生态还不多。比如我们还没有解决不同的Rollup之间交易的问题。如果我有一些币在ZKsync怎么把币搬到路印?首先需要把币从ZKsync的二层提取到以太坊底层,然后再转移到Loopring的二层账户。如果这样做了,交易费会不会特别高?

现在以太坊上会有很多用户体验方面的挑战。但我觉得6个月之后很多这些问题都会解决。?

V神:Rollups比ETH2.0更适合解决当前扩容难题:在今晚的社区问答中,关于ETH2.0和Rollups之间的关系,以太坊创始人V神表示:“现在要解决的是扩展的问题,现在不需要以太坊2.0,而需要Rollups。有了Rollups后,以太坊交易量就可以提高100倍。当然长期分片也需要,但现在这一问题并不紧迫。以太坊2.0现在的价值主要是迁移到Pos,计划是先变成一条链,然后再考虑分片。”[2021/2/28 18:01:21]

那么如何解决?

三、Vitalik提案:如何实现跨Rollup转账

几天前以太坊联合创始人VitalikButerin提了个想法,将不同的第二层扩展解决方案连接起来,这样它们就可以相互“交谈”,以保持DeFi协议的可组合性和协同性。

假设存在两个Rollup:A和B。用户Alice想要将RollupA上的一些代币,换成RollupB上的另外一些代币。假设存在两种情况:

RollupA和RollupB都能够支持合约

只有一个Rollup支持智能合约,另一个Rollup只支持简单的转账。

第一种情况,社区也有一份提案,名为"Hop:SendTokensAcrossRollups(Hop:跨Rollup发送代币)",地址见:https://ethresear.ch/t/hop-send-tokens-across-rollups/8581。

Vitalik的提案,针对第二种情形,即:如果RollupA只支持简单的转账交易,而RollupB支持智能合约。

V神提议,有一种简单的方法,可以将这些各自孤立的合约网络连接起来。

ZKSwap将在2到3周内发布100% ZK-Rollup版本:据官方消息,ZKSwap将在2到3周内发布100% ZK-Rollup版本。[2021/2/28 18:00:41]

跨?Rollup转账的基本场景

“假设有一个交易中介,名为Ivan。Ivan在RollupA上有一个帐户IVAN_A(他完全控制该帐户)。Ivan也有一些资金存入到?Rollup?B上的智能合约IVAN_B中。”

设想有如下的操作:

Alice向?RollupA上的??IVAN_A账户发起一笔交易,转账到RollupB上的账户:ALICE_B。

Ivan能怎么办呢?他会通过IVAN_B账户,发送一笔交易,将扣除了手续费之后的代币数量,发送到ALICE_B这个账号中。

在第一步之后,第二步可以立即进行。如果Ivan证明第二笔交易跟第一笔交易之间的差异非常小,那么甚至可以在合约里设置规则,允许收取更高的费用。

“最坏的情况”是Ivan没有像预期的那样向ALICE_B发送代币。在这种情况下,Alice可以等待Rollup?A上的交易确认,然后通过其他途径获得Rollup?B上的代币用来支付跨Rollup传输的手续费,然后她自己就可以claim,获得资金。

按照V神的解释,用户Alice可以直接在RollupB上完成。只需要让RollupB可以获得在前一批Rollup记录之前的L1上的相应hash记录,然后RollupB就能够记录下来Merkle分支,能够在Rollup里验证。

通俗来说,通过技术方式能够确保用户Alice在RollupA上交易确认之后,可以有方式安全的在RollupB上领取到对应的资金,避免因为其中某一个或者几个交易中介出现问题,导致资金受损。

无论这个交易中介Ivan是谁,为什么别人会选择转给他代币,这些可以暂时不管;这里的含义是,存在连接层,让存入到各类孤立的Layer2智能合约上的资金保持同步,实现跨Rollup转账的功能。

具体的实现细节,可能要了解在RollupB上的合约IVAN_B的规则了。遵从下面的设定:

如果任何人发起一个交易,发送若干数量的比特币到IVAN_A这个账户,在memo中,包含了目标地址的信息。那么,在若干时间之后,他们可以向合约IVAN_B发送一笔交易,该交易包含了转账的证明,该证明能够将对应数量的比特币提到在RollupB上的目标地址之中。

提款要经过一些延迟(例如,1天的时间),是为了确保对应的转账批次和索引可以记录到RollupA的Layer2网络之中。

SpringRole集成印度支付网关服务RazorPay:区块链专业身份认证平台SpringRole集成印度支付网关服务RazorPay,以接受那些希望在求职时需要自我验证的用户的付款。SpringRole由人力资源技术公司Springworks所有。SpringRole允许用户实时验证身份、就业和教育证书,并将这些信息作为永久记录写入去中心化区块链。(BusinessWire India)[2020/8/6]

当Ivan在IVAN_A收到资金时,他可以自己将代币发送到目标地址。他可以通过IVAN_B合约发送交易。

在这种情况下,?Ivan充当了结算商的角色,可以收取一定的转账手续费,让RollupA这个只支持简单转账交易的Layer2网络,和可以支持智能合约交易的RollupB,能够连接起来。而通过转账证明、Merkle索引等方式,也确保用户资产能够在转移过程中不会遇到损失。

结算商充当了跨Rollup转账的协作角色

Ivan自己也需要进行内部结算,毕竟有可能在某个Rollup上会耗尽资金。比如,用户一直在通过RollupA向RollupB转账,需要通过Ivan在RollupB上的储备资金转给用户所指定的地址。这时候Ivan这类交易中介,就需要进行内部结算了,也因此这提案的限制,会要求Ivan这类中介商持有大量的资金在账户之中,以便服务用户需求。

我们用法币举例,或许能更好理解。如果你从工商银行向建设银行的卡转账,尽管ATM机上显示立即变更了,但是实际的结算过程是每天进行一次,只有在工行结算后,才将实际的资金转给建行,更具体来说,是通过在央行的结算账号之间进行的。

同样的,从支持智能合约的RollupB向只支持普通转账的RollupA发起转账交易,也是类似的操作。

Alice发送代币至合约账号IVAN_B,并附上了目标地址;

若干时间之后,Alice可以将资金取回;

不过如果中间IVAN这个中间商能够提供证明至智能合约IVAN_B,附上链上的转账记录等信息,证明自己已经将资金在RollupA上转给了Alice,那么,Alice就不能再取回资金了。这时候,跨Rollup转账完成。

至此,我们大致理解了Vitalik提案之中所提到的跨Rollup转账原理,并且只需要其中一个Rollup支持智能合约即可实现,主要引入了IVAN这一中间商来支持跨Rollup转账。

至于如何设置限定,避免中间结算层的资金不足和浪费、以及转账的Memo应该如何设定等技术细节,可以查看Vitalik的提案所述:https://ethresear.ch/t/cross-rollup-dex-with-smart-contracts-only-on-the-destination-side/8778。

V神:ERC20项目应积极研究ZK-Rollup L2扩容解决方案:金色财经报道,Education Ecosystem今日发推称,过去几周,以太坊gas价格高昂,每笔交易价格为0.40至0.88美元,这使得ERC20项目无法在以太坊上进行任何微交易支付,这挫败了使用以太坊网络进行支付的想法。对此,以太坊创始人V神表示,ERC20项目应该积极研究ZK-Rollup L2扩容解决方案,这些解决方案目前已在主网上运行。[2020/7/10]

四、Hop的跨Rollup转账方案

上文中,我们还提到过另外一个场景:两个Rollup,比如ZKSync和Optimism,都支持智能合约,那么如何实现跨Rollup交互?

Hop团队成员?chriswhinfrey1月24日在ETHResearch论坛发了一篇帖子,介绍Hop如何跨Rollup进行去中心化的代币转账。

内容如下:

Hopprotocol提供了去信任、可扩展的跨Rollup通讯桥。致力于:?

快速轻松实现跨Rollup代币转移

可以快速从Rollup中退出

最终实现跨Rollup合约调用的功能

在Hop团队看来,对于解决跨Rollup可组合性问题,他们提供了广泛的解决方案,通过双管齐下的方式实现:

创建一个跨网络桥接代币,可以快速而经济地从一个?Rollup?移动到另一个?Rollup?,或者在Layer1上创建,支持领取对应的底层资产。

使用自动做市商(AMM)在每个Rollup上的每个桥接代币和其对应的代币之间进行交易,以便动态定价,并让整个网络的流动性再平衡。

换句话说,借助于一个锚定代币,在多个Rollup上都有部署,也可以在Layer1的以太坊网络上部署并支持Layer1跟Layer2?的Rollup上的Bridge代币的1:1锚定兑换。

如果用户想要从RollupA转账100个BTC到RollupB上自己或者他人的账号中,那么,就有如下的过程:

首先,在RollupA上,通过AMM将这100个ETH兑换为Bridge_A代币,即桥接代币;

交易确认之后,RollupB上通过AMM将Bridge_B代币兑换为100个ETH代币,然后转给用户所指定的在RollupB上的对应地址;

由于Bridge_A和Bridge_B都是同样的代币,只是起到了跨Rollup桥接的作用,他们的比值是1:1锚定的。如果有价值波动,套利者会进行无风险套利,搬砖搬平差价。

Hop目前已有测试网上线https://hop.exchange/send。

五、还有没有其他方案?

除了上述方案之外,Celer跟Matic?Network的方向我们也一并聊聊。

Celer的Layer2方案:原地扩容

国产DeFi项目Celer提出了个新的思路,称为“原地扩容”,原地的意思就是,让DeFi项目继续在Layer1即可,不需要专门去Layer2另外部署专门的版本,即可通过Celer的方案--Layer2.finance,实现扩容。

根据Celer团队的介绍,在该场景下,用户的资产存放在Layer2链上(Celer从基于OptimisticRollup的方案开始,后续扩展升级,支持ZKRollup),然后用户发送指令,告诉Layer2.finance协议自己的操作要求,指明将自己的多少资金、存放到哪些DeFi协议中,比如Curve、AAVE、Compond等位于以太坊Layer1网络上的DeFi协议。

通过这种方式,Layer2充当了命令代理,用户存储资产+?发送指令即可,而具体的业务逻辑,则仍然是交给了Layer1上的DeFi协议执行。而不同用户的命令,可以通过合并交易的方式,更经济的与Layer1合约交互。

该方案预计在3月份上线。

MaticNetwork品牌重塑:Polygon

Polygon原名为MaticNetwork,则走了另外一条路,定调为Layer2聚合器,通过两种方式实现扩容:

依赖以太坊网络,借助对应网络上的验证者,并支持MaticPlasma、zkRollups、OptimisticRollups、Validium等方案。

建立自己的子链体系和独立的验证节点,自行负责自己的安全性。这一方向,目前已经上线的是MaticPoS链。

MaticNetwork升级之后的方案走得更远,除了依托现有生态之外要独立建立自己的生态体系,所付出的努力也要更多。据统计,目前有80多个DApp部署在Polygon上,涵盖DeFi、NFT、游戏等领域。

按照当前的进展,MaticPos链和MaticPlasma方案已上线,而目前还未支持zkRollup和OptimisticRollup,这些方案会在未来上线。限于篇幅,对Polygon不再展开。Polygon链接见:https://polygon.technology/

六、??小结

三月份会很热闹,Arbitrum、Optimism的主网上线,标记着我们目前处在Rollup等Layer2方案的爆发前夜。Layer2方案争夺用户的举措,会成为三月份以及上半年的一大母题。

而不同Layer2(具体来说Rollup)之间如何兼容,避免破坏DeFi的协作性?目前见到的这几个方案,其实也都在摸着石头过河。Vitalik的提案,Hop的实现,以及Celer的创意,或许能够解决各自设想中的问题,但是跨Rollup实现DeFi的调用组合,仍然是个摆在前方的大难题。

另一方面,最近Sushi等协议在多条链上部署的动作,或许预示了另外一种可能性,跟Hop方案之中所提到的类似,借助于AMM+协议自身代币的方式,或许许多DeFi协议会先尝试在内部打通不同Layer2网络及Layer1之间的隔阂,形成闭环。

也许未来随着更多DeFi加入Layer2的行列,更广泛意义的DeFi聚合器巨无霸将会出现,现在还只是刚刚开始,读者朋友们不妨多想想多看看。

参考资料:

https://mp.weixin.qq.com/s/2HYIsxnUaovKYs19xQ_KbQ

https://www.trustnodes.com/2021/03/02/vitalik-buterin-proposes-cross-rollup-scaling-solution

https://www.chainnews.com/articles/872971457746.htm

https://hop.exchange/whitepaper.pdf

声明:本文为作者独立观点,不代表区块链研习社(公众号)立场,不构成任何投资意见或建议。

加密行业前沿趋势,区块链行业一手信息,挖掘分析潜力项目,欢迎加入区块链研习社精心打造的「区块客空间」,与资深投资人一起捕获百倍币!

-END-

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

水星链

[0:0ms0-1:354ms