sigmate 1.0.0

A modern, developer-focused CLI for cryptographic file signing and verification.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
use crate::error::AppError;
use ed25519_dalek::{Signature, VerifyingKey, Verifier};

pub fn verify_signature(
    verifying_key: &VerifyingKey,
    data: &[u8],
    signature: &[u8],
) -> Result<bool, AppError> {
    let sig = Signature::from_slice(signature)
        .map_err(|_| AppError::Crypto("Invalid signature format.".to_string()))?;

    Ok(verifying_key.verify(data, &sig).is_ok())
}