Skip to main content

envvault/crypto/
mod.rs

1//! Cryptographic primitives for EnvVault.
2//!
3//! This module provides:
4//! - AES-256-GCM encryption and decryption (`encryption`)
5//! - Argon2id password-based key derivation (`kdf`)
6//! - HKDF-based per-secret key and HMAC key derivation (`keys`)
7
8pub mod encryption;
9pub mod kdf;
10pub mod keyfile;
11pub mod keys;
12
13// Re-export the most commonly used items so callers can write:
14//   use crate::crypto::{encrypt, decrypt, derive_master_key, ...};
15pub use encryption::{decrypt, encrypt};
16pub use kdf::{derive_master_key, derive_master_key_with_params, generate_salt, Argon2Params};
17pub use keyfile::{combine_password_keyfile, generate_keyfile, hash_keyfile, load_keyfile};
18pub use keys::{derive_hmac_key, derive_secret_key};