Skip to main content

VerificationAlgorithm

Trait VerificationAlgorithm 

Source
pub trait VerificationAlgorithm: AsymmetricPublicKey {
    type Signature: AsRef<[u8]> + Clone;

    const SIGNATURE_SIZE: usize;
    const SIGNATURE_BECH32_HRP: &'static str;

    // Required methods
    fn verify_bytes(
        pubkey: &Self::Public,
        signature: &Self::Signature,
        msg: &[u8],
    ) -> Verification;
    fn signature_from_bytes(
        data: &[u8],
    ) -> Result<Self::Signature, SignatureError>;
}

Required Associated Constants§

Required Associated Types§

Required Methods§

Source

fn verify_bytes( pubkey: &Self::Public, signature: &Self::Signature, msg: &[u8], ) -> Verification

Source

fn signature_from_bytes(data: &[u8]) -> Result<Self::Signature, SignatureError>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl VerificationAlgorithm for Ed25519

Source§

const SIGNATURE_SIZE: usize = ed25519::SIGNATURE_LENGTH

Source§

const SIGNATURE_BECH32_HRP: &'static str = "ed25519_sig"

Source§

type Signature = Sig

Source§

impl VerificationAlgorithm for Ed25519Bip32

Source§

const SIGNATURE_SIZE: usize = ed25519_bip32::SIGNATURE_SIZE

Source§

const SIGNATURE_BECH32_HRP: &'static str = "xsig"

Source§

type Signature = Signature<u8>

Source§

impl VerificationAlgorithm for LegacyDaedalus

Source§

const SIGNATURE_SIZE: usize = ed25519_bip32::SIGNATURE_SIZE

Source§

const SIGNATURE_BECH32_HRP: &'static str = "legacy_xsig"

Source§

type Signature = Signature<u8>