From 647f0c851903c4c740e3d78ba89d212bc5ddf0f1 Mon Sep 17 00:00:00 2001 From: CleverWild Date: Mon, 29 Jun 2026 16:58:35 +0200 Subject: [PATCH] refactor(crypto): move Integrable trait to arbiter-crypto --- server/crates/arbiter-crypto/src/integrity.rs | 6 ++++++ server/crates/arbiter-crypto/src/lib.rs | 1 + server/crates/arbiter-server/src/crypto/integrity/v1.rs | 5 +---- 3 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 server/crates/arbiter-crypto/src/integrity.rs diff --git a/server/crates/arbiter-crypto/src/integrity.rs b/server/crates/arbiter-crypto/src/integrity.rs new file mode 100644 index 0000000..818147a --- /dev/null +++ b/server/crates/arbiter-crypto/src/integrity.rs @@ -0,0 +1,6 @@ +use crate::hashing::Hashable; + +pub trait Integrable: Hashable { + const KIND: &'static str; + const VERSION: i32 = 1; +} diff --git a/server/crates/arbiter-crypto/src/lib.rs b/server/crates/arbiter-crypto/src/lib.rs index 8e1c9ce..4d0690f 100644 --- a/server/crates/arbiter-crypto/src/lib.rs +++ b/server/crates/arbiter-crypto/src/lib.rs @@ -1,6 +1,7 @@ #[cfg(feature = "authn")] pub mod authn; pub mod hashing; +pub mod integrity; #[cfg(feature = "safecell")] pub mod safecell; diff --git a/server/crates/arbiter-server/src/crypto/integrity/v1.rs b/server/crates/arbiter-server/src/crypto/integrity/v1.rs index edb2274..402a3e6 100644 --- a/server/crates/arbiter-server/src/crypto/integrity/v1.rs +++ b/server/crates/arbiter-server/src/crypto/integrity/v1.rs @@ -52,10 +52,7 @@ pub const INTEGRITY_SUBKEY_TAG: &[u8] = b"arbiter/db-integrity-key/v1"; pub type HmacSha256 = Hmac; -pub trait Integrable: Hashable { - const KIND: &'static str; - const VERSION: i32 = 1; -} +pub use arbiter_crypto::integrity::Integrable; fn payload_hash(payload: &impl Hashable) -> [u8; 32] { let mut hasher = Sha256::new();