mirror of
https://github.com/kristoferssolo/cipher-workshop.git
synced 2025-12-31 13:52:29 +00:00
docs(aes,des): add crate documentation and improve re-exports
Add crate-level doc comments with usage examples. Export additional
types for library users:
- aes: Block32 (32-bit word type)
- des: LR (Feistel round state)
This commit is contained in:
parent
54b3d8716d
commit
dd07a1d29b
@ -1,3 +1,16 @@
|
||||
//! AES (Advanced Encryption Standard) implementation.
|
||||
//!
|
||||
//! Provides AES-128 block cipher with 128-bit keys and blocks.
|
||||
//!
|
||||
//! # Example
|
||||
//! ```
|
||||
//! use aes::Aes;
|
||||
//! use cipher_core::BlockCipher;
|
||||
//!
|
||||
//! let cipher = Aes::new(0x2b7e1516_28aed2a6_abf71588_09cf4f3c_u128);
|
||||
//! let ciphertext = cipher.encrypt(&[0u8; 16]).unwrap();
|
||||
//! ```
|
||||
|
||||
mod aes;
|
||||
mod block;
|
||||
mod constants;
|
||||
@ -5,4 +18,4 @@ mod key;
|
||||
mod operations;
|
||||
mod sbox;
|
||||
|
||||
pub use {aes::Aes, block::Block128};
|
||||
pub use {aes::Aes, block::Block128, block::Block32};
|
||||
|
||||
@ -1,7 +1,21 @@
|
||||
//! DES (Data Encryption Standard) implementation.
|
||||
//!
|
||||
//! Provides the classic DES block cipher with 64-bit keys and blocks.
|
||||
//! Uses 16 Feistel rounds with 48-bit subkeys.
|
||||
//!
|
||||
//! # Example
|
||||
//! ```
|
||||
//! use des::Des;
|
||||
//! use cipher_core::BlockCipher;
|
||||
//!
|
||||
//! let cipher = Des::new(0x133457799BBCDFF1_u64);
|
||||
//! let ciphertext = cipher.encrypt(&[0u8; 8]).unwrap();
|
||||
//! ```
|
||||
|
||||
mod block;
|
||||
pub mod constants;
|
||||
mod des;
|
||||
mod key;
|
||||
pub mod utils;
|
||||
|
||||
pub use {block::Block64, des::Des};
|
||||
pub use {block::Block64, block::LR, des::Des};
|
||||
|
||||
Loading…
Reference in New Issue
Block a user