ZKP6.3 Discrete-log-based Polynomial Commitments (Bulletproofs)

ZKP学习笔记

ZK-Learning MOOC课程笔记

Lecture 6: Discrete-log-based Polynomial Commitments (Yupeng Zhang)

6.3 Bulletproofs and other schemes based on discrete-log

  • KZG:

    • Pros:
      • Commitment and proof size: O(1), 1 group element
      • Verifier time: O(1) pairing
    • Cons: trusted setup
  • Bulletproofs [BCCGP'16, BBBPWM'18]

  • Transparent setup: sample random g 0 , g 1 , g 2 , . . . , g d g_0, g_1, g_2, ..., g_d g0,g1,g2,...,gd in G G G

  • High-level idea

    • Example: 3-degree polynomial

    • Degree reduction: 3 degree -> 1 degree -> constant degree

    • Cross term to commit L and R

    • Similar with FFT

  • Correctness

  • Eval and Verify

  • Properties of Bulletproofs

    • Keygen: O(d), transparent setup!
    • Commit: O(d) group exponentiations, O(1) commitment size
    • Eval: O(d) group exponentiations (non-interactive via Fiat Shamir)
    • Proof size: O(log d)
    • Verifier time: O(d)
  • Other improvement

    • Hyrax [Wahby-Tzialla-shelat-Thaler-Walfish'18]
      • Improves the verifier time to O(d) by representing the coefficients as a 2-D matrix
      • Proof size: O( d \sqrt{d} d )
    • Dory [Lee'2021]
      • Base on pairing
      • Improving verifier time to O(log d)
      • Key idea: delegating the structured verifier computation to the prover using inner pairing product arguments [BMMTV'2021]
      • Also improves the prover time to O( d \sqrt{d} d )exponentiations plus O(d) field operations
    • Dark [Bünz-Fisch-Szepieniec'20]
      • Based on group of unknown order
      • Achieves O(log d) proof size and verifier time
        • Delegate some part of verifier to the prover
  • Summary

相关推荐
亭台3 小时前
【Matlab笔记_23】MATLAB的工具包m_map的m_image和m_pcolor区别
笔记·算法·matlab
Jack___Xue3 小时前
LangChain实战快速入门笔记(五)--LangChain使用之Tools
笔记·microsoft·langchain
走在路上的菜鸟4 小时前
Android学Dart学习笔记第十三节 注解
android·笔记·学习·flutter
全栈小54 小时前
【数据库】浙人医携手金仓数据库,打造全国首个多院区异构多活容灾架构
数据库·1024程序员节·金仓
hhy_smile5 小时前
Android 与 java 设计笔记
android·java·笔记
YJlio5 小时前
BgInfo 学习笔记(11.5):多种输出方式(壁纸 / 剪贴板 / 文件)与“更新其他桌面”实战
笔记·学习·c#
断剑zou天涯6 小时前
【算法笔记】线段树SegmentTree
数据结构·笔记·算法
自不量力的A同学6 小时前
ionet 25.2 发布
笔记
YJlio6 小时前
桌面工具学习笔记(11.4):BgInfo + Desktops + ZoomIt 组合拳——演示与排障环境一键到位
笔记·学习·自动化
玩具猴_wjh6 小时前
12.15 学习笔记
笔记·学习