Trait HasCryptoPrimitives

Source
pub trait HasCryptoPrimitives {
    // Required methods
    fn verify_ed25519_signature(
        &self,
        public_key: PublicKeyEd25519,
        signature: SignatureEd25519,
        message: &[u8],
    ) -> bool;
    fn verify_ecdsa_secp256k1_signature(
        &self,
        public_key: PublicKeyEcdsaSecp256k1,
        signature: SignatureEcdsaSecp256k1,
        message_hash: [u8; 32],
    ) -> bool;
    fn hash_sha2_256(&self, data: &[u8]) -> HashSha2256;
    fn hash_sha3_256(&self, data: &[u8]) -> HashSha3256;
    fn hash_keccak_256(&self, data: &[u8]) -> HashKeccak256;
}
Expand description

Objects which provide cryptographic primitives.

§Deprecation notice

This trait is deprecated along with crate::test_infrastructure.

Use CryptoPrimitives instead unless you intend to use the deprecated test infrastructure.

See the crate documentation for more details.

Required Methods§

Source

fn verify_ed25519_signature( &self, public_key: PublicKeyEd25519, signature: SignatureEd25519, message: &[u8], ) -> bool

Verify an ed25519 signature.

Source

fn verify_ecdsa_secp256k1_signature( &self, public_key: PublicKeyEcdsaSecp256k1, signature: SignatureEcdsaSecp256k1, message_hash: [u8; 32], ) -> bool

Verify an ecdsa signature over secp256k1 with the bitcoin-core implementation.

Source

fn hash_sha2_256(&self, data: &[u8]) -> HashSha2256

Hash the data using the SHA2-256 algorithm.

Source

fn hash_sha3_256(&self, data: &[u8]) -> HashSha3256

Hash the data using the SHA3-256 algorithm.

Source

fn hash_keccak_256(&self, data: &[u8]) -> HashKeccak256

Hash the data using the Keccak-256 algorithm.

Implementors§