ZKSwap团队解读零知识证明算法之Bulletproofs --Range Proof 3

本文以离散对数为基础,进一步讲述Bulletproof 的rangeproof的开源实现。

前言

本篇主要分享基于 Bulletproofs 的 Range proof 的具体实现细节,并和当前 github 已有的实现做了对比分析。 阅读本篇前,假设您已经阅读了:

Step1. 理解零知识证明算法之Bulletproofs --Range Proof 1

Step2. 理解零知识证明算法之Bulletproofs --Range Proof 2

回顾

1

2

Range proof

3

一个开源的实现

Bulletproof 的 rangeproof 的开源实现,项目地址在https://github.com/dalek-cryptography/bulletproofs,相对于本篇分享的内容,下图中展示内容主要有以下几点不同:

  1. 本文讲述的是以离散对数为基础;图中以椭圆曲线离散对数为基础,因此只要把指数操作转化为乘法操作即可

图中最后的验证内容:实际上是本篇公式 (19) 和 (24) 的结合,利用假设:如果 A<sub>c</sub>B= 1,则有很大的概率满足A =1 & B =1。因此,公式 (19) 和 (24) 可优化为一个验证等式,即 (19)<sub>c</sub>(24) =? 1,若成立,则等式 (19) =? 1 & (24) =? 1 大概率成立。

4

总结

本篇主要分享了 基于 Bulletproofs 的 Range proof 实现细节,结合本系列前面的两篇文章,相信读者能对 Range proof 的背后的原理有了相对深刻的理解。下一篇文章,将主要分享 Bulletproofs 在一般计算上的应用。谢谢大家

附录

  1. Bulletproofs 论文:https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8418611
  2. Bulletproofs 项目地址:https://github.com/dalek-cryptography/bulletproofs

本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

  • 发表于 2021-01-29 11:24
  • 阅读 ( 246 )
  • 学分 ( 2 )
  • 分类:零知识证明

0 条评论

请先 登录 后评论
ZKSwap
ZKSwap

16 篇文章, 121 学分