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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/144640.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DataGridView的下拉DataGridViewComboBoxColumn的数据绑定问题

DataGridView的下拉DataGridViewComboBoxColumn的数据绑定问题 需求:左边这列固定x行,右边显示下拉,并且赋上默认值 public void Set(){// 添加需要固定显示的行数dataGridView1.Rows.Add("早班";dataGridView1.Rows.Add("中…

大数据高级面试题

大数据高级面试题 Kafka的producer如何实现幂等性? Producer 幂等性 Producer 的幂等性指的是当发送同一条消息时,数据在 Server 端只会被持久化一次,数据不丟不重,但是这里的幂等性是有条件的: 只能保证 Producer 在单个会话内…

json-server工具准备后端接口服务环境

1.安装全局工具json-server(全局工具仅需要安装一次) 官网:json-server - npm 点击Getting started可以查看使用方法 在终端中输入yarn global add json-server或npm i json-server -g 如果输入json-server -v报错 再输入npm install -g j…

java读取指定文件夹下的全部文件,并输出文件名,文件大小,文件创建时间

import java.io.IOException; import java.nio.file.*; import java.nio.file.attribute.*; import java.util.ArrayList; import java.util.List; public class Main { public static void main(String[] args) { try { Path startingDir Paths.get("你的目…

一百九十二、Flume——Flume数据流监控工具Ganglia单机版安装

一、目的 在安装好Flume之后,需要用一个工具可以对Flume数据传输进行实时监控,这就是Ganglia 二、Ganglia介绍 Ganglia 由 gmond、gmetad 和 gweb 三部分组成。 (一)第一部分——gmond gmond(Ganglia Monitoring Da…

学生学徒作品分享——金融大模型-房屋租金价格影响因素分析与预测

金融大模型-房屋租金价格影响因素分析与预测项目背景 广州作为中国最发达的城市之一,每年都吸引大量务工人员前来就业,而租房是他们需要解决的最大问题之一,各地区租房需求日益增长。在租房过程,价格、交通是重要的考虑因素&a…

OpenCV 笔记(2):图像的属性以及像素相关的操作

Part11. 图像的属性 11.1 Mat 的主要属性 在前文中,我们大致了解了 Mat 的基本结构以及它的创建与赋值。接下来我们通过一个例子,来看看 Mat 所包含的常用属性。 先创建一个 3*4 的四通道的矩阵,并打印出其相关的属性,稍后会详细…

uni-app:实现时钟自走(动态时钟效果)

效果 核心代码 使用钩子函数 mounted(),设置定时器,是指每秒都要去执行时间的获取,以至于实现时间自走的效果 mounted() { this.updateTime(); // 初始化时间 setInterval(this.updateTime, 1000); // 每秒更新时间 }, 自定义方法…

数据结构: 红黑树

目录 1.红黑树概念 2.红黑树性质 3.调整 1.如果p和u都是红色,将其都改为黑色即可,然后向上调整 2.如果p红(u黑/u不在),这时候左子树两红,于是给右子树一个红(旋转变色) 2.1右单旋 变色- …

UE5 ChaosVehicles载具 实现大漂移 (连载四)

载具设置成前驱模式 前轮摩擦力倍增x5 后轮摩擦力倍增x0.5

网易面试:什么是SPI,SPI和API有什么区别?

说在前面 在40岁老架构师 尼恩的读者交流群(50)中,最近有小伙伴拿到了一线互联网企业如阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格,遇到很多很重要的面试题: 什么是SPI,SPI和API有什么区别? 最近有小…