解析 StarkWare 的架构与生态:估值 80 亿美元的扩容潜力

链茶馆
2022-06-16 22:21:00
收藏
StarkWare为何能够如此受资本青睐,其技术能力可以实现怎样的扩容效果呢?本文尝试解析StarkWare的架构和生态,理解其未来前景。

作者:echo_z,链茶馆

 

在以太坊的扩容路线中,ZK Rollup一直被寄予厚望。由于ZK Rollup能够生成极其简洁的证明,相比Optimistic Rollup进一步压缩了链上存储需求,因此能够释放更大的链上空间(L2背景知识传送门:《以太坊将会如何变化:读懂合并、扩容与L2之争》)。

按照V神的估算,ZK Rollup理论上可以将主网TPS提升~100倍,这也远远强过能够提升TPS~20倍的分片方案。

image

来源:https://vitalik.ca/general/2021/01/05/rollup.html

ZK系Rollups有两大龙头项目,一是StarkWare,二是ZKSync。二者都有较强的技术能力,也在测试网上有不少生态项目,但由于分别采用了不同的ZK Rollup技术,产品能力和进度上各有千秋。

其中,StarkWare有着更耀眼的资本背景:近期以80亿美元的估值完成1亿美元的D轮融资,位居四大主流Rollups项目之首。

image

主流L2项目一览,链茶馆制作

StarkWare为何能够如此受资本青睐,其技术能力可以实现怎样的扩容效果呢?链茶馆将在本文尝试解析StarkWare的架构和生态,理解其未来前景。

 

1. 产品体系

StarkWare的产品体系分为两部分。

其一是作为ToB服务的StarkEx,为每一个应用提供专门的Rollup技术服务,自2020年就已正式上线以太坊主网,相对成熟。

其二是作为通用L2的StarkNet,可以部署任意的智能合约、而不像StarkEx那样需要为特定应用做定制开发,StarkNet已于去年6月上线测试网、去年11月上线以太坊主网,但生态项目仍在测试网上运行。

二者所使用的底层技术是相通的,StarkEx相当于通过单个App中心化运营的方式提前使用了ZK Rollup技术,而StarkNet则承担了建立节点网络的去中心化任务。

以下将会首先介绍StarkWare所采用的基础架构,以及在两种产品体系之下的执行差异;其次,将介绍除了ZK Rollup之外,StarkWare有趣的创新点。

 

1.1 通用工作流

下图是StarkEx的工作流,和StarkNet相通,我们将以此为概要,梳理StarkWare的技术要点。

image

来源https://docs.starkware.co/starkex-v4/overview

1)Applications:用户向App发送交易请求,App将交易请求发送到StarkEx Service模块中。图中的「Executing」,不是很确定指的是什么,可能是指一些前端的处理或预处理。

2)StarkEx Service:这一模块会验证交易的有效性,如确认用户身份与资产是否相符、用户账户上是否有足够余额、该笔交易此前是否已经执行过等;确认过后,将会打包足量的有效交易,并运行Cairo程序来执行这些交易。

值得注意的是这其中的「Cairo」编程语言,这是StarkWare对于ZK Rollup所面临的共同挑战的解决方案:在现存的多数证明系统中,必须首先将计算结果转化为一个特定域的多项式方程,而困难就在于,智能合约的执行结果有千千万,如何能够统一成可以验证的多项式方程[1]。

StarkWare的一个重大贡献,就在于通过Cairo这一图灵完备的语言,将所有的智能合约计算结果转化成了可证明的多项式方程,由此让智能合约与Validity Proof相兼容。

在这一方面,ZKSync也用原创的方案做到了,但是与StarkWare各有取舍。StarkWare采用的证明系统是STARK,这是StarkWare团队所开创的证明系统,优点是在单位空间内能够证明的交易更多、且更安全[2];而ZKSync采用SNARK系统,是一个相对成熟的证明系统,优点在于更容易做到EVM兼容,ZKSync2.0也确实做到了EVM兼容。

