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§
Sourcefn verify_ed25519_signature(
&self,
public_key: PublicKeyEd25519,
signature: SignatureEd25519,
message: &[u8],
) -> bool
fn verify_ed25519_signature( &self, public_key: PublicKeyEd25519, signature: SignatureEd25519, message: &[u8], ) -> bool
Verify an ed25519 signature.
Sourcefn verify_ecdsa_secp256k1_signature(
&self,
public_key: PublicKeyEcdsaSecp256k1,
signature: SignatureEcdsaSecp256k1,
message_hash: [u8; 32],
) -> bool
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.
Sourcefn hash_sha2_256(&self, data: &[u8]) -> HashSha2256
fn hash_sha2_256(&self, data: &[u8]) -> HashSha2256
Hash the data using the SHA2-256 algorithm.
Sourcefn hash_sha3_256(&self, data: &[u8]) -> HashSha3256
fn hash_sha3_256(&self, data: &[u8]) -> HashSha3256
Hash the data using the SHA3-256 algorithm.
Sourcefn hash_keccak_256(&self, data: &[u8]) -> HashKeccak256
fn hash_keccak_256(&self, data: &[u8]) -> HashKeccak256
Hash the data using the Keccak-256 algorithm.