Skip to main content

Crate lib_q_aead

Crate lib_q_aead 

Source
Expand description

lib-Q AEAD - Post-quantum Authenticated Encryption

This crate provides a flexible, algorithm-agnostic implementation of post-quantum authenticated encryption with associated data (AEAD). It supports dynamic algorithm registration and follows libQ’s architectural principles.

Re-exports§

pub use security::constant_time;
pub use security::SecurityConfig;
pub use security::SecurityContext;
pub use security::get_security_config;
pub use security::set_security_config;
pub use security::memory;
pub use security::nonce;
pub use security::side_channel;
pub use security::stack_buffer;
pub use security::timing;
pub use security::validation;

Modules§

security
Security enhancements for lib-q-aead

Macros§

impl_aead_plugin
Macro to create a plugin implementation

Structs§

AeadKey
AEAD key
AeadMetadata
Metadata for AEAD algorithms
AeadRegistry
Registry for AEAD algorithms
DuplexSpongeAead
Duplex-sponge AEAD (Keccak-f[1600]) — registry / HPKE-facing type.
LibQAeadProvider
Registry-backed AEAD provider for integration with lib-q-core contexts.
Nonce
Nonce for AEAD operations
PluginRegistry
Registry for AEAD plugins with enhanced dependency management
RomulusMAead
Romulus-M (nonce-misuse-resistant AEAD) for the lib-Q AEAD registry.
RomulusNAead
Romulus-N (nonce-based AEAD) for the lib-Q AEAD registry.
SaturninAead
Saturnin AEAD implementation wrapper
Shake256Aead
SHAKE256 AEAD implementation with proper domain separation
TweakAead
Tweak AEAD — registry / HPKE-facing type.

Enums§

Algorithm
Algorithm identifiers for cryptographic operations
AlgorithmCategory
Algorithm categories
PerformanceTier
Performance tier for AEAD algorithms

Traits§

Aead
Trait for authenticated encryption with associated data (AEAD).
AeadPlugin
Plugin trait for AEAD algorithms
AeadWithMetadata
Trait for AEAD implementations that provide metadata

Functions§

available_algorithms
Get available AEAD algorithms
create_aead
Create an AEAD instance by algorithm
get_algorithm_metadata
Get algorithm metadata
is_algorithm_available
Check if an algorithm is available
register_algorithm
Register a custom AEAD algorithm
register_plugin
Register a plugin
registry
Get the global AEAD registry

Type Aliases§

Result
Result type for lib-Q operations