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

相关推荐
无敌昊哥战神2 分钟前
【算法与数据结构】深入浅出回溯算法:理论基础与核心模板(C/C++与Python三语解析)
c语言·数据结构·c++·笔记·python·算法
zore_c3 分钟前
【C++】基础语法(命名空间、引用、缺省以及输入输出)
c语言·开发语言·数据结构·c++·经验分享·笔记
久违 °5 分钟前
【经营管理】企业经营管理沙盘笔记(一)
笔记
_李小白6 分钟前
【OSG学习笔记】Day 46: CameraManipulator(相机操控器)
笔记·数码相机·学习
我登哥MVP7 分钟前
【Spring6笔记】 - 13 - 面向切面编程(AOP)
java·开发语言·spring boot·笔记·spring·aop
Z.风止9 分钟前
Large Model-learning(4)
人工智能·pytorch·笔记·python·深度学习·机器学习
雾岛听蓝1 小时前
进程信号机制深度解析
linux·开发语言·经验分享·笔记
Z.风止15 小时前
Large Model-learning(3)
人工智能·笔记·后端·深度学习
东京老树根16 小时前
SAP学习笔记 - BTP SAP Build02 - Deploy,开始URL,Approve,Reject,履历确认,Log,Context
笔记·学习
zjeweler16 小时前
“网安+护网”终极300多问题面试笔记-全
笔记·网络安全·面试·职场和发展