[][src]Trait bls12_381_ietf::BaseG2Ciphersuite

pub trait BaseG2Ciphersuite: Engine {
    type BLSPublicKey;
    type BLSSecretKey;
    type BLSSignature;
    type Fq2;

    const DST: &'static str;

    fn sk_to_pk(secret_key: Self::BLSSecretKey) -> Self::BLSPublicKey;
fn keygen(ikm: &[u8]) -> (Self::BLSPublicKey, Self::BLSSecretKey);
fn key_validate(
        secret_key: Self::BLSPublicKey
    ) -> Result<Self::G1Affine, GroupDecodingError>;
fn core_sign(
        secret_key: Self::BLSSecretKey,
        message: &[u8],
        dst: &'static str
    ) -> Self::BLSSignature;
fn core_verify(
        public_key: &Self::BLSPublicKey,
        message: &[u8],
        signature: &Self::BLSSignature,
        dst: &'static str
    ) -> Result<bool, GroupDecodingError>; }

Associated Types

Loading content...

Associated Constants

const DST: &'static str

Loading content...

Required methods

fn sk_to_pk(secret_key: Self::BLSSecretKey) -> Self::BLSPublicKey

fn keygen(ikm: &[u8]) -> (Self::BLSPublicKey, Self::BLSSecretKey)

fn key_validate(
    secret_key: Self::BLSPublicKey
) -> Result<Self::G1Affine, GroupDecodingError>

fn core_sign(
    secret_key: Self::BLSSecretKey,
    message: &[u8],
    dst: &'static str
) -> Self::BLSSignature

fn core_verify(
    public_key: &Self::BLSPublicKey,
    message: &[u8],
    signature: &Self::BLSSignature,
    dst: &'static str
) -> Result<bool, GroupDecodingError>

Loading content...

Implementations on Foreign Types

impl BaseG2Ciphersuite for Bls12[src]

type BLSSecretKey = Self::Fr

type BLSPublicKey = G1Compressed

type BLSSignature = G2Compressed

type Fq2 = Self::Fqe

Loading content...

Implementors

Loading content...