StarkWare的原生Cairo语言对STARK证明系统非常友好,可以说是为了运用STARK证明系统而产生的语言,但随之而来的问题则是对开发者来说学习成本较高,现有的Eth生态难以直接迁移。为此,StarkWare正在与第三方团队Nethermind合作,开发Solidity到Cairo的编译器Warp[3]。

3)SHARP:在Cairo程序执行完成后,结果将会发送到SHARP,即「共享验证者」(Shared Prover)。这也是StarkWare开发的一套程序,基于STARK证明系统,将Cairo程序的执行结果生成一个证明,并发送到L1上,由L1的矿工节点调用验证合约来做验证。

4)STARK Verifier和5)StarkEx Contract都是部署在L1的智能合约,前者负责验证SHARP提交的证明,后者负责存储更新的交易状态和其他必要信息。只有当L1的矿工节点运行Verifier、验证通过后,在StarkEx Service模块中提交的状态更新才会被L1接受,更新StarkEx Contract内存储的交易状态,由此完成交易。

总结来说,最核心的模块在于StarkEx Service和SHAPR中。StarkEx Service对交易进行有效性验证、打包、调用Cairo程序执行,随后提交到SHARP生产证明,最后再将证明提交到L1的智能合约,以供L1节点验证。

Cairo程序和SHARP证明体系构成了StarkWare的核心技术,整套技术基于StarkWare自创的STARK证明系统,具有证明量大且更安全的特性,但是为了适应STARK的Cairo语言不天然兼容EVM,对开发者有较高的学习成本。

那么,上述工作流中的环节,分别是由哪些角色来执行的呢?1.2和1.3小节将会对此详述。

 

1.2 StarkEx架构及数据可用性

在StarkEx中,所有链下的工作,即包含交易打包、调用Cairo程序、生成证明,全部都由每个应用自己运行完成,是一个完全中心化的运营方式。此外,由于StarkEx是定制化的ToB服务,针对每个应用有专门的ZK电路,加强了运行性能,因此使用StarkEx引擎的项目能够做到非常高的TPS。

StarkEx还提供了两种数据可用性的模式:ZK Rollup和Validium,供每个应用取舍。

数据可用性在区块链的场景中至关重要,指的是链上节点是否能够获取到每一笔交易执行的全部相关数据(如交易指令),如果只能获取到交易结果、而没有执行过程数据,那么这笔交易的有效性就无法在链上验证,而只要有任意单一笔交易的数据有效性有问题,那么整条链上的交易历史都存在隐患。多种Layer2所取舍的一个关键点,就是存放多少数据在链上,由此也形成了不同的安全性。

下图是四种主流L2模式,所对应的证明系统和数据可用性方案。可以看到,ZK Rollup和Vailidium都采用有效性证明(Validity Proof),区别在于完整数据放在链上还是链下。

image

来源:https://twitter.com/vitalikbuterin/status/1267455602764251138

在Validium模式下,只有更新后的状态会发送到L1上,L1节点无法通过链上数据复原完整交易历史。在这种模式下,交易的完整执行数据会由SHARP先发送给一个链下的「数据可用性委员会」(The Data Availability Committee),这是一个由ConsenSys、Infura、Nethermind、Cephalopod、Iqlusion和StarkWare共同组成的中心化的委员会,负责接受链下数据并做验证,随后将签名发送到L1上,L1上的节点通过验证签名来确认链上状态的更新[4]。Validium模式牺牲了安全性来换取更节约的存储空间,用户使用的前提是信任该委员会。

而在ZK Rollup模式下,除了新的状态外,还会将状态变化前后的区别一同发送到链上,L1节点利用链上数据就可以复原完整交易历史,实现了安全级别最高的Rollup。

目前采用StarkEx的四个项目中,只有dydx采用了ZK Rollup的数据可用性模式,其余三个项目都采用Validium模式。

image

来源:https://l2beat.com/

 

  1.3 StarkNet架构及成熟度

StarkNet相对于StarkEx最主要的架构变化,就在于链下工作从应用手中移交到了矿工手中。

链下工作包含两部分,一是StarkEx Service所承担的验证交易有效性、打包交易、调用Cairo程序执行的工作,在StarkNet中执行者为Sequencer;二是SHAPR所承担的生成证明的工作,在StarkNet中有独立的Prover。

