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的主要内容,如果未能解决你的问题,请参考以下文章

C 递归

结合记忆和尾递归

TF 命令行工具:将文件添加到目录

Wordpress-从内容()中删除带有(nbsp)的空段落标记

PHP数组函数

永无止境的圣战-Emacs vs Vim丨与神有关的编辑器