Detailed explanation of zero-knowledge proof algorithm Marlin

Sin7y
本文约998字,阅读全文需要约4分钟
This paper explains in detail the zero-knowledge proof algorithm Marlin based on the R1CS proof system.

arkworks for marlin 

Marlin 

Fractal

RICS

first level title

Transition into Polynomial (efficiency)

Prepare

Define polynomial

text

Then R1CS is established.

first level titlepaper5.2.1secondary title

Linearity check

2. Define a polynomial (LDE) for the vector z = (x, w)

Similarly, it can also be derived from the formula:

AHP for R1CS

Common

Prover

=>Prover

=>Oracle

=>Prover - sumcheck-1

=> Oracle

=> Prover - sumcheck-1

=> Prover - sumcheck-2

=> Oracle

=> Prover - sumcheck-2

=> Prover - sumcheck-3

=> Oracle

=> Prover - sumcheck-3

Verifier

=> Verifier-sumcheck-3

=> Verifier-sumcheck-2

Recall the equality

=> Verifier-sumcheck-1

Recall the equality

=> Verifier

Polynomial commitment 

secondary title

Optimization

Sum(s(X)) = 0

secondary title

Reduce sumcheck 

according toCOS20. Claim6.7according to

Common

Prover

Verifier

Reduce polynomial numbers for Sumcheck - 2 

For the optimization mentioned in the (Fractal) paper, we make:

secondary title

secondary title

Set b = 1 

Matrix polynomials, reduced from 9 to 3.

Final Procotol 

Marlin in arkworks

about Us

Sin7y was established in 2021 and is composed of top blockchain developers. We are both a project incubator and a blockchain technology research team, exploring the most important and cutting-edge technologies such as EVM, Layer2, cross-chain, privacy computing, and autonomous payment solutions.

WeChat public account: Sin7Y

GitHub | Twitter | Telegram | MediumMirror | HackMD | HackerNoon