三月将会是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也公告主网处于即将上线阶段。
Orbiter Finance:向其他钱包转账旨在平衡各Rollup网络流动性:6月18日消息,据官方消息,Layer 2桥接项目Orbiter Finance发推表示:已注意到社区对我们向其他钱包地址转账的担忧,现在此澄清,此举是旨在平衡各Rollup网络流动性,Orbiter跨链服务运行正常。如果遇到任何卡顿的问题,请检查交易哈希并确认转账金额的最后四位是否为900X。如果修改了转账金额或没有正确使用我们的网站,请访问正确网站并查看交易状态,并等待退款。[2023/6/18 21:45:23]
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的二层账户。如果这样做了,交易费会不会特别高?
LayerZero宣布新增支持Scroll测试网:6月14日消息,跨链互操作性协议LayerZero在推特上宣布已在Scroll测试网上线,并在文档中列出endpoint信息。
此前6月8日消息,LayerZero发推称已新增支持Arbitrum Nova。[2023/6/15 21:37:24]
现在以太坊上会有很多用户体验方面的挑战。但我觉得6个月之后很多这些问题都会解决。?
那么如何解决?
三、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神提议,有一种简单的方法,可以将这些各自孤立的合约网络连接起来。
跨?Rollup转账的基本场景
“假设有一个交易中介,名为Ivan。Ivan在RollupA上有一个帐户IVAN_A(他完全控制该帐户)。Ivan也有一些资金存入到?Rollup?B上的智能合约IVAN_B中。”
设想有如下的操作:
以太坊扩容项目Scroll将于1月9日执行Pre-Alpha网络重置:1月3日消息,以太坊扩容项目Scroll表示将于1月9日执行Pre-Alpha网络重置,提高Pre-Alpha测试网吞吐量。网络重置完成后,Scroll建议用户重置并从钱包中删除所有Scroll网络,然后再重新添加。[2023/1/3 22:22:55]
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网络之中。
CFTC将对加密计划Control-Finance创始人进行缺席判决:7月6日,美国CFTC向纽约南部地区法院提交信函,计划推动对加密计划Control-Finance负责人Benjamin Reynolds的缺席判决动议。经法院批准,CFTC打算在提交本函后45天内,即2020年8月20日或之前提交动议。
据此前报道,2019年6月,CFTC指控Benjamin Reynolds通过名为Control-Finance“联盟计划”的庞氏局,从1000多名客户手中盗用至少22858.822枚比特币,至少价值1.47亿美元。(Finance Feeds)[2020/7/7]
当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转账完成。
动态 | 美国CFTC指控Control-Finance和其董事进行了1.47亿美元的加密计划:据Finance Feeds 6月18日消息,美国商品期货交易委员会(CFTC)指控Control-Finance Limited及其董事Benjamin Reynolds实施了一项1.47亿美元的比特币欺诈计划。据悉,Reynolds被控至少非法侵吞超1000名用户的22858 .822枚比特币。[2019/6/18]
至此,我们大致理解了Vitalik提案之中所提到的跨Rollup转账原理,并且只需要其中一个Rollup支持智能合约即可实现,主要引入了IVAN这一中间商来支持跨Rollup转账。
至于如何设置限定,避免中间结算层的资金不足和浪费、以及转账的Memo应该如何设定等技术细节,可以查看Vitalik的提案所述:https://ethresear.ch/t/cross-rollup-dex-with-smart-contracts-only-on-the-destination-side/8778。
四、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-
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。