织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 竞争币 > 以太坊

速览 StarkWare 推出的 Cairo:图灵完备的生产级 STARK 系统 (2)

时间:2020-09-08 17:44来源:未知 作者:admin 点击:
解决方案:Cairo,单一 AIR 的通用方案 Cairo 连接了一系列用于构建通用计算可扩展性与零知识证明的工具链。 所有先前部署在测试网或者主网上的系统都只

解决方案:Cairo,单一 AIR 的通用方案

Cairo 连接了一系列用于构建通用计算可扩展性与零知识证明的工具链。

所有先前部署在测试网或者主网上的系统都只能被归为 「电路编写库」 3 。这些库可以看作是为创建用于特定计算的 ASIC 的工具链。而 Cairo 与之完全不同,应该看作是从 ASIC 向 CPU 的过度。

Cairo 是第一个实现图灵完备的冯诺伊曼结构的生产级证明系统,每个 Cairo 程序 P 以及它处理的数据 D 都存留在虚拟机的内存中。Cairo 的单一 AIR 可以验证任意 Cairo 程序,因此验证器(Verifier)也是单一的,形式可以是智能合约或者 WebAssembly 程序等。也就是说,Cairo 的 AIR 可以验证用数据 D 跑程序 P 的计算完整性,以及执行后系统状态的正确性。

有了 Cairo,新的业务逻辑不再需要新的智能合约,而只需要另外一个 Cairo 程序。由此,业务逻辑和证明系统的界限划分明确了。

用单一的 AIR 来解决所有问题还具有一个深远的意义:我们可以使用单一证明来断言不同程序执行的完整性。比如,基于 VeeDo 的密封竞标拍卖、Gods Unchained 卡牌的生成、一批 dYdX 上的交易,这些都可以用同一个证明来证实其有效性。我们把这项功能称为通用验证服务(GPS),我们很快会提供更多相关信息。

Cairo 语言

Cairo 程序要用到类似汇编语言的、也叫 Cairo 的语言来编写,而 Cairo 语言具有以下功能:内存、函数调用、递归和分支条件。Cairo 还用到了证明器(Prover)端的 「hints」 来创建快捷方式并启用特定计算。我们说 Cairo 是生产级的,我们说的不仅是即将到来的主网部署,更是我们为此构建出的强大开发环境,包括一个从 Cairo 语言到 Cairo 字节码的编译器、一个用于模拟 Cairo 执行的虚拟机、调试器、集成开发环境、还有上述提到的用 Solidity 编写的单一验证器(Verifier)智能合约。

 

我们将很快发布白皮书,详细介绍 Cairo 的设计理念以及对于该新一代编程语言的完整规范。在下面几个月中,我们会开始发布用于编写、调试和运行 Cairo 程序的工具(注册以便收到更新通知)。

Cairo 的效率和安全性

我们可以从两个方面考虑效率和安全性:涉及数学的方面(AIR)和工程实现方面;而 Cairo 会在这两个方面都使代码更加高效且安全。

Cairo 的 AIR 相对简单,也就可以为链上验证(Verifier)和链下证明(Prover)服务提高效率并降低成本。这也提高了安全性,因为审核单个简单的 AIR 比审核多个复杂的专用 AIR 要安全得多。

因此,有了 Cairo,我们可以依赖于单一验证器智能合约,再也不用为每个应用都部署一个验证器。在安全性方面这意味着:对这一份智能合约的审计就能保护所有应用都免受证明系统风险影响,而应用仅仅需要审计自己的业务逻辑。而对于业务逻辑,理解并审核其代码相比专用 AIR 来说要简单得多了。

为了理解 Cairo 中实际应用中的具体效率,我们来看这两个例子:

DeversiFi

目前在以太坊主网上支持 DeversiFi 2.0 的 StarkEx 系统是个 ASIC 的 STARK,我们在 Cairo 中也部署了相同的 StarkEx,在测试网上运行,并比较两个系统。通常来说,CPU 比 ASIC 要慢,但在实际案例中,由于 Cairo 强大的优化,两个系统几乎没有差别:

  • Cairo 证明器比当前的 ASIC 实现慢 30%
  • 验证器只消耗 1.03 倍的 gas

Reddit 竞标

我们与以太坊生态中的其他项目一起冲刺完成了 Reddit 可扩展性竞标。多亏了 Cairo,我们才能:

  • 我们以前所未有的效率完成了比赛。我们可以把所有 30 万个交易都打包成一个证明,还用到了聚合调用数据(仅仅用修改的账户信息代表整个批次,而不包括每个交易的调用数据)。这是 Cairo 可编程性及优化算法所得便捷性的直接成果。我们在 6 分 03 秒内完成了所有任务。

值得注意的是:更高级别的编程能轻易增加优化,这些优化带来的好处通常大于上文提到的 CPU 劣势。因此,在多数情况下,使用 Cairo 比使用量身定制的 AIR 实际上可能最终实现更好的性能。

  • 我们以超快的速度完成了比赛。没什么人注意到我们的单个证明在 7 月 15 日就提交到主网上了,比六周的冲刺期提前了两周。这也是 Cairo 给我们带来的奇迹。

前路漫漫

我们计划将我们与其他人开发的 Cairo 和 GPS 提供给社区广大的开发者,为大家提供强大的开发工具,我们计划开发出从更高级语言到 Cairo 的编译器,还要给开发者长期提供我们的云上开发环境。这都需要大量的精力与资源,Cairo 不是一天建成的。我们将定期一步一步更新 Cairo,为大家提供更强的功能、性能及优化。

目前我们与合作伙伴 DeversiFi、Immutable 和 dYdX 一同在使用中不断调试 Cairo,每周都有进展。如果你想现在开始在以太坊上进行开发,但受限于扩展性和日益增长的 gas 价格,如果你想构建一个真正的生意,需要生产级高性能的工具链,请联系我们。

脚注

[1]:我们使用该术语的 通俗 含义,即,涵盖所有现实世界的通用计算

[2]:更准确地说,应用之间的不同点就在于 AIR,AIR 之于 STARK 来说就好比运算电路与 R1CS 系统之于 SNARKs。

[3]:根据 zkp.science 的综合分类

 

(责任编辑:admin1)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容