Proof of exponentiation是基于adaptive root assumption(充分必要条件)的。
特别适合当
x
x
x很大时,计算
r
=
x
m
o
d
l
,
u
r
r=x\ mod\ l,\ u^r
r=x mod l, ur将大量节约verifier直接计算
u
x
u^x
ux的时间。
借助Fiat-Shamir heuristic,可将上面的交互式PoE转化为NI-PoE: 对应在
https://github.com/dignifiedquire/rust-accumulators/blob/master/src/proofs.rs
中的实现为:
/// NI-PoE Prove
/// Assumes `u^x = w`
/// All operations are `mod n`.
pub fn ni_poe_prove(x: &BigUint, u: &BigUint, w: &BigUint, n: &BigUint) -> ExponentProof {
debug_assert!(&u.modpow(x, n) == w, "invalid input");
// l
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?