Scroll近期在一级市场的表现非常好,所以我们今天来深入了解一下Scroll的技术与架构设计。
Scroll是一个EVM等效的zkRollup以太坊扩容方案,核心的模块是zkEVM,用于证明EVM在Layer2中执行的正确性。目前已经开发了一年的时间,并与以太坊基金会的隐私小组进行了深入的合作。
为了使得zkEVM变成一个完整的zkRollup,Scroll围绕zkEVM构建了一个完整的Layer2架构。
目前的架构包含了中心化的排序节点与去中心化的证明网络,但未来Scroll将会把排序节点也去中心化,使得整个网络更加健壮。
Scroll的架构
目前的Scroll架构包含三个主要的组件:
Scroll节点:从用户交易中构建L2的区块,提交到以太坊主网,并在L1和L2之间传递信息。Roller网络:生成zkEVM的证明,确保交易被正确执行。Rollup和桥合约:为Scroll交易提供数据可用性,验证zkEVM证明,允许用户在以太坊网络和Scroll之间转移资产。这些组件的角色关系我们可以从下图中得出:
Scroll节点
Scroll节点是应用和用户与Scroll网络交互的主要方式,Scroll节点包含了三个模块:
Sequencer
Sequencer提供了一个JSON-RPC接口从而获得Layer2上的转账信息。每隔几秒,Sequencer会从L2的内存池中获得一系列转账记录,执行这些转账并生成新的L2区块与新的状态根。
Scroll上的Sequencer是基于经过时间验证的Geth开发的,目的是为了保证兼容性和安全性。
Coordinator
Web3数字广告初创公司ExperientialEtc完成35万美元pre-A轮融资:金色财经报道,Web3 数字广告初创公司 ExperientialEtc宣布完成 35 万美元 pre-A 轮融资,We Founder Circle、India Accelerators 等投资者参投,其估值已经达到 2200 万美元。ExperientialEtc 已经为 200 多个品牌提供基于 AR、VR、游戏、区块链和元宇宙技术的数字广告解决方案,包括 Amazon、SonyPix、BCCI 等,新资金将推动其加速扩张并进一步挖掘视觉技术和元宇宙应用潜力和 Web3 市场机遇。(adgully)[2022/11/17 13:18:28]
当新的L2区块被生成之后,Coordinator会从Sequencer中获得交易执行记录。然后Coordinator将执行记录分派到从roller池中随机选择的roller以生成证明。
三箭资本欠Moonbeam基金会逾 2700 万美元:7月19日消息,三箭资本欠Moonbeam基金会超过2700万美元,包括1700万美元的稳定币和当前价值1000万美元的Moonbeam代币。Moonbeam董事Aaron Evansa在6月写信给三箭,我们重申要求立即偿还我们的两项未偿贷款本金(7MM USDC和10MM USDT),该协议于2021年9月20日由Moonbeam基金会与3AC达成,3AC以12%的利率借入了开放式贷款。另外,Moonbeam 还聘请了 3AC 作为该网络的 moonriver (MVR) 和 glimmer (GLMR) 代币的“流动性顾问”。(CoinDesk)[2022/7/19 2:23:42]
Relayer
Relayer会监视部署在以太坊和Scroll上的Rollup和桥合约,这主要有两个作用。
首先是监控Rollup合约以跟踪L2块的状态,包括数据可用性和有效性证明。
其次,Relayer监视部署在以太坊和Scroll上的桥合约的存取款事件,并将消息在两条链之间中继。
Roller网络
Rollers在网络中充当证明者,负责为zkRollup生成有效性证明。Rollers有望利用GPU、FPGA和ASIC等加速器来减少验证时间和验证成本。下图显示了Roller如何为每个块生成有效性证明:
Roller首先将从Coordinator接收到的执行序列转换为circuitwitnesses。其次,Roller为每个zkEVM电路生成证明。最后,Roller使用证明聚合方法将来自多个zkEVM电路的证明组合成一个块证明。Rollup和桥合约
Scroll通过Rollup和桥合约来连接以太坊主网和Scoll网络,保证L2交易的数据可用性,并使用户可以在L1和L2之间转移资产。
Rollup合约从Sequencer中获取L2的状态根作为calldata。这为Scroll块提供了数据可用性,并利用以太坊的安全性来确保包括ScrollRelayer在内的索引可以重建L2块。一旦建立L2区块有效性的区块证明已被Rollup合约验证,相应的区块将被视为在Scroll上最终确定。
部署在以太坊和Scroll上的Bridge合约允许用户在L1和L2之间传递任意消息。在这个消息传递协议之上,Scroll还构建了一个去信任桥接协议,允许用户双向桥接ERC-20资产。
要从以太坊向Scroll发送消息或资金,用户需要在Bridge合约上调用sendMessage。
Relayer将在L1上索引,并将其发送到Sequencer以包含在L2块中。从Scroll发送回以太坊的消息在L2Bridge合约上使用了类似的过程。
Scroll的zkRollup是如何工作的
将上述的三个模块放在一起,我们就可以知道ScrollzkRollup的整个工作流程了,如下图所示:
Scroll中的L2区块生成之后,将提交给以太坊主网,具体的过程如下:
1.Sequencer生成了一系列的块,对于第i个块,Sequencer执行追踪T,并将其发送给Coordinator。同时,Sequencer将交易数据D作为calldata提交给以太坊上的Rollup合约以获得数据可用性,再将由此产生的状态根和交易数据作为状态提交给Rollup合约。
2.Coordinator随机选择一个Roller为每个块生成有效性证明。为了加快证明的生成过程,可以在不同的Roller上并行生成不同的区块证明。
3.在为第i个块生成证明P后,Roller将其发送回Coordinator。每隔k个块,Coordinator向另一个Roller派发一个聚合任务,将k个块的证明聚合成一个证明A。
4.最后,Coordinator将聚合证明A提交给Rollup合约,通过对照先前提交给Rollup合约的状态根和交易数据承诺来验证聚合证明,最后确定L2上的之间的块。
经过这样的过程Scroll上的区块会被最终确定下来,每个L2的区块在这一过程中会经历三个过程,其分别为:
Precommitted:表示一个区块已经被Sequencer提交并发送给Rollers。Committed:表示区块的交易数据已经被发布到了以太坊网络的Rollup合约上。Finalized:表示此区块的交易已经被正确地执行。综上所述,Scroll能够在L2上执行EVM字节码,同时从以太坊主网继承强大的安全性保证。这也是Scroll这种EVM等效和其他EVM兼容方案的最大不同点。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。