PCP 技术于 20 世纪 90 年代开发,而 STARK 是其调整版本。
原文来源:medium
原文标题:STARK: Endgame
原文作者: Eli Ben-Sasson
本篇博客内容基于 StarkWare 联合创始人兼执行总裁 Eli Ben-Sasson 教授在以色列举办的 StarkWare 2023 大会上的演讲。
成就如何实现的?
STARK 技术基于证明,更准确地说是完整性证明。C.S.Lewis 教授曾将完整性定义为「即使无人监督也会做正确的事情」。完整性是目标,而证明则是达成目标的方式。STARK 利用数学保证完整性,即使在无人监督的情况下,也能确保计算能以正确的方式进行。
László Babai、Lance Fortnow、Leonid Levin 和 Mario Szegedy 在 1991 年的一篇文章中提出,用一台可靠的计算机去监控一组不可靠的超级计算机。这种「概率可检验证明」(Probabilistically Checkable Proofs,简称 PCP)技术利用数学来监控和确保大型计算的完整性,下文将阐述它的运行模式。
计算声明可以转化为数独式的谜题,其约束条件通过各种方式交错重叠。每个声明都会导致一个独特的谜题,提出声明的实体称为证明器,它所提交的证明相当于一个已填好的数独题(如下图所示)。正确声明所提交的解决方案需要满足与谜题相关的各种约束条件,而 PCP 最神奇的一个特点(也是在数学上最难确定的部分),即对于错误的计算声明,任何提交的解决方案都将违反至少 99% 的数独谜题约束条件。验证器是一台可靠但计算能力较弱的计算机,它知道需要解决的难题,以便证明一个声明的真实性。但验证器不会完整读取证明器提交的解决方案,而是会随机「抽样」一个约束条件,并检查该条件是否被满足,从而决定接受或拒绝该解决方案。鉴于真实声明(满足所有条件)和错误声明(无法满足超过 1% 的条件)之间的明显差异,可以利用统计和抽样的原理来进行验证。例如,验证器可以随机抽取 6 个约束条件并检查是否被满足。这样验证器就几乎可以确定计算是否完整(出错概率控制在万亿分之一)。可扩展性所需的最后一个神奇的特质是,即使数独谜题与计算中的步骤数量巨大,验证器也可以非常快速地抽样、读取并检查随机约束。事实上,这些所需的计算量远小于数独谜题的大小!
走进 STARK
PCP 技术于 20 世纪 90 年代开发,而 STARK 是其调整版本。两者的一个关键区别是,STARK 不是单纯的生成和填写数独谜题,而是在生成数独谜题和验证器填写完成的过程中,重复了数次。然后验证器从这个多维数独挑战中抽样一个约束条件,判断并决定是否接受或拒绝该声明。通过采用 STARK 技术,普通人也能检查并确保一些大公司、垄断企业或政府的正常运作。
这里的重点是这项技术将来可以在哪些实际场景中应用。在传统的情况下,很难找到这样一种情景:需要一台可靠但计算能力低的电脑来监控一组不可靠且不可信的超级电脑。我们在哪里可以找到可靠的低计算能力、每个人都信任的电脑情景呢?
走进区块链
一种超越加密学和计算机的创新范畴在 2008 年横空出世:中本聪在 2008 年发表的《比特币,一种点对点的电子现金系统》论文彻底革新区块链领域。
横贯历史进程,交易曾经采用现金对商品的点对点方式,现如今交易则是依靠 Apple Pay、Visa、Swift 等中心化平台完成。用户需要信赖这些平台会透明公开的处理交易。
比特币消除对中间人的信任,恢复货币交易的点对点本质。以太坊进而推动该概念,允许构建社会经济结构的通用程序。
两条创新技术路线不断融会贯通。一方面,我们采用单个低计算但可靠的计算机实现大规模计算完整性的 PCP(STARK 技术);另一方面,将区块链作为高度可靠的计算机,依靠数学验证大规模计算。并深刻认识到:区块链和数学实现完整性的完美结合。
视频:计算完整性 — 比特币的应用(ZCash 早期背景)
https://youtu.be/Q4nWoEKUtgU
走进 StarkWare
在 2018 年 StarkWare 率先提出采用 SATRK 有效性证明解决以太坊可扩展性难题。链下证明器和链上验证器计算差异,实现解锁大规模可扩展性。链下证明器处理批量交易并生成 STARK 证明,验证器则使用最小化计算检查链上证明。支持在链下处理大规模计算的同时用最低费用确保链上完整性。
从那以后,StarkWare 实现一个又一个里程碑:
STARK 的精神是什么?
https://twitter.com/EliBenSasson/status/1628129930591539228
未来之路Starknet 生态建设快速扩张,拥有约 1000 位开发者和超 400 个 Github 代码资源库。StarkWare 将贯彻「一人行速,众人行远」主旨:
对 STARK 强大功能和可扩展性感兴趣的用户,欢迎学习开源 Cairo 语言,体验编写程序乐趣。