pub struct SameMultiscalarProof { /* private fields */ }
Expand description
A $SameMsm$ proof object
Implementations
sourceimpl SameMultiscalarProof
impl SameMultiscalarProof
sourcepub fn new<T: RngCore>(
crs_G_vec: Vec<G1Affine>,
A: G1Projective,
Z_t: G1Projective,
Z_u: G1Projective,
vec_T: Vec<G1Affine>,
vec_U: Vec<G1Affine>,
vec_x: Vec<Fr>,
transcript: &mut Transcript,
rng: &mut T
) -> SameMultiscalarProof
pub fn new<T: RngCore>(
crs_G_vec: Vec<G1Affine>,
A: G1Projective,
Z_t: G1Projective,
Z_u: G1Projective,
vec_T: Vec<G1Affine>,
vec_U: Vec<G1Affine>,
vec_x: Vec<Fr>,
transcript: &mut Transcript,
rng: &mut T
) -> SameMultiscalarProof
Create a $SameMsm$ proof
Arguments
crs_G_vec
- $\bm{G}$ CRS vectorA
- commitment tovec_x
undercrs_G_vec
Z_t
- commitment tovec_x
undervec_T
Z_u
- commitment tovec_x
undervec_U
vec_T
- base points $\bm{T}$vec_U
- base points $\bm{U}$vec_x
- scalar vector (witness)
sourcepub fn verify<T: RngCore>(
&self,
crs_G_vec: &[G1Affine],
A: G1Projective,
Z_t: G1Projective,
Z_u: G1Projective,
vec_T: &Vec<G1Affine>,
vec_U: &Vec<G1Affine>,
transcript: &mut Transcript,
msm_accumulator: &mut MsmAccumulator,
rng: &mut T
) -> Result<(), ProofError>
pub fn verify<T: RngCore>(
&self,
crs_G_vec: &[G1Affine],
A: G1Projective,
Z_t: G1Projective,
Z_u: G1Projective,
vec_T: &Vec<G1Affine>,
vec_U: &Vec<G1Affine>,
transcript: &mut Transcript,
msm_accumulator: &mut MsmAccumulator,
rng: &mut T
) -> Result<(), ProofError>
Verify a $SameMsm$ proof
Arguments
crs_G_vec
- $\bm{G}$ CRS vectorA
- commitment tovec_x
undercrs_G_vec
Z_t
- commitment tovec_x
undervec_T
Z_u
- commitment tovec_x
undervec_U
vec_T
- base points $\bm{T}$vec_U
- base points $\bm{U}$
Trait Implementations
sourceimpl Clone for SameMultiscalarProof
impl Clone for SameMultiscalarProof
sourcefn clone(&self) -> SameMultiscalarProof
fn clone(&self) -> SameMultiscalarProof
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
Auto Trait Implementations
impl RefUnwindSafe for SameMultiscalarProof
impl Send for SameMultiscalarProof
impl Sync for SameMultiscalarProof
impl Unpin for SameMultiscalarProof
impl UnwindSafe for SameMultiscalarProof
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more