ZKP5.2 PLONK IOP

ZKP学习笔记

ZK-Learning MOOC课程笔记

Lecture 5: The Plonk SNARK (Dan Boneh)

5.2 Proving properties of committed polynomials

  • overview
    在这里插入图片描述

  • Polynomial equality testing with KZG

    • KZG: determined commitment (if the function is equal, then the commitment is equal too)
      • If the c o m f = c o m g com_f = com_g comf=comg, the verifier can tell if f = g f=g f=g on its own???

      • but
        在这里插入图片描述

        • The verifier does not have the commitment of g 1 g 2 g 3 g_1g_2g_3 g1g2g3
  • Important proof gadgets for univariates
    在这里插入图片描述

    • The size k is much smaller than d
  • The vanishing polynomial
    在这里插入图片描述

    • Outside the Ω \Omega Ω, the polynomial could evaluate an arbitrary value
    • Verifiers can evaluate the vanishing polynomial very fast.
  • ZeroTest
    在这里插入图片描述

    • F is zero on Ω \Omega Ω: All the elements of Ω \Omega Ω are the root of the polynomial.
    • Verifier time: O(log k) and two poly queries (but can be done in one batch)
    • Prover time: dominated by the time to compute q(X) and then commit to q(X)
  • Product check
    在这里插入图片描述

    • Polynomial t: auxiliary polynomial
      在这里插入图片描述

在这里插入图片描述

- Use the ZeroTest
- Proof size: two commits, five evals (can be batched). 
- Verifier time: O(logk) 
- Prover time:O(klogk)
  • For rational functions
    在这里插入图片描述

  • Permutation check
    在这里插入图片描述

在这里插入图片描述

  • f ^ \hat{f} f^ and g ^ \hat{g} g^ is identical
  • Embellished permutation check
    • The two vectors are permutations to each other
    • They also satisfy a prediscribed pumutation
      在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • Summary of proof gadgets
    在这里插入图片描述

5.3 The PLONK IOP for general circuits

  • PLONK widely used in practice
    在这里插入图片描述

  • PLONK: a poly-IOP for a general circuit
    在这里插入图片描述

    • Encoding the trace as a polynomial
      在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • Step 2: proving validity of T
    在这里插入图片描述

    • (4): the output of the last gate is what the verifier is expecting
    • Proving (1): T encodes the correct inputs
      在这里插入图片描述

在这里插入图片描述

- Proving (2): every gate is evaluated correctly

在这里插入图片描述

  - S(X) is a selector
  - Pre-processing: create the commitment of S(X), it is independent to any input.

在这里插入图片描述

在这里插入图片描述

- Proving (3): the wiring is correct

在这里插入图片描述

  - The W is independent of the inputs
  - Prescribed pumutation check
  • The complete Plonk Poly-IOP (and SNARK)
    在这里插入图片描述

在这里插入图片描述

  • Many extensions
    • The SNARK can easily be made into a zk-SNARK

    • Main challenge: reduce prover time
      在这里插入图片描述

    • A generalization: plonkish arithmetization

      • Plonk for circuits with gates other than + and × on rows (custom gates)
        在这里插入图片描述

      • More columns on the table

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值