技术入门 | 理解零知识证明算法之Bulletproofs --Range Proof III

前言

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

阅读本篇前,假设您已经阅读了:

Step1. 理解零知识证明算法之Bulletproofs --Range Proof I    (https://www.8btc.com/media/530155)

Step2. 理解零知识证明算法之Bulletproofs --Range Proof II   (https://www.8btc.com/media/532874)

回顾

Range proof

一个开源的实现

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

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

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

总结

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

附录

1. Bulletproofs 论文:chrome-extension://cdonnmffkdaoajfknoeeecmchibpmkmg/assets/pdf/web/viewer.html?file=https%3A%2F%2Feprint.iacr.org%2F2017%2F1066.pdf

2. Bulletproofs 项目地址:https://github.com/dalek-cryptography/bulletproofs

*本文转载自网络转载,版权归原作者所有。本站只是转载分享,不代表赞同其中观点。请自行判断风险,本文不构成投资建议。*