From 768ecf56ba0ad9dd1a0c1412b57db80275fc9466 Mon Sep 17 00:00:00 2001 From: Fintan Halpenny Date: Tue, 3 Mar 2026 15:20:15 +0000 Subject: [PATCH] crypto: Add `impl Verifier for PublicKey` Add `impl Verifier for PublicKey`, to allow using the popular trait from the `signature` crate in verification codepaths. --- crates/radicle-crypto/src/lib.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/crates/radicle-crypto/src/lib.rs b/crates/radicle-crypto/src/lib.rs index 7c7c43cb..16ffc801 100644 --- a/crates/radicle-crypto/src/lib.rs +++ b/crates/radicle-crypto/src/lib.rs @@ -174,6 +174,14 @@ impl TryFrom for Signature { )] pub struct PublicKey(pub ed25519::PublicKey); +impl signature::Verifier for PublicKey { + fn verify(&self, msg: &[u8], signature: &Signature) -> Result<(), signature::Error> { + self.0 + .verify(msg, signature) + .map_err(signature::Error::from_source) + } +} + #[cfg(feature = "cyphernet")] impl cyphernet::display::MultiDisplay for PublicKey { type Display = String;