ROVER:StarkNet 组成部分、工作原理与网络延迟_RKN币

在这篇文章中,我会向你介绍三个东西

StarkNet的组成部分StarkNet的工作原理StarkNet网络延迟的原因首先我要说明,文中75%以上的知识是由StarkNet开发倡导者?@barretodavid?写的文章翻译而来,剩余的25%是我增添的,有英文阅读能力的小伙伴可以自行阅读原文。

https://david-barreto.com/starknets-architecture-review/#more-4602

组成部分

StarkNet有五个组成部分。分别是在StarkNet上的Prover,Sequencer和全节点;以及部署在以太坊上的验证者和核心状态合约。接下来我将逐步解释他们的功能,需要提醒的是下文出现的交易和事务都由transaction翻译而来,根据语境进行变换。

StarkWare将于8月31日开源Stone Prover:8月22日消息,StarkWare宣布将于8月31日在Apache 2.0许可证下开源Stone Prover(原STARK Prover)。开发人员将能够独立审查、优化和使用Stone Prover代码并在其基础上进行构建。StarkWare表示,开源Prover是Starknet去中心化的重要一步。

目前StarkWare已经开源Cairo、Papyrus Full Node以及所有Starknet版本,正在构建的Starknet Sequencer也将开源。[2023/8/22 18:15:56]

排序器

是一个链下服务器,接收所有的事务、订单,确认并捆绑他们到区块。目前只有一个由StarkWare控制的排序器。但在未来有去中心的区块创建计划。为了让排序器确认交易,它必须使用Cairo操作系统来执行交易,这是EVM的替代品,用于用Cairo编写的智能合约。

Gate.io 将于明日23:00开启Startup项目WSIENNA:据官方公告,Gate.io将于5月4日(明日)23:00 至5月5日 21:00开启Startup项目Sienna(WSIENNA)认购通道,22小时内有效下单同等对待。用户需要达到VIP1和以上级别才能参与认购,VIP等级越高的用户认购额度越高。用户下单后到结束认购后2小时内,请务必保证现货交易账户中有不低于认购金额的足够金额,金额不足将自动排除在有效订单之外。请务必注意:认购结果预计于5月6日 00:00公布。[2021/5/3 21:19:55]

证明者

证明者负责生成一个加密证明,以证明排序器在通过执行新区块中包含的交易得出新的全局状态时进行计算的完整性。为了让验证器生成有效性证明,它需要得到由排序器执行计算的"执行轨迹",由Cairo语言生成。

mStable将协议代币MTA的推出时间延迟至少一周:稳定币聚合协议mStable在博客宣布,协议代币MTA的推出将延迟最多一周的时间(原定于今晚10点推出)。mStable称该决定是在综合考虑Balancer和Uniswap流动池启动时参与者之间的激励机制与MTA代币的长期目标不一致,并与社区协商后作出的。[2020/7/15]

目前系统中只有一个证明者,它不仅为StarkNet生成证明,也为所有其他运行在自己的StarkExRollup上的应用程序生成证明。这就是为什么这项服务也被称为"共享证明器"或SHARP。

全节点

是运行Pathfinder客户端的机器,以记录在Rollup中执行的所有事务,并跟踪系统的当前全局状态。

全节点通过p2p网络接收这些信息。全局状态的变化和与之相关的有效性证明在每次创建新区块时都会被共享。当一个新的全节点建立后,它能够通过连接到Ethereum节点并处理所有与StarkNet相关的L1事务来重构Rollup的历史

声音 | Gate.io回应ESET报告:未发现异常 仍立即删除了StatCounter统计功能:今日早间The Register媒体报道称,黑客修改StatCounter分析平台使用的avaScript并嵌入Gate.io页面。对此,Gate.io发布公告表示,“在收到ESET报告的时候,立即通过virustotal在56个杀软件中进行检查,均未报告任何问题。但是为了安全起见,我们仍然立即删除了StatCounter的统计功能,目前未发现其他异常行为。”[2018/11/7]

验证者

验证者是以太坊上的一个智能合约,它从证明者那里接收新生成的证明作为L1交易并在链上进行确认。确认的结果被发送到StarkNet的核心智能合约以保存记录,并从StarkNet触发一组新的L1交易来更新链上的全局状态以保存记录。

StarkNetCore

Core是一个智能合约,每当一个新的L2区块被创建并且其加密证明被验证者成功地在链上确认时,它就会从StarkNet接收对L2全局状态的改变。

状态转换以"calldata"的形式发送,以节省多个L1事务的气体,因为单个区块的空间有限。

这些关于StarkNet的"metadata"被StarkNet的全节点解密,以便在首次同步时重建网络的历史。

工作原理

当我们在StarkNet上发起一个交易,Starknet中的排序器给交易排序,确认、出块后执行交易;StarkNet上的证明者给交易生成证明,并发送给以太坊的验证者;验证者将收到的证明作为L1交易在以太坊验证(validata),验证结果发送给同在以太坊上的StarkNetCore合约,当StarkNetCore合约确认验证者在链上成功确认其加密证明时,它都会接收对StarkNet全局状态的更改。状态事务作为“calldata”来发送,以节省L1事务gas。这些“metadata”可被StarkNet全节点解密。全节点基本扮演存储角色,状态改变,元数据,证明。记录在Rollup中执行的所有事务,并跟踪系统的当前全局状态。在有必要的时候,解密“metadata”来重构StarkNet的历史。

网络延迟

目前我们在StarkNet上的网络延迟由两个因素构成。

第一个是StarkNet固定的一分钟出块时间。

关于一分钟出块时间,StarkNet上的证明者每隔一分钟就会生成一个有效性证明,对应于过去60秒内发生的所有交易。有效性证明和该间隔期间的状态转换被提交给完整节点,每一分钟完成一次StarkNet上的结算。

简单来讲,StarkNet每一分钟出一次块,有图为证:

而每隔一小时,系统会从每分钟创建的所有有效性证明中生成一个有效性证明,并将其与该区间内发生的所有状态变化一起提交给以太坊,每小时在以太坊上完成一次结算。不过这个一小时并不需要用户等待。

第二个因素是证明生成速度。它和一分钟出块的时间是并行的。

目前StarkNet的证明生成速度慢于排序的速度,但在StarkNet之后的升级中增加了并行交易,因此可以进一步提升处理量。

总结:StarkNet的等待时间由固定的一分钟出块和证明生成速度构成。前者实际不到一分钟,后者可以随着网络升级和ZK加速硬件的推进而得到改善,这两者也是并行的。因此,StarkNet的网络延迟将会越来越低。

责任编辑:Kate

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

区块博客

[0:0ms0-3:553ms