Files
zeekay f34fe614ee feat: Initial Hanzo crypto package with post-quantum algorithms
- ML-KEM (FIPS 203) - Pure Rust, ARM compatible
- ML-DSA (FIPS 204) - Pure Rust signatures
- HQC code-based cryptography
- BLAKE3, ChaCha20-Poly1305, AES-256-GCM
- Full ARM Mac (M1/M2/M3) compatibility
- No AVX2 assembly issues
2025-09-22 06:02:34 -05:00

72 lines
1.9 KiB
TOML

[package]
name = "hanzo-crypto"
version = "0.1.0"
edition = "2021"
authors = ["Hanzo Team"]
description = "Modern post-quantum cryptography library with NIST-standardized algorithms"
license = "MIT OR Apache-2.0"
repository = "https://github.com/hanzo/crypto"
keywords = ["crypto", "post-quantum", "ml-kem", "ml-dsa", "pqc"]
categories = ["cryptography", "no-std"]
[dependencies]
# NIST-standardized post-quantum algorithms (Pure Rust - ARM compatible!)
ml-kem = "0.3.0-pre" # ML-KEM (FIPS 203) - formerly Kyber
ml-dsa = "0.1.0-rc.0" # ML-DSA (FIPS 204) - formerly Dilithium
pqcrypto-hqc = "0.2" # HQC code-based cryptography
pqcrypto-traits = "0.3" # Common traits for PQC
# Symmetric cryptography
blake3 = "1.5" # BLAKE3 hashing
chacha20poly1305 = "0.10" # ChaCha20-Poly1305 AEAD
aes-gcm = "0.10" # AES-256-GCM
# Additional cryptographic primitives
sha3 = "=0.10.8" # SHA-3 family (pinned for compatibility)
x25519-dalek = "2.0" # X25519 key exchange (transitional)
ed25519-dalek = "2.1" # Ed25519 signatures (transitional)
argon2 = "0.5" # Password hashing
# Utilities
rand = "0.8"
rand_core = "0.6"
zeroize = { version = "1.8", features = ["derive"] }
subtle = "2.6"
hex = "0.4"
base64 = "0.22"
# Serialization
serde = { version = "1.0", features = ["derive"], optional = true }
serde_json = { version = "1.0", optional = true }
bincode = { version = "1.3", optional = true }
# Error handling
thiserror = "1.0"
anyhow = "1.0"
[dev-dependencies]
criterion = { version = "0.5", features = ["html_reports"] }
proptest = "1.5"
quickcheck = "1.0"
rand_chacha = "0.3"
[features]
default = ["std", "serialization"]
std = []
serialization = ["serde", "serde_json", "bincode"]
no-std = []
# Performance optimizations
[profile.release]
lto = true
codegen-units = 1
opt-level = 3
strip = true
[profile.bench]
inherits = "release"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]