Composability and Recursion in snarkyJS

1. 引言

本文主要摘自 O(1) Labs CTO Izaak Meckler 在Compiler and Composability in ZKP 上的演讲内容。

ZK programming system的目标为:

  • 易于学习
  • 易于开发
    • 好的IDE
    • 测试
    • 包管理
  • 易于与应用的其它部分整合
    • 浏览器
    • 智能合约Verifier
  • 性能

2. ZK programming system分类

ZK programming system主要分为2大类:

  • 1)基于Bytecode/VM的系统:
    • 以新语言来编译(如Cairo)
    • 以现有语言来编译(如RISC0,基于EVM的项目)
  • 2)基于Circuit的系统:
    • 嵌入了现有语言:如snarkyJS, arkworks。
    • 编译自新语言:如zinc,Aleo。

3. snarkyJS

为编译零知识应用的框架:

  • Typescript语言
  • 无需可信设置,基于Mina的Kimchi SNARK over Pasta curves
  • 易于在浏览器内运行

snarkyJS与Mina配合使用,形成了Mina链(基于ZK-SNARKs的L1链)上编写ZKApps的核心框架。

4. Composability

组合性主要体现在:

  • 将系统分为不同的部分
  • 以经典编程语言来实现函数和类
  • 以snarkyJS来实现函数、类以及Recursion/Proof composition。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/mutourend/article/details/125951963
今日推荐