STA:全面解读Starkware:底层设计、Cairo语言、团队及经济模型

在目前,以太坊的发展趋势正越来越倾向于模块化区块链。

在模块化区块链的架构下,以太坊上的交易计算和执行不再由主网来操作,这部分工作转移到链下的Layer2上来完成,这种方案减轻了主网的负担,大大扩展了以太坊的性能。

未来以太坊主网只承担完成共识和数据可用性的工作,而承担了所有计算执行的Layer2将变为一个类似云计算服务商的角色,正如现在的亚马逊云和阿里云等。

Rollup中又有两种实现方案,分别是OptimisticRollup和zk-Rollup。其中:

OptimisticRollup采用欺诈证明,首先假设上传到主链所有交易都是合法的,并设置挑战期,允许验证者提出证明来挑战有问题的交易,一旦证实有欺诈行为发生,就对欺诈者进行惩罚,对挑战者进行奖励。

Zk-Rollup则采用有效性证明,在链下进行所有交易的验证和打包,验证后的交易被提交到主链时附上零知识证明来证明交易的有效性。用StarkWareCEOUri的话来说:“它提供了无需信任的计算诚信,它是这样一种能力——即便没有人监督也能确信该计算被正确地执行。”非常类似于早期比特币的理念。

Rollup中主要有三个角色:

Sequencer:主要负责从用户那里收集交易,对它们排序并将新的Merkle根传到Layer1的rollup智能合约上,类似于矿工。

Prover:负责计算验证所有的交易,并生成一个zk-proof来证明交易的有效性。

Verifier:通常被部署在Layer1上,负责完成部分计算来验证Prover提交的proof的有效性,以确保其提供了计算诚实性所需的所有的信息。

OptimisticRollup可以兼容EVM,技术方案成熟且落地早,对开发者来说,迁移成本较低,代表项目Arbitrum和Optimism是目前rollup中市场占有率最高的。而zk-Rollups因为不兼容EVM,技术难度也比较大,开发进度较慢,目前应用并不如可以面向智能合约的OP系的rollup广泛。

虽然如此,zk-Rollup与OptimisticRollup相比还是有诸多优势,例如:

可扩展性更好。这是由于zk-Rollups需要上传到主网的数据小于OptimisticRollups。因为zk-rollups发布到链上的交易信息已经全部被验证过并附上了证明,其他人只需要验证证明,而无需验证交易,所以验证交易相关的数据就无需上传,但是OptimisticRollups由于需要接受欺诈证明的挑战,所以需要把这些数据也上链。在实际应用中,zk-Rollup提升性能的能力大概是OptimisticRollups的十倍左右。

交易最终确定时间短。zk-Rollups发布到链上的交易已经经过了验证并随附了证明,验证起来比较简单,通常验证时间在十分钟左右,但是OptimisticRollups提交的交易由于存在欺诈风险,需要接受欺诈证明的挑战,这个挑战的时间窗口约为1周,所以并不能实现即时取款等功能。

安全性更高。zk-Rollups上传的交易都通过验证并附带了证明,作恶的可能性小。相比于OptimisticRollups可能上传含有欺诈内容的交易,zk-Rollups的数据可靠性和安全性都更高。

Vitalik曾在2021年说过:“短期内,optimisticrollups会因为其EVM的兼容性胜出。在中长期来看,随着zk-SNARK技术的改进,zk-rollups会赢得所有的用例。”可见长期来看,Vitalik更看好zk-rollups。

隐私币项目zcash使用的就是zk-SNARK技术。zk-STARK则被认为是zk-SNARK的改进版,是一种更快和更便捷的实现方式,旨在对zk-SNARK进行一些优化,弥补它的一些缺点。

从名字中可以看出,zk-STARK相对zk-SNARK具有可扩展性和透明性的优点,此外zk-STARK还具有更高的安全性。具体原因是:

