Pluggable Cryptography
NTL’s most important security design decision: cryptography is a module, not a foundation.The Problem with Hardcoded Crypto
Every major protocol today has cryptographic assumptions baked into its core:- TLS uses RSA or ECDSA for key exchange
- Bitcoin uses secp256k1 for signatures
- Ethereum uses ECDSA with keccak256
- HTTPS certificates depend on RSA/ECC
NTL’s Approach
NTL defines a CryptoModule interface that all cryptographic operations go through:Default Implementation
NTL ships with a defaultPostQuantumModule that uses:
| Operation | Algorithm | Standard |
|---|---|---|
| Signatures | CRYSTALS-Dilithium | NIST PQC |
| Key Exchange | CRYSTALS-Kyber | NIST PQC |
| Encryption | AES-256-GCM (symmetric) | NIST |
| Hashing | BLAKE3 | — |