ironcrypt 0.1.0

A Rust library for secure password hashing, RSA key generation, and managing the encryption and verification of passwords and binary files.
Documentation
# ===================================================================
# IronCrypt Example Configuration
# ===================================================================
# Copy this file to 'ironcrypt.toml' and customize it for your needs.

# -------------------------------------------------------------------
# Cryptography Settings
# -------------------------------------------------------------------
[cryptography]
# RSA key size in bits. Recommended: 2048 or 4096.
rsa_key_size = 2048

# -------------------------------------------------------------------
# Password Hashing (Argon2)
# -------------------------------------------------------------------
# These values control the computational cost of hashing.
# Higher values are more secure but slower.
[hashing]
# Memory cost in KiB (e.g., 65536 = 64 MiB).
argon2_memory_cost = 65536
# Time cost (number of iterations).
argon2_time_cost = 3
# Parallelism (number of parallel threads).
argon2_parallelism = 1

# -------------------------------------------------------------------
# Password Strength Policy
# -------------------------------------------------------------------
[password_policy]
# --- Length Requirements ---
min_length = 12
max_length = 128

# --- Character Type Requirements (Booleans) ---
# Set to 'true' to enforce the presence of these character types.
require_uppercase = true
require_numbers = true
require_special_chars = true

# --- Minimum Character Counts ---
# Minimum number of characters of each type required if the above is true.
uppercase_count = 1
lowercase_count = 1
digits_count = 1
special_chars_count = 1

# --- Disallowed Patterns ---
# A list of common or weak patterns to forbid.
# Example: disallowed_patterns = ["password", "123456", "qwerty"]
disallowed_patterns = []