Sequencer+Prover相当于ETH网络中的矿工,完成了从交易池中挑选交易、执行交易、生成证明的过程,由此也就生成了StarkNet上的区块。至于Sequencer和Prover的角色会合并还是分开,官方还没有给出方案。这里有个复杂的问题:Prover给出证明所需要的时间远远长于Sequencer生产区块所需要的时间,所以生成区块和生成证明之间会有一个长达数小时的时间差,如何利用分工来解决时间差问题,将会是个不小的难题[5]。

image

来源:https://www.youtube.com/watch?v=wFZ_YIetK1o

作为通用L2,StarkNet的应用场景当然比StarkEx广泛,但是作为产品本身而言,成熟度还不够高。

其一,StarkNet的性能并不够好。这是由于,StarkNet要做的是ZK通用电路,而StarkEx做的是针对每个应用定制开发的电路,StarkNet处理的问题复杂度远远高于StarkEx。

官方没有公布过StarkNet的TPS数据,但是从区块浏览器来看,不论是在主网(左)还是测试网(右)上,大概只能实现每小时300~400笔或每分钟15笔交易,TPS仅为0.1~0.25。当然,这个数字可能也是由于用户量少造成的,但整体TPS不高应该是现状。

image

来源:https://voyager.online/;https://goerli.voyager.online/

其二,StarkNet还没有做到去中心化。目前,Sequencer和Prover都由StarkWare官方团队运营,没有搭建好去中心化的矿工节点。不过在这一点上,其实Optimistic和Arbitrum也都是由中心化的Sequencer节点运营的,是L2所面临的共同问题。

官方在2月时发布过一篇博客,认为StarkNet目前已经实现了可用性(Usability),接下来分别要达到的目标是提升性能(Performance)并实现去中心化(Decentralization),在性能这一方面,要在2022年的下半部分实现比ETH高一个数量级的TPS[6]。

 

 1.4 未来构想

除了基于STARK证明系统的扩容方案外,StarkWare还构想过不少其他创新,如跨L2的联合LP池:用户可以在多个L2的LP池中交换代币以增强流动性。不过这样做的代价是会增加无常损失的风险,未必是个理想的方案[7]。

但是,StarkWare有一个设计构想,展现了一个很宏伟的未来:通过L3(或者说Ln)来实现分形分层(Fractal Layering)。简单来说,即在StarkNet上用分形的设计层层构造ZK Rollups,使得性能翻倍。而且据官方Medium,未来StarkEx也将会迁移到StarkNet上,作为一层L3服务其他协议。

image

来源:https://medium.com/starkware/dydx-now-on-mainnet-c21c84d8e342

如果Ln的分形分层设计真的能实现,那么TPS的提升将至少以百倍计算,甚至以太坊可能不再需要Sharding。当然,这一构想必定会面临诸多难题,比如L2生成证明就有延时,分层的延时是否会更严重、如何处理,以及每一层的安全性如何保障,等等。分形分层的实现,恐怕还比较遥远。

 

2. 生态运营

在ToB服务侧,StarkEx提供的服务比较成熟,目前TVL~10亿美元,其中dYdX占95%以上。

image

来源:https://starkware.co/starkex/;https://l2beat.com/

在ToC服务L2这一侧,目前还没有TVL等数据,但是可以看到StarkWare具有很强的生态吸引力。官方收集了60多个正在搭建的项目,其中以Defi、Games和NFT为主。

image

来源:https://starkware.notion.site/Projects-Building-on-StarkNet-a33dee55778a4515a9be9bdae02ee682

值得注意的是,AAVE、Maker这两个知名项目,也将会部署到StarkNet。两周前,Maker已经上线了DAI在主网和StarkNet之间的转账,AAVE近期也在社区内公告,预期6月会完成第一阶段的部署,在StarkNet上线aTokens[8]。

除了成熟的Defi项目外,新项目中较为知名的是Jediswap,声称可以实现0手续费的交易,Twiiter上已有~10k粉丝。

