[][src]Struct nazgul::blsag::BLSAG

pub struct BLSAG { /* fields omitted */ }

Back’s Linkable Spontaneous Anonymous Group (bLSAG) signatures

This an enhanced version of the LSAG algorithm where linkability is independent of the ring’s decoy members.

Please read tests at the bottom of the source code for this module for examples on how to use it

Trait Implementations

impl KeyImageGen<Scalar, RistrettoPoint> for BLSAG[src]

fn generate_key_image<Hash: Digest<OutputSize = U64> + Clone + Default>(
    k: Scalar
) -> RistrettoPoint
[src]

Some signature schemes require the key images to be signed as well. Use this method to generate them

This is for linking two signatures and checking if they are signed by the same person

impl Sign<Scalar, Vec<RistrettoPoint>> for BLSAG[src]

fn sign<Hash: Digest<OutputSize = U64> + Clone + Default, CSPRNG: CryptoRng + RngCore + Default>(
    k: Scalar,
    ring: Vec<RistrettoPoint>,
    message: &Vec<u8>
) -> BLSAG
[src]

To sign you need k your private key, and ring which is the public keys of everyone except you. You are signing the message

impl Verify for BLSAG[src]

fn verify<Hash: Digest<OutputSize = U64> + Clone + Default>(
    signature: BLSAG,
    message: &Vec<u8>
) -> bool
[src]

To verify a signature you need the message too

Auto Trait Implementations

impl RefUnwindSafe for BLSAG

impl Send for BLSAG

impl Sync for BLSAG

impl Unpin for BLSAG

impl UnwindSafe for BLSAG

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.