\[(L_1, R_1), ..., (L_{\log_2n}, R_{\log_2n}), a, b\]
\((L_i, R_i), \forall i \in [1:\log_2n]\)表现第\(i\)次执行折半算法生成, 全部\((L, R)\)复杂度:\(2\log_2n\)
\(a, b\)为两个元素,复杂度为\(O(1)\)
因此Bulletproof通过递归折半算法,成功将通信复杂度降低为\(2\log_2n\)。
结语
本文具体分析了Bulletproof范围证明的优化技能 - 折半算法。通过引入\(H\)函数和递归折半算法,Bulletproof成功将通信复杂度降低为\(O(2\log_2n)\)。折半算法的优化思想可以应用于其他范围证明系统,从而进一步提高范围证明的服从。除了以上优化技能外,Bulletproof的多个范围证明也可以通过批量验证等技能进一步提高服从。
本文未对Bulletproof递归折半算法构造进行具体证明,感兴趣的读者可以参考《Bulletproofs: Short Proofs for Confidential Transactions and More》进行深入学习。
参考文献