团队似乎也较为重视游戏开发,核心逻辑是认为StarkNet可以承载较大的计算量,对于开发优质游戏非常有利[9]。目前,已经有相对复杂的游戏如@LootRealms、@TheDopeWars等正在筹备上线,也有相对简单的游戏已经可以使用,如@briqNFT,这是一个用户可以自由绘制像素图片并生成NFT的项目。

此外,生态中还包括StarkNet原生钱包Argent X、将Solidity编译为Cairo语言的开发工具Warp等。

 

3. 团队与融资

StarkWare是一个来自以色列的团队,有很强的学术和技术背景,核心团队以工程师居多,共有4位合伙人。

联创及主席Eli Ben-Sasson,于2001年获得希伯来大学理论计算机科学博士学位,专攻密码学和零知识证明。他是STARK证明系统的发明人之一,参与建立过多个加密项目,其中包括Zcash。在联合创立StarkWare之前,Eli曾在以色列理工学院担任计算机正教授。

联创及CEO Uri Kolodny,在希伯来大学获得计算机科学学士学位、在MIT Sloan(麻省理工学院斯隆管理学院)获得MBA。Uri是位连续创业者,曾联合创办过多家科技公司,包括医疗器械公司OmniGuide、大数据可视化开发工具Mondria等。此前,Uri曾在两家以色列VC担任EIR(驻场准创业者),也做过麦肯锡分析师。

联创及首席架构师 Michael Riabzev博士,是Eli Ben-Sasson带的博士生,也是 ZK-STARK 协议的共同发明者。

最后一名联创,也是首席科学家Alessandro Chiesa,和Eli Ben-Sasson联合创办了Zcash,在UC Berkeley计算机系任教。

StarkWare也有非常强的资本支撑。就在刚刚过去的5月,StarkWare宣布以80亿美元的估值获得了1亿美元D轮融资。截止目前,StarkWare已经累计获得2.73亿美元融资,投资方包括Coatue、Greenoaks Capital、Sequoia、Paradigm、3Arrows、Alameda Research、Ethereum Foundation等等,不仅受到以太坊社区支持,也大受资本青睐。

 

4. 优势与挑战

StarkWare具有非常明显的优势:

1)创始团队继承自Zcash,既有强大的学术和技术背景、又有成功的加密领域创业经验,是非常难得的明星团队;

2)扩容潜力大,基于STARK的证明系统能够最大化压缩链上信息,在这一点上超过了ZKSync和OP系选手,且核心技术均为自研,对技术的掌控能力强;

3)优秀的声誉也有利于生态建设,目前已经吸引到了AAVE、Maker这样的成熟项目部署,可见对开发者具有较强的号召力。

StarkWare面临的主要挑战包括:

1)没有做EVM兼容,对开发者的门槛较高,这也是相对于ZKSync的一个关键区别。在这一方面,第三方团队Nethermind正在开发Solidity到Cairo的编译器Warp,对于生态发展速度来说会是一个关键变量;

2)目前StarkNet上的Sequencer仍由团队进行中心化运营,如何在做到去中心化的同时保证安全,也将会是一个难题。这个问题也同样摆在Arbitrum、Optimism等相对成熟的L2项目面前,二者目前的Sequencer也都以中心化的方式运营;而对于StarkNet来说,除了负责挑选交易、产出区块的Sequencer角色外,还有负责生成证明的Prover角色,且后者相对前者会有延时,这一问题将会更棘手。

StarkWare还没有发币,就已经达到了80亿美元的高估值,相比之下Optimism目前FDV为~25亿美元,在熊市下不排除StarkWare币价出现倒挂的可能。这也许会让StarkWare对于发币更加审慎,毕竟团队不差钱,且对用户而言ZK Rollup的手续费天然较低,财务问题不如OP系凸出。当然,对于二级市场的散户投资者而言,或许会创造一个不错的进入机会。

链捕手ChainCatcher提醒,请广大读者理性看待区块链,切实提高风险意识,警惕各类虚拟代币发行与炒作, 站内所有内容仅系市场信息或相关方观点,不构成任何形式投资建议。如发现站内内容含敏感信息,可点击“举报”,我们会及时处理。
ChainCatcher 与创新者共建Web3世界