[package]
name = "pqfile"
version = "3.2.0"
edition = "2021"
description = "Quantum-resistant file encryption: ML-KEM (512/768/1024), hybrid X25519+ML-KEM-768, ML-DSA-65 signing, multi-recipient, Shamir sharing"
license = "MIT"
repository = "https://github.com/dangel34/PQ-File-Encryption"
homepage = "https://github.com/dangel34/PQ-File-Encryption"
documentation = "https://docs.rs/pqfile"
readme = "../README.md"
keywords = ["encryption", "post-quantum", "ml-kem", "chacha20", "cryptography"]
categories = ["cryptography", "filesystem"]

[dependencies]
ml-kem = { version = "0.3", features = ["getrandom", "zeroize"] }
chacha20poly1305 = "0.10"
getrandom = { workspace = true }
zeroize = { version = "1", features = ["derive"] }
pem = "3"
thiserror = "2"
sha3 = "0.12"
argon2 = { version = "0.5", features = ["zeroize"] }
aes-gcm = "0.10"
ml-dsa = { version = "0.1.0", features = ["getrandom", "zeroize"] }
x25519-dalek = { version = "2", features = ["static_secrets", "zeroize"] }
hkdf = "0.13"
sha2 = "0.11"
rayon = "1"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
zstd = "0.13.3"

[dev-dependencies]
tempfile = { workspace = true }
serde_json = "1"
criterion = { version = "0.8", features = ["html_reports"] }

[[bench]]
name = "crypto"
harness = false

