blob: 5a486455bc8b185aa532d3c11c77c0a32db780e9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
|
use ed25519_dalek::{PublicKey, Signature, Verifier};
#[inline]
pub fn validate(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);
if signature_result.is_ok() {
public_key.verify(data, &Signature::from(slice)).is_ok()
} else {
false
}
}
|