可扩展性。凭借zk-STARK技术,证明者的运行时间最多为计算规模的拟线性而验证时间为计算量的多项式对数。而在zk-SNARK中,证明者可能面临复杂而昂贵的证明过程,以及相对应的较长的验证耗时。

透明性。zk-STARK不需要进行可信初始化设置,不像zk-SNARK需要可信设置的公共参考字符串,而是使用随机公共验证,所以不用担心参数被破坏和修改;

安全性。由于zk-STARK依赖于哈希函数来进行对称加密,哈希函数抗碰撞的特性带来了抵御量子攻击的能力。

由于技术成熟,推出较早,目前在zk领域zk-SNARK仍是主流,而zk-STRAK技术难度大,缺少开发者,所以还未被广泛采用。但是凭着不可忽视的优势,相信未来zk-STARK会成为更被接受的解决方案。

创始人EliBen-Sasson是世界顶级的密码学科学家,在以色列理工学院担任教授,也是zk-SNARK和zk-STARK技术的联合发明者。项目采用图灵完备的Cairo语言进行开发。

我们以StarkEx为例,StarkNet的工作流大致类似。

用户首先在应用中进行操作,通常是应用的客户端或者网页前端,应用执行这些动作后向StarkEx服务发送交易;

StarkEx服务把这些交易打包执行后把包裹发送给SHARP,这个过程中的执行是由Cairo语言编写的程序完成的,值得一提的是,StarkWare通过Cairo这一图灵完备的语言,将所有智能合约的计算结果转化成了可证明的多项式方程,由此让智能合约与有效性证明兼容;

SHARP是一个基于Stark的证明系统,由它来生成能证明这个批次交易有效性的证明;

SHARP把Stark证明发给部署在Layer1上的Verifier,由Verifier来完成验证;

StarkExService会发送一个链上状态更新交易给Layer1上部署的StarkNet智能合约,这个智能合约只会在Verifier完成了证明之后才会接受这个新的状态变更。

StarkEx为应用提供定制化的ToB服务,运行在StarkEx上的应用可以自定义他们的业务逻辑。StarkEx服务于Defi和游戏等应用,能加快交易速度,降低交易费用,还可以通过ZK-Rollup或Validium两种方案来实现数据可用性。

StarkNet?是一个无需许可的去中心化、抗审查的通用layer2网络,任何用户和开发者都可以在上面部署使用Cario语言编写的智能合约。

这两种产品分别对应了两种不同的商业模式,前者为应用提供定制化服务并出售,而后者则提供无许可的通用服务然后收取网络上的交易费或者作为节点在交易费用优先的原则下抽取MEV。

StarkWare联合创始人EliSabasson曾做过一个比喻,将?StarkEx和StarkNet的分别比作为计算机和云,购买StarkEx就像拥有自己的定制化计算机,每个客户都拥有自己的扩容计算机。而StarkNet提供的是网络,是通用服务,所有人都可以支付费用并使用。

StarkNet的工作过程如下图所示。它与StarkEx的最大区别是在?StarkNet中由Sequencer取代了StarkExService来承担验证交易有效性、打包交易、调用Cairo程序执行的工作,而SHARP所承担的生成证明的工作,在StarkNet中由Prover负责。目前,Sequencer和Prover都由StarkWare官方团队来指定,这就带来了中心化的质疑。

在设想中,团队建设StarkNet的过程包括了四个阶段,分别是:

Step0--基础建设

Step1--Planets:单一操作者、单一app的rollup

Step2--Constellations:单一操作者、多个app的rollup

Step3--Universe:去中心化的操作者、多个app的rollup

在Step1中,一个StarkNet实例上只运行一个应用,开发者关注于如何在StarkNet这个扩容网络上实现自己的业务逻辑。

下一步将支持在同一个StarkNet实例上运行多个应用,并且这些应用将可以共享同一个全局Layer2状态。这将实现不同应用程序之间的互操作性,以及由于规模经济的提高而降低的gas成本。在这个阶段,StarkNet将成为一个功能齐全的框架,在以太坊之上运行具有任意业务逻辑的多个应用程序,每个实例由单个操作者运行。从用户的角度来看,StarkNet用起来和以太坊很像,只是可扩展性更好。

