corevpn-crypto
Cryptographic primitives for CoreVPN - secure key exchange, encryption, and certificate handling.
Features
- Key Exchange: X25519 Diffie-Hellman for perfect forward secrecy
- Encryption: ChaCha20-Poly1305 and AES-256-GCM AEAD ciphers
- Signatures: Ed25519 digital signatures
- Certificates: X.509 certificate generation and validation
- Key Derivation: HKDF-based key derivation
- HMAC Authentication: OpenVPN-compatible tls-auth
- Secure Memory: Zeroization of sensitive data
Usage
use ;
// Generate a Certificate Authority
let ca = generate?;
// Generate server certificate
let = ca.generate_server_cert?;
// Generate client certificate
let = ca.generate_client_cert?;
// Create cipher suite for data channel
let cipher = new_chacha20_poly1305?;
let encrypted = cipher.encrypt?;
Security
This crate uses only audited, pure-Rust cryptographic implementations:
x25519-dalek/ed25519-dalekfor Curve25519 operationschacha20poly1305/aes-gcmfor AEAD encryptionringfor additional cryptographic primitiveszeroizefor secure memory handling
License
Licensed under either of:
- Apache License, Version 2.0 (LICENSE-APACHE)
- MIT license (LICENSE-MIT)
at your option.