当前位置:网站首页>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
边栏推荐
- JS new一个构造器发生了什么?从零手写一个new方法
- win10 uwp 修改图片质量压缩图片
- 多用户同时远程登录连接到一台服务器
- 如何使用 jMeter Parallel Controller - 并行控制器以及一些常犯的错误
- 奥拉时钟芯片生成配置文件脚本
- 华为企业组网实例:VRRP+MSTP典型组网配置
- 关于 SAP 电商云 Spartacus UI SSR 的 state transfer 问题
- How to promote the implementation of rural revitalization
- C语言基础[通俗易懂]
- 如何找到某个 ABAP structure 某字段的源头来自哪个数据库表
猜你喜欢

《支付宝体验设计精髓》一书,跟测试相关性知识记录

二叉树是否对称

CAS :80750-24-9(脱硫生物素 NHS 酯)

In July 2022, domestic database memorabilia

刷题-洛谷-P1319 压缩技术

Desthiobiotin衍生物Desthiobiotin-PEG4-Amine/Alkyne/Azide/DBCO

电脑一键重装系统内存完整性无法打开怎么办

带你了解数据分布式存储原理

Seata source code analysis: various message processing processes of seata server

hash和history路由的区别
随机推荐
常用正则表达式[通俗易懂]
Order of lds links
搭建MyCat2一主一从的MySQL读写分离
WIN10系统如何开启终端
awk statistical average max min
二叉树的前序遍历
如何使用 jMeter Parallel Controller - 并行控制器以及一些常犯的错误
面试官:JVM运行时数据区包含哪几部分?作用是啥?
C#弹出询问对话框
PriorityQueue类的使用及底层原理
刷题-洛谷-P1307 数字反转
idea源码无法下载
Force KouTi (5), the longest text string back
MySQL字段类型
vehemently condemn
String中的hashcode缓存以及HashMap中String作key的好处
2022年国内手机满意度榜单:华为稳坐国产品牌第一
使用 Chrome 开发者工具 coverage 功能分析 web 应用的渲染阻止资源的执行分布情况
JSD-2204-酷莎商城(管理员模块)-密码加密-Day10
A complete cross-compilation environment records the shell scripts generated by peta