blob: ece7b85c8951ca48a24c53d4007586939fda88b4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
|
use ed25519_dalek::{PublicKey, Signature, Verifier};
pub fn validate_signature(public_key: &PublicKey, data: &[u8], hex_signature: &str) -> bool {
let mut slice: [u8; Signature::BYTE_SIZE] = [0; Signature::BYTE_SIZE];
let signature_result = hex::decode_to_slice(hex_signature, &mut slice);
let mut result = false;
if signature_result.is_ok() {
result = public_key.verify(data, &Signature::from(slice)).is_ok();
}
result
}
|