Trait vsss_rs::PedersenVerifierSet

source ·
pub trait PedersenVerifierSet<G: Group + GroupEncoding + Default>: Sized {
    // Required methods
    fn empty_pedersen_set_with_capacity(
        size_hint: usize,
        secret_generator: G,
        blinder_generator: G
    ) -> Self;
    fn secret_generator(&self) -> G;
    fn blinder_generator(&self) -> G;
    fn blind_verifiers(&self) -> &[G];
    fn blind_verifiers_mut(&mut self) -> &mut [G];

    // Provided methods
    fn pedersen_set_with_generators_and_verifiers(
        secret_generator: G,
        blinder_generator: G,
        verifiers: &[G]
    ) -> Self { ... }
    fn verify_share_and_blinder<I: ShareIdentifier, S: Share<Identifier = I>>(
        &self,
        share: &S,
        blinder: &S
    ) -> VsssResult<()> { ... }
}
Expand description

Objects that represent the ability to verify shamir shares using Pedersen verifiers

Required Methods§

source

fn empty_pedersen_set_with_capacity( size_hint: usize, secret_generator: G, blinder_generator: G ) -> Self

Create a new verifier set

source

fn secret_generator(&self) -> G

The generator used for the verifiers of secrets

source

fn blinder_generator(&self) -> G

The generator used for the verifiers of blinders

source

fn blind_verifiers(&self) -> &[G]

The verifiers

source

fn blind_verifiers_mut(&mut self) -> &mut [G]

The verifiers as writeable

Provided Methods§

source

fn pedersen_set_with_generators_and_verifiers( secret_generator: G, blinder_generator: G, verifiers: &[G] ) -> Self

Create a verifier set from an existing set of verifiers and generators

source

fn verify_share_and_blinder<I: ShareIdentifier, S: Share<Identifier = I>>( &self, share: &S, blinder: &S ) -> VsssResult<()>

Verify a share and blinder with this set

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<G: Group + GroupEncoding + Default> PedersenVerifierSet<G> for Vec<G>

source§

fn empty_pedersen_set_with_capacity( size_hint: usize, secret_generator: G, blinder_generator: G ) -> Self

source§

fn secret_generator(&self) -> G

source§

fn blinder_generator(&self) -> G

source§

fn blind_verifiers(&self) -> &[G]

source§

fn blind_verifiers_mut(&mut self) -> &mut [G]

source§

impl<G: Group + GroupEncoding + Default, L: ArrayLength> PedersenVerifierSet<G> for GenericArray<G, L>

source§

fn empty_pedersen_set_with_capacity( _size_hint: usize, secret_generator: G, blinder_generator: G ) -> Self

source§

fn secret_generator(&self) -> G

source§

fn blinder_generator(&self) -> G

source§

fn blind_verifiers(&self) -> &[G]

source§

fn blind_verifiers_mut(&mut self) -> &mut [G]

source§

impl<G: Group + GroupEncoding + Default, const L: usize> PedersenVerifierSet<G> for [G; L]

source§

fn empty_pedersen_set_with_capacity( _size_hint: usize, secret_generator: G, blinder_generator: G ) -> Self

source§

fn secret_generator(&self) -> G

source§

fn blinder_generator(&self) -> G

source§

fn blind_verifiers(&self) -> &[G]

source§

fn blind_verifiers_mut(&mut self) -> &mut [G]

Implementors§