[][src]Trait bls_sigs_ref::BLSSignaturePop

pub trait BLSSignaturePop: BLSSigCore {
    type Length: ArrayLength<u8>;

    const CSUITE: &'static [u8];
    const CSUITE_POP: &'static [u8];
    fn sign<B: AsRef<[u8]>>(x_prime: Self::Scalar, msg: B) -> Self { ... }
fn verify<B: AsRef<[u8]>>(pk: Self::PKType, sig: Self, msg: B) -> bool { ... }
fn aggregate_verify<B: AsRef<[u8]>>(
        pks: &[Self::PKType],
        msgs: &[B],
        sig: Self
    ) -> bool { ... }
fn multisig_verify<B: AsRef<[u8]>>(
        pks: &[Self::PKType],
        sig: Self,
        msg: B
    ) -> bool { ... }
fn pop_prove<B: AsRef<[u8]>>(sk: B) -> Self { ... }
fn pop_verify(pk: Self::PKType, sig: Self) -> bool { ... } }

BLS signature with proof of possession

Associated Types

type Length: ArrayLength<u8>

Length of serialized pubkey, for computing PoP

Loading content...

Associated Constants

const CSUITE: &'static [u8]

Ciphersuite tag

const CSUITE_POP: &'static [u8]

PoP ciphersuite tag

Loading content...

Provided methods

fn sign<B: AsRef<[u8]>>(x_prime: Self::Scalar, msg: B) -> Self

re-export from BLSSigCore

fn verify<B: AsRef<[u8]>>(pk: Self::PKType, sig: Self, msg: B) -> bool

re-export from BLSSigCore

fn aggregate_verify<B: AsRef<[u8]>>(
    pks: &[Self::PKType],
    msgs: &[B],
    sig: Self
) -> bool

just invoke verify from BLSSigCore

fn multisig_verify<B: AsRef<[u8]>>(
    pks: &[Self::PKType],
    sig: Self,
    msg: B
) -> bool

verify a multisig

fn pop_prove<B: AsRef<[u8]>>(sk: B) -> Self

prove possession

fn pop_verify(pk: Self::PKType, sig: Self) -> bool

check proof of possession

Loading content...

Implementations on Foreign Types

impl BLSSignaturePop for G1[src]

impl BLSSignaturePop for G2[src]

Loading content...

Implementors

Loading content...