INNER CODE UNIT · Rust
verify_challenge
tangle-network/blueprint · crates/auth/src/lib.rs:143
pub fn verify_challenge(
challenge: &[u8; 32],
signature: &[u8],
pub_key: &[u8],
key_type: types::KeyType,
) -> Result<bool, Error> {
match key_type {
types::KeyType::Unknown => Err(Error::UnknownKeyType),
types::KeyType::Ecdsa => verify_challenge_ecdsa(challenge, signature, pub_key),
types::KeyType::Sr25519 => verify_challenge_sr25519(challenge, signature, pub_key),
types::KeyType::Bn254Bls => verify_challenge_bn254_bls(challenge, signature, pub_key),
}
}
/// Verifies the challenge solution using ECDSA.
fn verify_challenge_ecdsa(
challenge: &[u8; 32],
signature: &[u8],