pub trait SigningProvider: Send + Sync {
// Required methods
fn record_hash(&self, canonical_json: &[u8]) -> String;
fn chain_hash(
&self,
prev_chain_hash: Option<&str>,
record_hash: &str,
) -> String;
fn sign(&self, record_hash: &str) -> String;
fn verify(&self, record_hash: &str, signature_b64: &str) -> bool;
fn public_key_b64(&self) -> String;
fn is_enabled(&self) -> bool;
}