近日,Scroll的联合创始人张烨受邀参加了斯坦佛的区块链研讨会,分享了Scroll的架构设计和挑战。在演讲的前半部分,介绍了Scroll的整体架构,并重点介绍其一些特殊的设计选择。
在后半部分,描述如何了从头开始构建zkEVM,并使用具体示例来演示该过程。最后,简要讨论了Scroll在密码学和协议设计领域面临的各种研究挑战。
背景和初衷
Scroll是以太坊的Layer2扩容解决方案。为了最大限度地兼容以太坊,Scroll正在构建一个字节码层面兼容的“zkEVM”,它可以证明EVM计算的有效性。Scroll设计的初衷就是为了开发者友好和最大化的可组合性。而构建zkEVM的挑战在于构建难度和生成零知识证明的成本极高。幸好近些年的一些技术突破使其慢慢变得可行,例如多项式承诺可以证明任意阶数,查找表可以实现存储读取约束,硬件加速可以加速证明生成,递归证明可以将证明进一步压缩,降低费用成本。
具体细节亦可参考Scroll博客系列#1:以太坊原生zkEVMRollup介绍
FTX:与债务人相关的信息均来自官方,注意其他渠道的网络钓鱼链接:7月12日消息,FTX官推发文提醒,诉说有关于FTX债务人的官方公开通讯均来自官方渠道,并再次强调claims.ftx.com是唯一官方的FTX客户索赔网站,FTX债务人将公布该网站的启用时间。提醒用户注意来自其他渠道的网络钓鱼链接。
此前消息,索赔网站在今日凌晨开放约一小时后下线,FTX债务人提交客户索赔证明的截止时间已定为美国东部时间2023年9月29日4:00。[2023/7/12 10:49:49]
Scroll架构
Scroll节点是应用和用户与Scroll交互的主要途径。它由三个模块组成,排序器(Sequencer)、协调器(Coordinator)和中继器(Relayer)。
排序器提供JSON-RPC接口并接收L2交易。每隔几秒钟,它就会从L2的内存池中取回一批交易并执行它们,以生成新的L2块和新的状态根。Scroll的排序器实现基于Go-Ethereum(Geth),是最主流的以太坊节点实现之一。通过分叉Geth,我们可以实现最佳的兼容性并继承已经经过时间考验的安全性。
一旦生成了一个新的块,协调器就会收到通知,并从排序器接收这个块的执行踪迹。然后它将执行踪迹分派给从Roller池中随机选择的Roller以生成证明。
中继器监视同时部署在以太坊和Scroll上的Rollup和Bridge合约。它有两个主要职责。首先,它监控Rollup合约以跟踪L2块的状态,包括它们的数据可用性和有效性证明。其次,它监视同时部署在以太坊和Scroll上的Bridge合约的存款和取款事件,并将消息从一层中继到另一层。
每个L2区块将经过如下三个阶段,直到最终确认。
Pre-committed表示一个区块已经被一个排序器提议并发送给Rollers。虽然Precommitted区块还不是ScrollL2上的正式部分,因为它们还没有发布在以太坊基础层上,不过信任排序器的用户可以按预期进行下一步操作。目前预估Pre-commited阶段只需1-2秒。Committed表示该区块的交易数据已经发布在以太坊的Rollup合约上。这确保了区块数据可用,但不能证明它是正确执行的。目前预估Committed阶段需要数分钟。Finalized表示通过验证以太坊链上的有效性证明,已经验证此区块中的交易正确性。经过最终确认的区块被认为是ScrollL2链上的正式部分。目前预估Finalized阶段需要10分钟以上Pre-Alpha测试网阶段由于证明者的算力不足,因此整体流程的时间要大于所预估的时间。
美国众议院议长麦卡锡:债务协议仍有一些工作未完成:5月27日消息,美国众议院议长麦卡锡对记者表示,我们还没有就债务上限达成协议,仍有一些事情未解决。会在时机成熟时达成债务上限协议。美国财长耶伦提出的新的X日日期(6月5日)不会改变任何事情。麦卡锡还表示国会可在6月5日的截止日期前完成工作。[2023/5/28 9:46:34]
具体细节亦可参考Scroll博客系列#6:Scroll的架构概览
流支付协议Superfluid推出无代码代币归属解决方案:金色财经报道,流支付协议Superfluid在博客上宣布了一种无代码的代币归属解决方案Superfluid Vesting,Superfluid使用Superfluid设置归属计划有五个主要好处:简单的用户界面、充分的流动性和可组合性、降低的波动性和增强的安全性。[2023/2/22 12:21:21]
zkEVM的本质
zkEVM的本质是对EVM虚拟机计算生成的执行踪迹生成证明。Scroll的zkEVM中设计中,第一层包括直接证明EVM的逻辑,包括EVM电路,RAM电路,Storage电路及其他电路,例如验证ECDSA签名的Signature电路;第二层进行证明第一层证明的聚合证明。出于动态的执行踪迹的考虑,证明系统的前端部分Scroll采用了目前最新的Plonkish协议,对比标准的Plonk用Permutation关联前后的约束,Plonkish使用了更低阶的Customgate,可以灵活得设定每一步的约束。
在硬件加速方面,Scroll拥有独有的PipeZK加速方案。对于第一层的EVM电路,加速后的GPU可以提升9倍速度,在30秒内完成证明。对于第二层的聚合电路,加速后的GPU可以提升15倍速度,在约2分半内完成证明。由于Pre-Alpha测试网目前只有10个左右的证明者,实际速度可能会略慢于实验数据。
具体细节亦可参考ScrollDevcon6系列#1:zk-Rollups的证明系统选择
Gemini交易所将从6月15日起不在提供免费的加密提款服务:金色财经报道,Watcher.Guru发推称,Gemini交易所将从6月15日起不在提供免费的加密提款服务。[2022/6/12 4:19:40]
诺奖得主埃里克·马斯金:加密货币过于流行令人担忧:5月16日消息,近日,在2022政府与市场经济学国际研讨会上,2007年的诺贝尔经济学奖得主,政府与市场经济学国际学会联合主席埃里克·马斯金对比特币进行了十分严厉的抨击,并对中国禁止加密货币表达了赞赏。埃里克·马斯金认为,货币最初发明,就是为了使商品交换更容易。不幸的是,比特币一出现,我们又回到了原始的以物易物的方向。故此,埃里克·马斯金认为,随着各国创建标准央行货币的数字形式,比特币的所谓优势也将不复存在。不仅如此,比特币等加密货币可能带来非常大的危害。埃里克·马斯金认为其潜在危害体现在两方面。
一是货币政策,逆周期货币政策。每个负责任的政府都会把货币政策作为可用的重要工具之一,一方面用来对抗经济衰退,另一方面可以对抗通货膨胀。当经济陷入困境时,政府将增加货币供应量。这就使得获得信贷更容易,从而有助于经济摆脱衰退。但当经济繁荣时,央行必须收缩货币供应量。加密货币可能会干扰良好的货币政策。如果人们使用比特币等加密货币,货币政策的影响会相应变小,走出衰退会变得更加困难。
另一个是与银行业有关。埃里克·马斯金说,支持加密货币的人有时会说,它消除了对银行的需求。人们可以在没有银行的情况下安全地汇款,可以在没有银行的情况下存钱。然而,这种观点忽略了银行发挥的关键作用,即评估和向企业家提供贷款。[2022/5/16 3:18:26]
有趣的研究方向
当前,Scroll的研究团队在协议层和密码学方向也在进行着有趣的研究探索。
研究的第一个方向,是证明者和排序器的去中心化。Scroll所提出的第一个方案是排序器和证明者的任务交给一个节点,同时处理交易和生成证明,代价是可能会加重节点负担,产生一定程度的中心化。第二个方案,排序器节点按共识出块,证明者节点可以自由提交证明,代价是系统将依赖最快的验证人,其他算力不足的证明者将没有激励进一步提交证明,退出系统,证明系统将被最快的验证者所绑架。针对第二个方案,Scroll所提出的解决方案是设置时间窗口,在规定时间内提交证明的即可获得证明奖励。
研究的第二个方向,是L3存在的意义。L3最早由StarkNet所提出,但存在争议的点在于,如果数据可用性放在L1上,并不能节省太多的成本,如果数据可用性不放在L1上,大可以在L2实现类似的功能。L3更可能适用于应用的自定义需求,例如独有的排序器,自定义的执行环境,或是更低价的存取款费用,亦或是L3之间所需的可组合性。关于L3的更多探讨,可参考Vitalik:什么样的Layer3是有意义的?
研究的第三个方向,是L2层之间的流动性分配。例如Uniswap可能需要在不同的L2层上都分别部署流动性池。如何将不同的L2层之间的流动性池打通,对于用户体验上来说将会是极大的提升。
研究的第四个方向,是zkEVM的资源定价问题。计算的成本主要由验证和证明交易组成,存储的成本主要是历史交易和calldata的数据存储。最理想的状态是维持现在以太坊主网的资源定价方案,但是由于Keccak等zk不友好的运算所带来的成本增加,仍然需要对zkEVM的资源定价方案做相应的调整。
其他的研究方向包括,零知识证明中电路的随机性,算数化。Scroll的证明系统分为两层,因此证明者的硬件加速算法也围绕两层设计展开。Scroll目前在第一层和第二层证明系统都选择了Halo2协议,但也在积极探索不同证明系统间的可组合性。
当然目前zk系统仍在开发中,也未经过审计和实践检验,因此在可预见的长期时间内,无法保证这些代码无懈可击,代码层面仍需要大量的审计工作。具体可参考ScrollRollupDay#1:Vitalik介绍用多重证明强化Rollup安全性
责任编辑:Kate
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。