🔐 Cryptography & Security
Enterprise-grade cryptographic primitives and security protocols for building secure, privacy-preserving applications
Overview
The Avx cryptography suite provides a comprehensive collection of modern cryptographic primitives and security protocols. From basic symmetric encryption to cutting-edge post-quantum algorithms and zero-knowledge proofs, these packages are designed for high-performance, memory-safe implementations in Rust.
High Performance
SIMD-optimized implementations with constant-time operations
Side-Channel Resistant
Protected against timing attacks and cache-timing vulnerabilities
Post-Quantum Ready
NIST-approved algorithms for quantum-resistant security
Core Cryptography
Foundation cryptographic primitives for everyday encryption needs
🔐 avx-crypto
CoreComprehensive cryptographic library with symmetric/asymmetric encryption, modern ciphers (AES-GCM, ChaCha20-Poly1305), and key exchange protocols (ECDH, X25519). The foundation for all cryptographic operations.
🔑 avx-hash
CoreHigh-performance cryptographic hash functions including SHA-2, SHA-3, BLAKE2, BLAKE3, and specialized hashes. Optimized with SIMD instructions for maximum throughput.
🛡️ avx-aead
CoreAuthenticated Encryption with Associated Data (AEAD) ciphers providing both confidentiality and authenticity. Includes AES-GCM, ChaCha20-Poly1305, and AES-GCM-SIV implementations.
✅ avx-mac
CoreMessage Authentication Codes (MAC) for verifying data integrity and authenticity. Implements HMAC, CMAC, Poly1305, and BLAKE3-MAC with constant-time verification.
🔀 avx-kdf
CoreKey Derivation Functions for generating cryptographic keys from passwords and secrets. Includes PBKDF2, Argon2, HKDF, and scrypt with memory-hard algorithms for password hashing.
Advanced Cryptography
Cutting-edge cryptographic protocols for next-generation security
🌌 avx-post-quantum
Post-Quantum NISTPost-quantum cryptography algorithms resistant to quantum computer attacks. Implements NIST-approved algorithms: CRYSTALS-Kyber, CRYSTALS-Dilithium, SPHINCS+, and Falcon for future-proof security.
⚛️ avx-quantum
ExperimentalQuantum cryptography protocols including Quantum Key Distribution (QKD), quantum-resistant primitives, and hybrid classical-quantum security schemes for the quantum era.
🎭 avx-zkp
Zero-KnowledgeZero-Knowledge Proof systems enabling privacy-preserving authentication and verification. Implements zk-SNARKs, zk-STARKs, Bulletproofs, and Groth16 for blockchain and privacy applications.
🤝 avx-mpc
Multi-PartySecure Multi-Party Computation protocols for collaborative computation without revealing private inputs. Includes Shamir's Secret Sharing, garbled circuits, and oblivious transfer primitives.
🔢 avx-threshold
DistributedThreshold cryptography for distributed key management and signatures. Enables (t,n)-threshold schemes where t parties out of n are required for cryptographic operations.
Security & Privacy Protocols
Identity, access control, and anonymity solutions
✍️ avx-signature
ProductionDigital signature algorithms for authentication and non-repudiation. Supports ECDSA, EdDSA (Ed25519, Ed448), RSA-PSS, and BLS signatures with batch verification.
📜 avx-pki
ProductionPublic Key Infrastructure for certificate management, X.509 certificates, certificate chains, CRL/OCSP verification, and CA operations for enterprise PKI deployments.
🗝️ avx-secrets
ProductionSecrets management and secure storage for API keys, passwords, tokens, and credentials. Includes encrypted vaults, key rotation, access control, and audit logging.
👻 avx-stealth
PrivacyStealth addresses and privacy-preserving payment protocols. Enables anonymous transactions with one-time addresses, view keys, and spend keys for blockchain privacy.
🧅 avx-onion-routing
AnonymityOnion routing protocol for anonymous communication. Multi-layer encryption, circuit building, relay selection, and Tor-compatible implementations for network anonymity.
Quick Start Example
Get started with Avx cryptography in minutes:
use avx_crypto::{Cipher, KeyPair};
use avx_hash::Hasher;
use avx_aead::AesGcm;
// Generate a key pair
let keypair = KeyPair::generate()?;
// Hash some data
let hash = Hasher::sha3_256(b"Hello, Avx!");
// Encrypt with AEAD
let cipher = AesGcm::new(&key)?;
let ciphertext = cipher.encrypt(b"secret data", &nonce, &aad)?;
// Verify and decrypt
let plaintext = cipher.decrypt(&ciphertext, &nonce, &aad)?;