最后一个阶段是StarkNet对操作者进行去中心化的阶段。在这个阶段中,团队主要做两件事:使用rollup来实现更好的共识机制以及利用经济模型来对贡献者和操作者进行激励,吸引更多参与者来实现网络的去中心化。

Cairo语言

Cairo是Starkware用来为一般计算生成STARK证明的图灵完备的编程语言。应用开发者可以用Cairo定义任何的业务逻辑并完成链下证明和链上验证,而无需手动生成复杂的电路或AIR。

通过Cario编程语言,任何计算命题都可以进行快速、安全的编码证明。一个由Cario写成的应用程序可以证明其对应的执行逻辑,而一个Cario应用程序也可以集成多个Cario应用程序,形成SHARP。

SHARP可以聚合几个独立的Cario应用程序的交易,并在同一个STARK证明中使用。使用STARK证明,提出证明所需的时间与执行语句所需的时间大致呈线性关系。验证证明所需的时间与提出证明的时间则是对数关系。

由于验证时间远小于证明时间,就可以实现递归验证:一个Cairo程序可以验证多笔交易的正确性,同样也可以编写一个Cairo程序来验证多个Stark证明。由于只需要对数时间来实现验证,这样的递归验证可以极大程度地减少验证时间。

Starkware团队推出了Cairo的通用证明服务(GenericProofService,GPS),开发者可以使用这项服务用Cairo语言构建自己的应用。他们可以把自己包含业务逻辑的Cairo代码发送给GPS来证明,并在链上验证它们。

由于GPS支持使用一个证明来断言不同多个应用程序执行的完整性,从而使这些应用程序能够分摊证明验证的gas费用。

EliBen-Sasson:Co-Founder&首席科学家,希伯来大学理论计算机科学博士学位,长期从事计算完整性、密码学和零知识证明方面的研究。以色列理工学院计算机专业的教授。Zcash的创始科学家,zkSNARK、zkSTARK的发明者。

UriKolodny:Co-Founder&CEO,希伯来大学计算机科学学士,是一个商业经验丰富、善于合作的连续创业者。

AlessandroChiesa:Co-Founder&首席科学家,加州大学伯克利分校计算机专业的教授。Zcash的创始科学家,zk-SNARKs的联合发明者,简洁零知识证明的领先开源库libsnark的核心开发者。

MichaelRiabzev:Co-Founder&首席架构师。以色利理工学院的博士,曾在Intel、IBM工作。

OrenKatz:工程副总裁。希伯来大学计算机专业毕业,特拉维夫大学MBA,20年经验的资深工程师。

在融资方面,StarkWare共披露了七轮融资,涉及投资45笔,对外披露融资额2.73亿美元,2022年,D轮融资估值79亿美元,投资人包括Paradigm,SequoiaCapital和PanteraCapital等机构以及Vitalik。

交易费用:目前,StarkNet中的费用以ETH支付。但接下来,该项目预计费用将仅使用原生StarkNet代币支付。为了支持良好的用户体验,自动化和去中心化的链上机制将允许用户以ETH支付费用。

质押:对StarkNet的活跃性和安全性至关重要的某些服务可能需要质押StarkNet代币。这些服务可能包括排序、在达到L1最终性之前达成临时L2共识、STARK证明服务和数据可用性供应。预计这些服务将在2023年实现去中心化。

治理:改进StarkNet的提案将需要一个最低的代币持有阈值。对于对StarkNet的活跃性、安全性和维护至关重要的协议的所有更改,都需要直接或通过委托进行投票。例如,StarkNet操作系统的所有重大更新都需要获得代币持有者的批准。

