Oregami
Repositories/oxedyne/fe2o3

oxedyne/fe2o3/fe2o3_iop_crypto/src/lib.rs

1.2 KiB, 2 runs

created by r1870400018:385, which is this file's identity for as long as the history lasts, whatever it is later renamed to

download · who wrote it · its history

1//! Provides interoperability traits and implementations for cryptographic operations.
2//!
3//! This crate defines fundamental traits that allow cryptographic schemes to be used
4//! interchangeably through common interfaces:
5//!
6//! - `KeyExchanger` for key exchange mechanisms
7//! - `Encrypter` for encryption/decryption operations
8//! - `Signer` for digital signatures
9//! - `KeyManager` for handling public/private key pairs
10//!
11//! Each trait is implemented via a `DefAlt` pattern that supports fallback behaviour between
12//! default and given implementations. The implementations handle proper error propagation and
13//! maintain type safety throughout cryptographic operations.
14//!
15//! All trait implementations avoid unsafe code and unwrap operations to maintain robustness.
16//!
17#![forbid(unsafe_code)]
18pub mod enc;
19pub mod kem;
20pub mod keys;
21pub mod sign;
22
23/// A supertrait of every trait here, so an implementor need not name fe2o3_namex to satisfy it.
24pub use oxedyne_fe2o3_namex::id::InNamex;
25/// The short, local form of a name, returned by [`InNamex::local_id`].
26pub use oxedyne_fe2o3_namex::id::LocalId;
27/// The universal identifier an implementor of [`InNamex`] must return.
28pub use oxedyne_fe2o3_namex::id::NamexId;