当前位置:网站首页>Zero-knowledge proof - zkSNARK proof system
Zero-knowledge proof - zkSNARK proof system
2022-08-04 20:02:00 【Looking Back at the White Speed Dragon King】
This notebook is excerpted from Steven Yue
Three core algorithms:
setup convention circuit, generate random parameters
prove: the prover generates a zero-knowledge proof
verify: the verifier verifies
Completeness:
Proof of knowledge: (verykey)
Prove that the prover does have some information that we don't know, that is, this w does exist
Short Proof: Short and Efficient
Zero-Knowledge: Public input x and proof pi cannot reveal w
PCP Theorem (Probability Verifiable Theorem)
All NP-hard problems can be proved by random sampling by random verification methods

Instead of looking directly at pi, it can only be extracted from itk-bit
In general, it is a random check. The more correct the random check, the lower the possibility of fraud (a bit of a hypothesis test)
Kilian SNARK
PCP may have huge read-only storage area
We will program a commitment in readonly
The prover only needs to attach a Merkle Proof to prove that the data submitted by himself is indeed in the pi when displaying the data
This can avoid storing a large amount of pi information
Non-Interactive Killian SNARK
The verifier does not need to be online when the prover submits the proof, it can verify at random events later
Requires Fiat-Shamir-Heuristic, which can convert any interactive random verification protocol into a non-interactive one
First we need a secure hash function H (random oracle, no matter what the input is, the output value can be regarded as a random number that is not associated with the input) 
The key to the transformation is to rely on the random value of the authenticator to generate a secure hash function
LCPC (Linear)
Two polynomials with different coefficients of order d will only have at most d points coincident
By treating the proved value as the coefficient of the polynomial, and then verifying whether the value of the polynomial at a certain point is equal


So we convert SNARK into polynomial form
But it is difficult for the circuit to become polynomial form, so we need aThe program matrix called R1CS

Polynomial interpolation, Vandermonde polynomial, restores eachA coefficient
Construct into polynomials P, Q, R
Prove that P * Q = R
Summary
PCP theorem is to quickly verify the solution of any NP problem by random sampling method.
LPCP is a constrained version of PCP, which describes the method of quickly verifying the coefficients of polynomials by randomly checking the values of polynomials.
Fiat-Shamir Heuristic can turn an interactive protocol into a non-interactive protocol.
Starting from a mathematical operation circuit, after transforming into an R1CS program matrix, it can be finally restored to a polynomial
边栏推荐
- SAP 电商云 Accelerator 和 Spartacus UI 的工作机制差异
- Use "green computing" technology to promote sustainable development of computing power
- really time ntp服务启动命令
- 华为交换机:STP测试实验
- 成品升级程序
- vehemently condemn
- 刷题-洛谷-P1179 数字统计
- Seata source code analysis: various message processing processes of seata server
- 二叉树是否对称
- 常用正则表达式[通俗易懂]
猜你喜欢
随机推荐
The book "The Essence of Alipay Experience Design", a record of knowledge related to testing
2022年国内手机满意度榜单:华为稳坐国产品牌第一
带你了解数据分布式存储原理
vehemently condemn
Differences in the working mechanism between SAP E-commerce Cloud Accelerator and Spartacus UI
MySQL字段类型
Zip4j使用
LED的C语言应用程序
The establishment of simple data cache layer
【着色器实现Glitch单项故障闪烁效果(与Television效果不同)_Shader效果第十四篇】
String中的hashcode缓存以及HashMap中String作key的好处
June To -.-- -..- -
如何手动下载并安装 Visual Studio Code 的 SAP Fiori tools - Extension Pack
Tensorflow2 环境搭建
really time ntp服务启动命令
node 的运行命令
【Attention演变史】翻译模型seq2seq (第二弹)
【有奖征文】秋招特训,打造你的专属产品体验
WIN10系统如何开启终端
密码学系列之:PEM和PKCS7,PKCS8,PKCS12









