您当前的位置: 首页 >  编程语言

mutourend

暂无认证

  • 2浏览

    0关注

    661博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

ZKP编程语言概览

mutourend 发布时间:2022-08-31 17:31:14 ,浏览量:2

1. 引言

根据2022年11月 第5届ZKProof Workshop Keynote: ZKP Languages - Where We Are Now - Kobi Gurkan (Geometry)有: 在这里插入图片描述

以下内容主要摘自2021年10月视频 ZK HACK #1 - Introduction to Domain Specific Languages (DSLs) by Alex Ozdemir。 在ZKP系统中,核心之一是将待证明的内容通过circuit language转换为电路: 在这里插入图片描述 当前的电路编程语言主要有: 在这里插入图片描述 当前的电路类型主要有:

  • 1)R1CS电路
  • 2)Plonk电路
  • 3)AIR电路

在这里插入图片描述 针对这些电路类型,相应的编程语言有: 在这里插入图片描述 基本的语言类型衍变路径为:

  • 底层库-》硬件描述语言-》高级编程语言

在这里插入图片描述 ZKP电路编程语言按语言类型分为: 在这里插入图片描述 可变变量特性是指: 在这里插入图片描述

根据是否支持可变变量特性,ZKP电路编程语言分为: 在这里插入图片描述 原语类型特性定义为: 在这里插入图片描述 电路编程语言的原语类型特性有:

  • 1)Field原语
  • 2)Bool原语
  • 3)Machine Integers原语

相应的分类为: 在这里插入图片描述 if-条件分支特性是指: 在这里插入图片描述 根据是否支持if-条件分支特性,分为: 在这里插入图片描述 用户自定义结构体特性是指: 在这里插入图片描述 根据所支持的用户自定义结构体类型,分为: 在这里插入图片描述 数组特性是指: 在这里插入图片描述 根据支持数组特性的情况,分为: 在这里插入图片描述 电路编程语言的未来展望为:

  • 1)仍需继续探索新的编程语言;

  • 2)电路编译仍是难题,目前编译结果较复杂; 在这里插入图片描述

  • 3)或许未来可共享基础架构:【详细可参看Alex Ozdemir等人2020年论文《CirC: Compiler infrastructure for proof systems, software verification, and more》 和 (Cir)cuit ©ompiler. Compiling high-level languages to circuits for SMT, zero-knowledge proofs, and more.】 在这里插入图片描述

参考资料

[1] 2021年10月视频 ZK HACK #1 - Introduction to Domain Specific Languages (DSLs) by Alex Ozdemir [2] A Taxonomy of Circuit Languages [3] 2022年6月视频 Programming Languages in ZKP

关注
打赏
1664532908
查看更多评论
立即登录/注册

微信扫码登录

0.0392s