//! `plexus-crypto` — cryptographic primitive wrappers.
//!
//! Presents a stable internal API over the underlying primitives so the rest of
//! the stack never touches a specific backend directly. The backend is
//! selectable via the `rustcrypto` (default) and `ring` features
//! (`ARCHITECTURE.md` §2.1, §3.3). `no_std + alloc`.
//!
//! Security invariants (§9.2): MAC verification is constant-time, and key
//! material is zeroized on drop.
#![no_std]
#![forbid(unsafe_code)]
// The slice→array conversions on fixed-size key material are provably
// infallible; documenting unreachable panics would be noise.
#![allow(clippy::missing_panics_doc)]

extern crate alloc;

pub mod derive;
pub mod error;
pub mod token;

pub use derive::DerivedKey;
pub use error::Error;
pub use token::Token;
