spark_rust/wallet/utils/
ecdsa.rs1use crate::error::SparkSdkError;
2use bitcoin::secp256k1::ecdsa::Signature;
3use bitcoin::secp256k1::Message;
4use bitcoin::secp256k1::PublicKey;
5use bitcoin::secp256k1::VerifyOnly;
6
7pub(crate) fn verify_operator_ecdsa_signature(
8 operator_sig: &Signature,
9 operator_pubkey: &PublicKey,
10 message: &[u8],
11 secp: &bitcoin::secp256k1::Secp256k1<VerifyOnly>,
12) -> Result<(), SparkSdkError> {
13 let message = Message::from_digest_slice(message)?;
14
15 secp.verify_ecdsa(&message, operator_sig, operator_pubkey)?;
16
17 Ok(())
18}