StarkNet代币初始发行量为?100亿枚,17%?分配给StarkWare投资者,32.9%分配给核心贡献者,50.1%分配给基金会。同时,该代币具有增发机制,新的铸造代币和交易费用的一部分将授予给核心基础设施开发人员和智能合约开发人员。

分配给基金会的51%具体用途为:

9%?——生态开发者,使用者和社区。包括在6月1日前与StarkEx有过交互的部分用户。

9%?——社区退款——StarkNet代币的退款,以部分支付从以太坊加入StarkNet的成本。

12%?——资助用于开发、测试、部署和维护StarkNet协议的研究者和工作者。

10%——战略储备,用于资助符合基金会使命的生态系统活动。

2%?——捐赠给相关领域杰出的的机构和组织,如大学、非政府组织等,由StarkNet代币持有者和基金会决定。

8.1%未分配——以进一步支持StarkNet社区,具体方式由社区决定。

考虑到去中心化生态系统的惯例分配和社区的长期利益,给投资者和核心贡献者的49.9%将有4年的锁定期,并且将会采用1年的Cliff和线性的方式释放代币。

从代币分配可以看出,StarkNet代币奖励优先考虑核心基础设施和dApp的开发人员,而较少倾向于普通用户。

dYdX,ImmutableX,rhino.fi,celer和Sorare。根据官网显示的数据,StarkEx上累计的交易金额达到了7320亿美元,目前的TVL是4.61亿美元。

另一个产品StarkNet,根据www.starknet-ecosystem.com网站上的数据,目前生态中大约有100多个应用,其中数量最多的是Defi、NFT(24个)和基础设施。

比较知名的项目中,AAVE?和?Maker都将部署到StarkNet上,两天前刚刚官宣了Aave与StarkWare的第一阶段跨链合作已完成开发。该阶段是Aavev2在以太坊上的aToken跨链至StarkNet的智能合约基础设施,允许网络用户在StarkNet获取跨链aToken。而早在6月份,Maker已经上线了DAI在主网和StarkNet之间的转账。

值得一提的是,此前在StarkEx中占据主要TVL的dYdX在6月出走,选择了基于CosmosSDK的独立区块链来推出v4版本的产品。这次事件一定程度上影响了投资人对layer2和Starkware的信心。

从此次出走事件中也可以看出,真正拥有用户和影响力的应用在选择底层基础设施上拥有更多的话语权和主动权,它们并不依赖于某个单一的底层链,可以主动选择其他的底层公链,甚至自己搭建符合自己需求的应用链。

过去“胖协议瘦应用”的叙事或许会被重新定义。对于各种底层基础设施的项目来说,如何抓住自己生态中的优质应用,做好留存,也成为了当前需要重新思考的问题,毕竟,要捕获更多价值就要捕获更多用户,而真正与用户交互的是应用而不是底层,用户并不关心底层技术实现的原理,只会随着应用迁移而迁移。

结语

拥有强大技术团队的Starkware目前正按照他们的规划逐步开发产品:10月26日,他们官宣了已使用STARK证明编程语言Cairo写出编写完成ZK-EVM。

同时他们也面临着一些挑战,比如zk-STARK目前技术难度比较高,开发速度慢,开发人员少,这给生态应用的发展和留存带来了很多困难。dYdX的出走带走了项目中多数的TVL,暴露出底层基础设施对上层优质应用绑定能力不足的窘境,也让人们看到了优质应用在挑选底层链时强势的话语权。

但是由于技术的优越性,长期来说,我们仍然看好zk-rollup和STARK的发展。后期随着代币释放带来的激励效果以及网络逐渐转向去中心化,Starkware仍将会是Rollup赛道最有力的竞争者之一。

原文链接

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

链链资讯

瑞波币Staking:波卡生态中支持的钱包

“波卡知识图谱”是我们针对波卡从零到一的入门级文章,我们尝试从波卡最基础的部分讲起,为大家提供全方位了解波卡的内容,当然这是一项巨大的工程,也充满了挑战.

[0:6ms0-3:188ms