STAR:一文读懂StarkNet的开源堆栈

Web3降智系列是我在2023年新开始的一个以日常交流中Web3er对一些知识和概念的误解为引子,以即使你在忙了一天后大脑停机的降智状态也能读懂为目的,通过讲述设计思想而不是外在表现,尽量不涉及具体公式和代码的面向非技术人员的科普系列。??

继上次我们提到StarkNet发布了开源的Sequencer后,StarkWare又搞了一个大新闻:StarkNet的Prover即将开源!

不知不觉的,从去年11月Cairo语言开源之后,三个月的时间内,StarkNet的所有组件全部重写+开源。在这里,我们回顾一下StarkNet的开源堆栈吧。

整体架构

首先,我们先复习一下上次的文章里提到的StarkNet架构。

Shiba Inu将在生态系统项目中添加数字ID:金色财经报道,Shiba Inu开发人员将把数字身份服务与所有平台应用程序联系起来。Shiba Inu开发人员一直在与社区项目合作,例如那些使用SHIB或计划在即将推出的Shibarium区块链上构建的项目,以确保SSI部署是优先事项。

这些开发人员表示,加拿大和欧盟对数字身份和数据保护的兴趣日益浓厚,可能有助于将Shiba Inu定位为比其他区块链更温和的项目。[2023/8/3 16:16:20]

Sequencer?负责管理和协调交易的执行顺序。Sequencer可以认为是一个交易队列,它确保在同一个区块内的所有交易按照指定的顺序执行,并且确保没有交易被重复执行。Sequencer还负责验证交易的合法性,并将其写入区块链。

Prover则负责生成关于Sequence执行轨迹有效性的加密证明。目前,这项工作是由单一的Prover,即「ShareProver」或「SHARP」执行的。

Shell Protocol推出NFT AMM产品:Odaily星球日报讯 DeFi协议Shell Protocol推出NFT AMM产品,该产品基于Proteus AMM引擎,支持USDT、USDC、DAI等代币而不仅仅是ETH。目前该产品仅支持Shell Protocol发行的Government Toucan NFT。[2023/4/15 14:05:50]

Verifier位于L1,用于验证StarknetProver产生证明的智能合约,如果运行成功,其将更新以太坊L1上的状态用于记录保存。

在上一篇文章里我们提到了上述三个部件,这一次除了Sequencer和Prover,我们还将对FullNode进行说明。

Sequencer—Blockifier

Rocket Pool发起旨在限制自身ETH质押占比的社区投票:2月2日消息,以太坊流动性质押协议Rocket Pool发起旨在限制自身增长的社区投票,将于2月13日结束投票。

如果该提案最终投票通过,Rocket Pool将建立一套pDAO指导原则,包括Rocket Pool按照以太坊生态健康的最佳利益行事、考虑其对以太坊的短期影响和长期影响等,以为Rocket Pool的决策过程提供信息,限制其生态系统中质押的ETH的全网占比。[2023/2/2 11:42:25]

Starknet的新SequencerBlockifier已于1月26号发布,其节点部分和CairoOS部分分别基于将在下面提到的Papyrus和Cairo-rs。之前的Sequencer是一个闭源的由python编写客户端,且只由StarkNet自己控制。而这个Python客户端是连官方也承认的慢,而且也没实现交易执行的并行性,这严重影响了StarkNet的TPS,且不符合去中心化思想。

达拉斯牛仔队Dak Prescott与Blockchain.com签署代言协议:8月23日消息,NFL达拉斯牛仔队四分卫Dak Prescott与加密货币公司Blockchain.com签署一项多年的代言协议,具体财务条款未披露。作为协议的一部分,Dak Prescott将出现在电视、广播和社交媒体的广告中,并将在各种活动中亮相。(彭博社)[2022/8/23 12:43:59]

这个由Rust编写的Sequencer开源后,最基础的,是可以让任何人都可以自行编译和运行自己的Sequencer客户端。同时根据官方自己的信息,这个客户端大幅度的提高了执行速度。而官方的后继计划也在路上:

-整合现有的StarkNetSequencer,通过替换其当前用Python编写的事务块化组件。

-实现交易执行的乐观并发。

-将Blockifier扩展成一个完整的StarkNetSquencer,替换当前使用的sequencer。

FullNode—Papyrus

FullNode,即全节点,在Starknet中指的是一个PathFinder客户端或者运行这个客户端的机器。一个全节点会记录rollup中执行的所有交易,并跟踪系统的当前全局状态。它通过p2p网络接收此信息,每当创建一个新块时,都会共享全局状态和与其相关的有效性证明。

而Papyrus,是一个StarkNet全节点的Rust实现,已经于1月16号发布。它将成为新的StarkNetSequencer的基础的一部分,大大提高StarkNet的TPS。开源Papyrus,将有助于提高StarkNet性能和去中心化。

CairoOS—Cairo-rs

CairoOS是Sequencer中用来执行以Cairo语言编写的合约的虚拟机。而Cairo-rs,是一个由第三方开发团队Lambdaclass开发的新的开源CairoVM,用以替换老旧的由Python开发的CairoVM。

Prover—???(名称未定)

那么这次的开源Prover又对于StarkNet的架构有什么意义?第一是为Prover的去中心化做准备,第二则是为了提高StarkNet的TPS。目前StarkNet仅有官方运行的单一Prover,叫做即「ShareProver」。为什么它的名称里有个共享?是因为这个证明器不仅负责生产StarkNet的证明,还要负责生成StarkEX的证明。这严重影响了StarkNet的TPS,且不符合去中心化思想*agian。

有了开源的Prover之后,任何人都可以自行编译和运行自己的Prover。当然,Prover还仍然只是宣布开源,暂未放出GitRepo。而且因为ZK的特性,Prover为计算生成证明所需的计算远远多于Sequencer所执行的计算,所以根据官方的旧文档,Prover可能需要极高的配置,准入门槛非常高。

CairoLanguage

Cairo1.0也已经在今年开源,由于CairoLanguage是由Rust编写,StarkNet整个官方生态可以说已经变成了Rust全家桶。当然,Cairo1.0还未被StarkNet所支持,因此还不能用来编写智能合约。根据官方消息,将在2023年Q1之内实现对Cairo1.0支持。

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

地球链

[0:15ms0-1:121ms