SNARK Design
Posted mutourend
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SNARK Design相关的知识,希望对你有一定的参考价值。
1. 引言
主要参考Justin Thaler 2022年8月在a16z crypto专题研讨会上的系列讲座:
- SNARK Design, Part I, with Justin Thaler | a16z crypto research talks
- SNARK Design, Part II, with Justin Thaler | a16z crypto research talks
- SNARK Design Part III with Justin Thaler | a16z crypto research talks
2. 何为SNARK?
SNARK针对的场景为:
Prover
P
P
P声称其知道满足某属性的witness
w
w
w,如:
- 某原像 w w w,使得其哈希结果为指定的 y y y,即 h ( w ) = y h(w)=y h(w)=y【Prover和Verifier均已知哈希函数 h h h和哈希结果 y y y, w w w为wtiness仅Prover已知】。
- 某私钥 w w w,使得其对应某密码学系统指定的公钥,即 Public_key ( w ) = y \\textPublic\\_key(w)=y Public_key(w)=y。【Prover和Verifier均已知公钥 y y y和相应的公钥计算规则 Public_key \\textPublic\\_key Public_key, w w w为wtiness仅Prover已知】。
最简单直接的证明方式为:
- Prover P P P将 w w w直接发送给Verifier V V V, V V V对其运算验证是否满足所声称的属性。
SNARK(全称为Succinct Non-interactive ARgument of Knowledge)可实现同样的效果,但其对Verifier更友好——验证证明的开销更小:【由于当前Rollup重点关注可扩展性而不是隐私性,其无需zero-knowledge SNARK,因此本文未添加ZK字段。】
- SNARK证明 π \\pi π的长度要比 witness w w w短——即对应为“Succinct”;
- 验证 π \\pi π证明 的速度 要快于 基于 w w w直接运算——即节约Verifier V V V的计算开销。
以上是关于SNARK Design的主要内容,如果未能解决你的问题,请参考以下文章