libslug 0.12.0

A Rust Library For Cryptography Intended For Slug20 That Supports X59 Certificate Format and Post-Quantum Cryptography
Documentation
pub use crate::slugcrypt::api::*;

pub mod prelude;
pub mod signatures;

/// # Core Usage
/// 
/// This is where all the internal stuff occurs. It is lower-level and useful to use. It can be found in the slugcrypt module.
pub mod core {
    pub use crate::errors::{SlugErrors,SlugErrorAlgorithms};
    pub use crate::slugcrypt::internals;
    pub use crate::slugcrypt::traits;
}

/// # Symmetric Encryption
/// 
/// ## Description
/// 
/// **Symmetric Encryption** is the encryption of data using an encryption algorithm that allows decryption through the encryption key.
/// 
/// ## Algorithms
/// 
/// - [X] AES256-GCM
/// - [X] XCHACHA20-POLY1305 (Extended Nonce)
/// 
/// ## TODO
/// - [ ] Add More Algorithms
pub mod SymmetricEncryption {
    pub use crate::slugcrypt::api::SlugCrypt;
}

/// # Public Key Encryption
/// 
/// ## Description
/// 
/// **Public-Key Encryption** is using the secret key to encode data to the respected public key.
/// 
/// ## Algorithms
/// 
/// - [X] ECIES-ED25519-SHA3
/// - [ ] Kyber768
/// - [X] Kyber1024
pub mod PublicKeyEncryption {
    pub use crate::slugcrypt::api::SlugAsyCrypt;
}

/// # Digests
/// 
/// ## Algorithms
/// - [X] SHA2
/// - [X] SHA3
/// - [X] BLAKE2
/// - [X] BLAKE3
pub mod digests {
    pub use crate::slugcrypt::api::SlugDigest;
    pub use crate::slugcrypt::internals::digest::digest::SlugDigest as SlugDigestBytes;
}

/// # Cryptographic Random Number Generator
/// 
/// - [X] OS CSPRNG
/// - [X] Argon2
/// - [X] 
pub mod random {
    pub use crate::slugcrypt::internals::csprng::SlugCSPRNG;
}