#![forbid(unsafe_code)]
#![no_std]
extern crate alloc;
pub use alloc::boxed::Box;
pub use alloc::string::String;
pub use alloc::vec::Vec;
pub use subtle::ConstantTimeEq;
pub use zeroize::{Zeroize, ZeroizeOnDrop};
mod algo_id;
mod ct;
mod error;
mod secret;
pub mod traits;
pub use algo_id::{AlgorithmCategory, AlgorithmId};
pub use ct::{ct_eq, ct_is_zero, ct_select};
pub use error::CryptoError;
pub use secret::{KeyPair, SecretKey, SecretVec};
pub use traits::{
Aead, Hash, Kdf, Kem, KeyAgreement, KeyGenerator, Mac, PasswordHash, PasswordHashParams, Rng,
Signer, StreamingAead, StreamingHash, StreamingMac, Verifier,
};
#[cfg(test)]
mod tests;