pub struct Bls12381 { /* private fields */ }Expand description
BLS12-381 implementation of the Scheme trait.
This implementation uses the blst crate for BLS12-381 operations. This
crate implments serialization according to the “ZCash BLS12-381” specification
(https://github.com/supranational/blst/tree/master?tab=readme-ov-file#serialization-format) and
hashes messages according to RFC 9380.
Trait Implementations§
Source§impl Scheme for Bls12381
impl Scheme for Bls12381
Source§fn from(private_key: PrivateKey) -> Option<Self>
fn from(private_key: PrivateKey) -> Option<Self>
Returns a new instance of the scheme from a secret key.
Source§fn from_seed(seed: u64) -> Self
fn from_seed(seed: u64) -> Self
Returns a new instance of the scheme from a provided seed. Read more
Source§fn private_key(&self) -> PrivateKey
fn private_key(&self) -> PrivateKey
Returns the serialized private key of the signer.
Source§fn public_key(&self) -> PublicKey
fn public_key(&self) -> PublicKey
Returns the serialized public key of the signer.
Source§fn sign(&mut self, namespace: &[u8], message: &[u8]) -> Signature
fn sign(&mut self, namespace: &[u8], message: &[u8]) -> Signature
Sign the given message. Read more
Auto Trait Implementations§
impl Freeze for Bls12381
impl RefUnwindSafe for Bls12381
impl Send for Bls12381
impl Sync for Bls12381
impl Unpin for Bls12381
impl UnwindSafe for Bls12381
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more