Composability and Recursion in snarkyJS
Posted mutourend
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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。
以上是关于Composability and Recursion in snarkyJS的主要内容,如果未能解决你的问题,请参考以下文章