Struct simperby_core::crypto::Signature
source · pub struct Signature { /* private fields */ }Expand description
A cryptographic signature.
Implementations§
source§impl Signature
impl Signature
pub const fn zero() -> Self
sourcepub fn sign(
data: Hash256,
private_key: &PrivateKey
) -> Result<Self, CryptoError>
pub fn sign( data: Hash256, private_key: &PrivateKey ) -> Result<Self, CryptoError>
Creates a new signature from the given data and keys.
sourcepub fn verify(
&self,
data: Hash256,
public_key: &PublicKey
) -> Result<(), CryptoError>
pub fn verify( &self, data: Hash256, public_key: &PublicKey ) -> Result<(), CryptoError>
Verifies the signature against the given data and public key.
sourcepub fn recover(&self, data: Hash256) -> Result<PublicKey, CryptoError>
pub fn recover(&self, data: Hash256) -> Result<PublicKey, CryptoError>
Recover a public key from the given signature.
sourcepub fn from_array(bytes: [u8; 65]) -> Self
pub fn from_array(bytes: [u8; 65]) -> Self
Constructs a signature from the given bytes, but does not verify its validity.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Signature
impl<'de> Deserialize<'de> for Signature
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Ord for Signature
impl Ord for Signature
source§impl PartialEq<Signature> for Signature
impl PartialEq<Signature> for Signature
source§impl PartialOrd<Signature> for Signature
impl PartialOrd<Signature> for Signature
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self and other) and is used by the <=
operator. Read moreimpl Eq for Signature
impl StructuralEq for Signature
impl StructuralPartialEq for Signature
Auto Trait Implementations§
impl RefUnwindSafe for Signature
impl Send for Signature
impl Sync for Signature
impl Unpin for Signature
impl UnwindSafe for Signature
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<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.source§impl<T> ToHex for Twhere
T: AsRef<[u8]>,
impl<T> ToHex for Twhere T: AsRef<[u8]>,
source§fn encode_hex<U>(&self) -> Uwhere
U: FromIterator<char>,
fn encode_hex<U>(&self) -> Uwhere U: FromIterator<char>,
Encode the hex strict representing
self into the result. Lower case
letters are used (e.g. f9b4ca)source§fn encode_hex_upper<U>(&self) -> Uwhere
U: FromIterator<char>,
fn encode_hex_upper<U>(&self) -> Uwhere U: FromIterator<char>,
Encode the hex strict representing
self into the result. Upper case
letters are used (e.g. F9B4CA)