StarkNet零知识递归证明—STARK已上线,递归在成本和延迟方面的优势异常显著,还会催生L3和应用递归等新机会。
原文:《RecursiveSTARKs》byStarkWare核心工程师GidiKaempfer
翻译:「StarkNet中文」社区
作者:技术最前沿
概要
递归证明上线主网,用一个证明来扩展StarkEx应用程序和StarkNet
递归证明提升扩展性,降低成本和延迟
递归证明为L3和其他妙用创造了条件
来看看递归证明的博文吧,超酷的
倍数扩展!
由Cairo通用计算提供支持的递归证明现已投入生产。这标志着STARK对L2扩展能力的重大提升。单一证明写入以太坊的交易数量可快速成倍增加。
迄今为止,STARK证明通过将数万甚至数十万个交易「汇总」成单一证明写入以太坊来实现扩展。通过递归,许多这样的证明可以「汇总」成一个单一证明。
这种方法现已应用于众多基于Cairo的应用程序:在StarkWare的SaaS扩展引擎StarkEx和无需许可的RollupStarkNet上运行的应用程序。
迄今发展历程
自2020年3月主网上线首个证明产生以来,STARK证明至今经历了不同发展阶段。
STARK扩展
ShibaInu测试网区块链Puppynet交易量突破3000万:金色财经报道,根据Puppyscan数据,Shibarium测试网Puppynet自3月11日推出以来已完成3000万笔交易。Puppynet在5月20日达到1000万笔交易,6月11日达到2000万笔交易。同时,Shibarium实用性的增加是另一个里程碑。Shibarium测试网Puppynet处理的区块总数超过1,700,764个,钱包地址数量增加至17,061,835个。区块链保持稳定,平均出块时间为5-7秒,gas费接近1Gwei。然而,连日来日交易笔数从300万多笔下降至260万笔。[2023/7/16 10:57:30]
2020年6月,第一个STARK扩展解决方案StarkEx在以太坊主网部署。StarkEx有一个证明器可以在链下执行大型计算,生成一个STARK证明表示交易准确性,还有一个验证器在链上验证证明的准确性。第一次部署由StarkWare工程师从零开始亲自操刀,因此StarkEx的功能极大受限。最终我们决定,需要一种支持证明通用计算的编程语言。这样,Cairo便应运而生。
Cairo编程语言
2020年夏天,Cairo首次亮相以太坊主网。Cairo即CPU代数中间代码(CPUAlgebraicIntermediateRepresentation),内含一个用于验证相应「CPU」指令集的单一AIR。Cairo为更复杂的业务逻辑、任意可计算命题(computationalstatements)打开了编码证明的大门,而且更快、更安全。一个Cairo程序可以证明相应应用程序的执行逻辑。但一个Cairo程序也可以集合多个此类应用程序,这就是SHARP。
韩国检方再次寻求逮捕Terraform Labs联创Daniel Shin:3月27日消息,韩国检察官再次推动逮捕Terraform Labs联创Daniel Shin。去年11月底,韩国检方已申请对Terra联创Daniel Shin等8人发出事前拘捕令,但该拘捕令被法院驳回。(彭博社)[2023/3/27 13:28:57]
SHARP
SHARP即共享证明器(SHARedProSver),可以聚合几个独立应用程序的交易,并在一个单一的STARK证明中证明。应用程序可以组合不同批量交易,更快填满STARK证明的容量。交易处理速度和延迟都有所提高。递归证明是下一代前沿技术,不仅适用于一些硬编码逻辑,而且适用于通用计算。
要了解递归证明的全部优势,有必要进一步了解SHARP迄今为止是如何执行证明的。图1描绘了一个典型的非递归流程:
图1:典型非递归证明流程
在这个流程中,命题逐渐到达。容量达到一定阈值时,会生成一个大型组合命题(Train)。只有在收到所有单独命题后,才能证明此组合命题。此证明需要很长时间。
证明极其庞大的命题最终会受到内存等可用计算资源的限制。在递归之前,这实际上是限制STARK证明可扩展性的一大障碍。
Meten Holding Group宣布将ChatGPT引入其在建的Web 3教育平台:金色财经报道,区块链技术公司Meten Holding Group宣布将ChatGPT引入其在建的 Web 3 教育平台。依托并受益于ChatGPT,公司拟在建设中的Web3平台上推出模拟真实人机交互的互动教学课程。公司相信,通过使用ChatGPT,公司与运行该平台相关的运营成本将控制在合理水平,同时为客户提供智能定制和个性化的课程,从而满足客户需求并提高客户忠诚度。客户反馈也有助于生成高质量的教育内容。所有这些组成部分都有望为创新的教育模式做出贡献。[2023/2/9 11:55:47]
什么是递归证明?
通过STARK证明,证实命题所花费的时间与执行命题所花费的时间大致呈线性关系。此外,如果证明一个命题需要的时间为T,那么验证证明所需要的时间大约为log(T),这通常被称为「对数压缩」。换句话说,使用STARK让用户在验证命题上的时间要比计算命题的时间少得多。
Cairo允许表达通用计算命题,这些命题可以经STARK证明所证实,再经相应的STARK验证器验证。
这就是执行递归的机会所在:就像可以写一个Cairo程序来证明成千上万的交易正确性,也可以写一个Cairo程序来验证多个
STARK证明。可以生成一个证明来验证多个「上游」证明的有效性。这就是我们所说的递归证明。
由于对数压缩和证明时间大致呈线性关系,证实STARK证明所需的时间相对较短。
火必:HT将作为火必生态唯一通证和认购DMC唯一凭证:11月29日消息,今日火必Huobi发布公告表示,经HT(Huobi Token)社区和火必Huobi全球顾问委员会决策,HT将作为火必Huobi生态内唯一通证。同时,HT将作为参与认购DMC的唯一通证。
今天下午,火必公布了与波场TRON、DMC Labs共同发行多米尼克国家代币(Dominica Coin,DMC)和国家数字身份(DID)的合作公告。DMC将通过火必Prime发行,火必还将为每位注册用户空投DMC代币和多米尼克数字身份。[2022/11/29 21:10:15]
在实现递归时,SHARP可以一收到命题就可以对其进行验证。证明可以各种模式反复地合并成递归证明,直到在某个点上,产生的证明提交给链上验证者合约。图2就是典型的递归证明模式:
图2:典型递归证明流程
在本例中,有四个命题发送给SHARP。这些命题各自平行证明。然后,每一对证明都由一个递归验证器命题来验证,由此产生一个证明。这一命题证实有两个证明经过验证。接下来,通过递归验证器命题再次合并这两个证明。这就产生了一个证明,证实所有四个原始命题。此证明最终可以提交到链上,由Solidity验证器智能合约进行验证。
CryptoPunks近24小时交易额为493.49ETH,增幅67.94%:金色财经消息,据OpenSea数据显示,CryptoPunks近24小时交易额为493.49ETH,增幅67.94%。[2022/7/4 1:48:37]
递归证明的直接优势
降低链上成本
毫无疑问,我们实现了将多个证明「压缩」成一个,这意味着每笔交易链上验证成本会大幅更低。
使用递归证明可以消除至今限制证明大小的计算资源障碍,因为每个命题容量有限,都可以单独证明。因此当使用递归时,递归的有效组合命题(Train)的容量几乎是无限,每笔交易成本可以降低好几个数量级。
在实际操作中,降低成本取决于可接受的延迟。此外,由于每个证明通常也伴随相应链上数据输出,因此与单个证明一起写入链上的数据量也会有限。尽管如此,将成本降低一个数量级,甚至继续提升性能都可以轻松实现。
降低延迟
递归证明模式可降低证明大型组合命题延迟。有两个因素起到作用:
1.接收的命题可以并行证明。
2.无需等到Train中的最后一个命题到达即可证明。相反,有新命题加入可以随时与证明结合。也就是说,加入Train的最后一个命题的延迟,大致上是证明最后一条命题所需的时间加上证明递归验证器命题所需的时间。
我们正在积极开发和优化证明递归验证器命题的延迟问题。预计几个月内证明递归验证器命题会达到几分钟的数量级。因此,一个高效的SHARP延迟可控制在几分钟到几小时,延迟长短取决于对每笔交易链上成本的取舍。这是对SHARP延迟的重大改进。
促进L3应用
用Cairo开发的递归验证器命题也开启了向StarkNet提交证明的可能性,因为该命题可以写入StarkNet智能合约。这允许在StarkNetL2公共网络上部署L3。
递归模式也适用于来自L3的聚合证明,由L2上的单个证明验证。因此,L3也可以实现超大规模扩展。
更多妙用
应用递归
递归为希望进一步扩展其成本和性能的平台和应用程序开辟了更多机会。
每个STARK证明证实应用于某些「公开输入」的命题有效性。从概念上来说,STARK递归将具有两个输入的两个证明压缩为一个具有两个输入的证明。换句话说,虽然证明的数量减少,但输入数量未变。然后,输入通常由应用程序用以更新L1上的某些状态。
如果递归命题可以在应用层感知,即识别应用程序本身的语义,那么递归命题既可以将两个证明压缩为一个,也可以将两个输入组合为一个。最终的命题证实基于应用程序语义的输入组合的有效性,这就是应用递归。
图3:应用递归示例
命题1证明从A到B的状态更新,而命题2验证从B到C的进一步更新。命题1和命题2的证明可以合并为第三个命题,直接证明从A到C的更新。通过应用类似的递归逻辑,可以非常显著地降低状态更新的成本,达到最终延迟要求。
应用递归的另一个重要示例是压缩来自多个证明的汇总数据。例如,对于像StarkNet这样的有效性证明Rollup,L2每次存储更新也作为传输数据在L1更新,确保数据可用性。但是,不需要为同一个存储单元发送多次更新,因为只有经过证明验证过的交易最终才能满足数据可用性。此优化已在单个StarkNet区块中执行。但是,通过为每个区块生成证明,应用递归可以压缩多个L2区块汇总数据。这可以显著降低成本,降低L2出块时间,而不会牺牲L1更新的可扩展性。
值得注意的是:应用递归可以与前面描述的应用通用递归结合使用。但这两种优化互无关联。
降低链上验证器的复杂性
STARK验证器的复杂性取决于用以验证的命题类型。特别是对于Cairo命题,验证器的复杂性取决于Cairo语言中允许的特定要素,更具体地说,是支持的内置项。
Cairo语言不断发展并提供越来越多有用的内置项。另一方面,递归验证器只需要使用一小部分内置项。因此,递归SHARP可以通过支持递归验证器中的完整语言来成功支持Cairo中的任何命题。具体来说,L1上的Solidity验证器只需要验证递归证明,因此验证器可以仅限于验证Cairo语言一个更稳定的子集:L1验证器不需要随最新、最稳定的内置项更新。换句话说,命题不断演化,复杂的验证就交由L2处理,L1验证器只需要验证简单、稳定的命题。
减少计算足迹
在递归之前,聚合多个命题为一个证明受到可用计算实例上可以证明的命题大小的限制。
有了递归,无需再证明如此庞大的命题。因为有了更多又小又便宜的计算实例可供使用。这使得在更多的物理和虚拟环境中部署证明器实例成为可能。
总结
通用计算的递归证明现已为包括StarkNet在内以太坊主网上的多个产品系统服务。
由于可以不断改进,递归的优势会逐步显现。并行计算的潜力得以发挥后,Gas费降低,延迟改善,超高扩展性终将实现。
递归在成本和延迟方面的优势异常显著,还会催生L3和应用递归等新机会。递归验证器持续优化,性能和成本效益也都会逐渐提升。
附录
原文:RecursiveSTARKs
https://medium.com/starkware/recursive-starks-78f8dd401025
原文:Youtube:StarkEx-HowDoesitWork?
https://www.youtube.com/watch?v=P-qoPVoneQA
原文:Hello,Cario!
https://medium.com/starkware/hello-cairo-3cb43b13b209
原文:Hello,Cario!
https://starkware.co/cairo/
原文:WikipediaEntry:Recursion
https://en.wikipedia.org/wiki/Recursion
原文:《分形式扩容:从L2到L3》
https://mirror.xyz/starknet-zh.eth/-5oiKxwShIOzGUwuQJzIl070wopcPjqBcypVjRvyC1E
来源:金色财经
说起传统安全,很多朋友都比较熟悉,基本而言,就是针对漏洞的攻击,和针对攻击的防护。但说起区块链安全,很多人就不太了解了。有人说区块链本身是安全的,传统攻击根本奈何不了它;但也经常看到区块链里的安全事件,似乎一点也不少.
1900/1/1 0:00:00什么是NFT中的刷单交易?刷单交易是一种市场操纵形式,市场参与者试图通过重复买卖来影响价格,制造大量交易活动的表象。一方面,进行刷单交易可能是为了制造该项目供大于求的假象,另一方面可能是为了获取平台所提供的活动奖励.
1900/1/1 0:00:00以太坊社区正在发布一个快速应用程序,以维护其智能合约的高级安全性。因此该团队与领先的安全咨询公司之一ImmuneBytes联系,以升级提供可靠的安全审计解决方案的标准!近年来以太坊网络正在观察广泛的个人和商业巨头使用生态系统实现持续增.
1900/1/1 0:00:00金色财经报道,8月18日,EthereumPoW官方推特发文表示,EthereumPoW未来会冻结超过140万个ETH,因此敦促用户将ETHW从流动性池中移除。这件事能实现吗?是如何实现的?我们先具体来看下这份发文的具体内容.
1900/1/1 0:00:00今日周一,我们先看看大周期周线级别走势。从K线形态来看前期连阳上涨上周价格承压下跌报收中阴且跌幅吞没了前一周的起涨点位置,那么反弹走势就有些中断的意思了,且价格运行于均线下方。那么上周我们得操作交易基本都是止盈的,利润总体也还是不错.
1900/1/1 0:00:008月11日起,一款名为「SiriusFinance」的全新?DeFi?项目于Solanium、PolkaBridge、DaoLaunch、DaoStarter、LunaPad等多个Launchpad平台陆续启动了其治理代币SRS的公售.
1900/1/1 0:00:00