Skip to content

课程表

注意

课程时间暂未确定

第 1 课【时间未定】 现代 ZKP 漫谈

介绍零知识证明的基础理论,讲解完美零知识性及发展动机与常见应用,并以模块化 SNARK 为例为大家说明如何选择性学习零知识证明相关理论。

第 2 课【时间未定】 算术电路技术栈

介绍三种约束系统(R1CS、Plonk(ish)、AIR)的算术化特点,以及对应前端技术栈方案特点。 并通过编写Mina合约,了解和练习R1CS约束系统。

第 3 课【时间未定】 ZKP 背后的抽象代数

我们主要讨论抽象代数,理解从群环域的理论到ZKP常用的密码学基础构件。

第 4 课【时间未定】 Halo2 基础电路

本节课将会讨论实用的 zkSNARK 电路工程方法:使用 halo2 证明系统构建简单的零知识证明。我们将讨论 Plonkish 编程模型和简单的电路组件,例如位运算符、范围检查等。

第 5 课【时间未定】 ZKP 原语

我们将讨论一些初级的ZKP原语,从汉密尔顿回路开始,包含二次剩余问题,Schnorr协议,Pedersen承诺,再到KZG承诺。

第 6 课【时间未定】 STARK 基础电路

我们将构造一个相对复杂的证明系统,以 STARK 为例,从零构建一个可证明的二次斐波那契数列电路。

第 7 课【时间未定】 递归 ZKP

我们将讨论证明系统递归和组合方式,以此打开更加广阔的实用性大门。

第 8 课【时间未定】 Plonky2 递归电路

我们将接着上节课,利用 Plonky2 框架来实践一种实用的递归证明方法。