Choose the Right Algorithm
Find your optimal algorithm in 3 minutes - performance, security, and compliance balanced
🚀 Get algorithm recommendation now
Quick Algorithm Selector
Estimated time: 3 minutes What you'll get: Personalized algorithm recommendation based on your requirements Requirements: Answer 3 simple questions
Answer These Questions
Question 1: What's your primary use case? - A: Encrypt data (files, databases, API payloads) - B: Digital signatures (documents, code, firmware) - C: Both (encrypt and sign)
Question 2: What's your security requirement? - A: Standard security (equivalent to AES-128) - B: High security (equivalent to AES-192) - C: Maximum security (equivalent to AES-256)
Question 3: What's your performance priority? - A: Speed critical (< 5ms latency) - B: Balanced (< 15ms acceptable) - C: Security over speed (any latency OK)
Your Recommendation
If you answered:
1A, 2C, 3B (Encrypt, Maximum security, Balanced):
# Recommended: ML-KEM-1024
curl -X POST https://api.ankatech.co/keys \
-d '{"algorithm":"ML_KEM_1024","purpose":"DATA_ENCRYPTION"}'
1B, 2C, 3B (Sign, Maximum security, Balanced):
# Recommended: ML-DSA-87
curl -X POST https://api.ankatech.co/keys \
-d '{"algorithm":"ML_DSA_87","purpose":"DIGITAL_SIGNATURE"}'
1C, 2C, 3C (Both, Maximum security, Security priority):
# Recommended: Composite Key (RSA + ML-KEM)
curl -X POST https://api.ankatech.co/keys/composite \
-d '{
"classicalAlgorithm":"RSA_4096",
"pqcAlgorithm":"ML_KEM_1024",
"mode":"HYBRID_KEM_COMBINE"
}'
🎯 Want detailed guidance? Continue reading for complete decision framework
Decision Framework
By Use Case
Encrypt Data (Files, Databases, APIs)
Standard security (NIST Level 3):
Algorithm: ML-KEM-768
Performance: 6ms decrypt
Security: 192-bit (equivalent to AES-192)
Compliance: NIST FIPS 203, CNSA 2.0
Maximum security (NIST Level 5):
Algorithm: ML-KEM-1024
Performance: 7ms decrypt
Security: 256-bit (equivalent to AES-256)
Compliance: NIST FIPS 203, CNSA 2.0, TOP SECRET approved
High-performance (NIST Level 1):
Algorithm: ML-KEM-512
Performance: 8ms decrypt (paradoxically slower for small payloads)
Security: 128-bit (equivalent to AES-128)
Use case: High-throughput systems, non-critical data
Example:
# Encrypt patient record (healthcare, 30-year retention)
curl -X POST https://api.ankatech.co/encrypt \
-d '{
"algorithm":"ML_KEM_1024", # Maximum security
"plaintext":"Patient: John Doe...",
"retention":"30_YEARS"
}'
Digital Signatures (Documents, Code, Firmware)
Standard security (NIST Level 3):
Algorithm: ML-DSA-65
Performance: 5ms sign, 5ms verify
Signature size: ~3,309 bytes
Compliance: NIST FIPS 204, CNSA 2.0
Maximum security (NIST Level 5):
Algorithm: ML-DSA-87
Performance: 8ms sign, 7ms verify
Signature size: ~4,627 bytes
Compliance: NIST FIPS 204, CNSA 2.0, TOP SECRET approved
Long-term signatures (50+ years):
Algorithm: SLH-DSA-SHAKE-256f
Performance: 12ms sign, 4ms verify
Signature size: ~17,000 bytes
Special: Stateless (no key state to protect)
Use case: Firmware, legal archives, time-stamped documents
Example:
# Sign software release (long-term validation)
curl -X POST https://api.ankatech.co/sign \
-d '{
"algorithm":"SLH_DSA_SHAKE_256f", # Stateless
"document":"software-v3.0.0.tar.gz",
"purpose":"CODE_SIGNING"
}'
By Security Requirement
NIST Security Levels
| Level | Symmetric Equivalent | Quantum Operations | Recommended Algorithms |
|---|---|---|---|
| L1 | AES-128 (128-bit) | 2^64 | ML-KEM-512, ML-DSA-44 |
| L3 | AES-192 (192-bit) | 2^96 | ML-KEM-768, ML-DSA-65 |
| L5 | AES-256 (256-bit) | 2^128 | ML-KEM-1024, ML-DSA-87 |
Selection guideline: - L1: Non-critical data, high-performance needs - L3: Standard enterprise security (most use cases) - L5: High-value data, federal compliance, long retention
Example: Choose by data value:
Application logs → L1 (ML-KEM-512)
Customer PII → L3 (ML-KEM-768)
Financial transactions → L5 (ML-KEM-1024)
Classified documents → L5 + Composite (maximum security)
By Performance Requirement
Latency-Sensitive Applications
Requirement: API response time < 10ms
Recommendation:
Example: Real-time API encryption
curl -X POST https://api.ankatech.co/encrypt \
-d '{"algorithm":"ML_KEM_768","plaintext":"API response data"}'
Performance: 6ms decrypt allows sub-10ms total API response
High-Throughput Applications
Requirement: > 10,000 operations/second
Recommendation:
Algorithm: AES-256-GCM (symmetric)
Latency: 3ms encrypt, 5ms decrypt
Throughput: 333 ops/sec per core × 50 cores = 16,650 ops/sec
But: Requires separate key management (KEK for AES key protection)
Alternative: ML-KEM-768 with horizontal scaling
Batch Processing (Throughput Priority)
Requirement: Encrypt 100,000 files/hour (non-interactive)
Recommendation:
Algorithm: ML-KEM-1024 (security priority)
OR: Composite (RSA + ML-KEM) for maximum defense
Batch processing: 100 concurrent workers
Throughput: 100 × 143 ops/sec = 14,300 ops/sec = 51M ops/hour
Verdict: ML-KEM handles batch processing easily (51M ops/hour >> 100K required)
By Compliance Requirement
Federal/Government (CNSA 2.0)
NSA CNSA 2.0 approved algorithms (for classified data):
Encryption: - ✅ ML-KEM-768 (SECRET classification minimum) - ✅ ML-KEM-1024 (TOP SECRET required) - ✅ AES-256-GCM (symmetric, any classification)
Signatures: - ✅ ML-DSA-65 (SECRET classification minimum) - ✅ ML-DSA-87 (TOP SECRET required) - ✅ SLH-DSA-SHAKE-256f (any classification, stateless)
Example: TOP SECRET document:
curl -X POST https://api.ankatech.co/encrypt \
-d '{
"algorithm":"ML_KEM_1024", # CNSA 2.0 L5
"plaintext":"TOP SECRET//SI//NOFORN",
"classification":"TOP_SECRET"
}'
Financial Services (PCI DSS)
PCI DSS 3.6.1 requirement: Strong cryptography with FIPS validation
Recommendation:
Algorithm: AES-256-GCM (FIPS-validated now)
OR: ML-KEM-1024 (FIPS validation Q2 2026, quantum-ready)
Current state (2026): - ✅ AES-256-GCM: FIPS 140-2 validated (Certificate #4616) - ⏳ ML-KEM-1024: FIPS 140-3 validation in progress
Example: Credit card encryption:
curl -X POST https://api.ankatech.co/encrypt \
-d '{
"algorithm":"AES_256_GCM", # FIPS-validated
"plaintext":"PAN: 4111-1111-1111-1111",
"compliance":"PCI_DSS_3_6_1"
}'
Future-proofing: Transition to ML-KEM-1024 after FIPS 140-3 validation (Q2 2026)
Healthcare (HIPAA)
HIPAA §164.312(a)(2)(iv): Encryption mechanisms (no specific algorithm mandated)
Recommendation:
Why ML-KEM for healthcare: - ✅ Patient records retained 30+ years (quantum threat relevant) - ✅ FIPS-validated (defensible in audits) - ✅ Quantum-resistant (future-proof)
Example: ePHI encryption:
curl -X POST https://api.ankatech.co/encrypt \
-d '{
"algorithm":"ML_KEM_1024",
"plaintext":"Patient: Jane Doe, MRN: 123456...",
"compliance":"HIPAA_164_312",
"retention":"30_YEARS"
}'
By Data Lifetime
Short-Lived Data (< 5 Years)
Examples: Application logs, temporary files, cache data
Recommendation:
Rationale: Quantum threat less relevant (data expires before quantum computers mature)
Medium-Lived Data (5-15 Years)
Examples: Financial transactions, contracts, customer records
Recommendation:
Rationale: Quantum computers estimated 2030-2035 (within data lifetime)
Long-Lived Data (15+ Years)
Examples: Healthcare records (30 years), legal archives (50 years), nuclear data (100 years)
Recommendation:
Rationale: Defense-in-depth (hedge against PQC vulnerabilities discovered 20+ years from now)
Example: 50-year legal archive:
curl -X POST https://api.ankatech.co/keys/composite \
-d '{
"classicalAlgorithm":"RSA_4096",
"pqcAlgorithm":"ML_KEM_1024",
"mode":"HYBRID_KEM_COMBINE",
"retention":"50_YEARS"
}'
Algorithm Catalog (81 Algorithms)
Post-Quantum Encryption (21 algorithms)
NIST-standardized (recommended): - ✅ ML-KEM-512 (FIPS 203) - High-performance - ✅ ML-KEM-768 (FIPS 203) - Standard security - ✅ ML-KEM-1024 (FIPS 203) - Maximum security
Alternative PQC KEMs (research, international standards): - FrodoKEM-640, FrodoKEM-976, FrodoKEM-1344 - HQC-128, HQC-192, HQC-256 - BIKE-128, BIKE-192, BIKE-256 - SABER variants (LightSaber, Saber, FireSaber) - NTRU-701, NTRU-1373 - Classic McEliece (CMCE) variants
When to use alternatives: Country-specific standards (China, EU), research, future-proofing
Post-Quantum Signatures (21 algorithms)
NIST-standardized (recommended): - ✅ ML-DSA-44 (FIPS 204) - High-performance - ✅ ML-DSA-65 (FIPS 204) - Standard security - ✅ ML-DSA-87 (FIPS 204) - Maximum security - ✅ SLH-DSA-SHAKE-128f/256f (FIPS 205) - Stateless
Alternative PQC signatures: - Falcon-512, Falcon-1024 (compact signatures) - SPHINCS+ variants (stateless, long-term) - Rainbow (fast verification, large keys)
When to use alternatives: Compact signatures needed (Falcon), extreme long-term (SPHINCS+)
Classical Algorithms (20 algorithms)
When to use: - ⚠️ Transitional period (before full PQC migration) - ⚠️ Backward compatibility (legacy systems) - ❌ NOT for new deployments (use PQC instead)
Encryption: RSA-2048/3072/4096, ECDH variants Signatures: ECDSA-P256/P384/P521, Ed25519, RSA-PSS
Symmetric Algorithms (17 algorithms)
Recommended: - ✅ AES-256-GCM (FIPS-validated, CNSA 2.0) - ✅ ChaCha20-Poly1305 (high-performance, mobile-friendly)
International standards: - Camellia-GCM (Japan) - SEED-GCM (South Korea) - SM4-GCM (China)
Algorithm Selection by Scenario
Scenario 1: High-Frequency Trading
Requirements: - Latency < 5ms - Throughput > 10,000 ops/sec - Quantum resistance
Recommendation: ML-KEM-768
curl -X POST https://api.ankatech.co/keys \
-d '{"algorithm":"ML_KEM_768","purpose":"HFT_MARKET_DATA"}'
Performance: - Encrypt: 3ms - Decrypt: 6ms - Throughput: 167 ops/sec per core × 100 cores = 16,700 ops/sec
Verdict: Meets all requirements (latency, throughput, quantum-resistant)
Scenario 2: Government Classified Data
Requirements: - TOP SECRET classification - CNSA 2.0 compliance - 50-year retention - Defense-in-depth
Recommendation: Composite (RSA-4096 + ML-KEM-1024)
curl -X POST https://api.ankatech.co/keys/composite \
-d '{
"classicalAlgorithm":"RSA_4096",
"pqcAlgorithm":"ML_KEM_1024",
"mode":"HYBRID_KEM_COMBINE",
"classification":"TOP_SECRET",
"hsmRequired":true
}'
Compliance: - ✅ CNSA 2.0 (ML-KEM-1024) - ✅ Defense-in-depth (composite) - ✅ HSM-backed (Luna Level 3)
Performance: 13ms decrypt (acceptable for non-interactive classification systems)
Scenario 3: SaaS Multi-Tenant Platform
Requirements: - Multi-tenant isolation - Moderate security (customer PII) - Good performance (API responses) - Cost-effective
Recommendation: ML-KEM-768 (per-tenant keys)
# Generate key for Tenant 123
curl -X POST https://api.ankatech.co/keys \
-H "Authorization: Bearer $TENANT_123_TOKEN" \
-d '{"algorithm":"ML_KEM_768","tenantId":"123"}'
Benefits: - ✅ Tenant isolation (automatic) - ✅ Quantum-resistant - ✅ Good performance (6ms decrypt) - ✅ Cost-effective (moderate security level)
Scenario 4: Video Streaming Service
Requirements: - Encrypt large files (5-50 GB) - Good throughput (> 50 MB/s) - Moderate security (content protection, not TOP SECRET)
Recommendation: AES-256-GCM (streaming mode)
curl -X POST https://api.ankatech.co/stream/encrypt \
-F "algorithm=AES_256_GCM" \
-F "[email protected]" \
-o movie-50gb.enc
Performance: - Throughput: ~80 MB/s - 50 GB file: ~10 minutes - Memory: Constant 2 MB
Alternative: ML-KEM-1024 for quantum resistance (same throughput, slightly higher CPU)
Scenario 5: IoT Device Communication
Requirements: - Low compute overhead (embedded devices) - Long deployment (20-year device lifespan) - Quantum resistance
Recommendation: ML-KEM-768 (balance of performance and security)
# Device enrollment key
curl -X POST https://api.ankatech.co/keys \
-d '{
"algorithm":"ML_KEM_768",
"purpose":"IOT_DEVICE_ENCRYPTION",
"deviceLifespan":"20_YEARS"
}'
Why ML-KEM-768 for IoT: - ✅ Lower compute than ML-KEM-1024 (embedded-friendly) - ✅ Quantum-resistant for 20-year lifespan - ✅ NIST Level 3 adequate for IoT (not TOP SECRET)
Performance Comparison Table
Encryption Algorithms (1KB Payload)
| Algorithm | Encrypt | Decrypt | Throughput | Security | Quantum-Resistant |
|---|---|---|---|---|---|
| AES-256-GCM | 3ms | 5ms | 333 ops/sec | 256-bit | ⚠️ Symmetric only |
| ML-KEM-512 | 4ms | 8ms | 125 ops/sec | L1 (128-bit) | ✅ Yes |
| ML-KEM-768 | 3ms | 6ms | 167 ops/sec | L3 (192-bit) | ✅ Yes |
| ML-KEM-1024 | 3ms | 7ms | 143 ops/sec | L5 (256-bit) | ✅ Yes |
| RSA-4096 | 3ms | 11ms | 91 ops/sec | L3 (152-bit) | ❌ No |
| Composite | 5ms | 13ms | 77 ops/sec | L5 + Defense | ✅ Yes (1000×) |
Winner for APIs: ML-KEM-1024 (best balance: 7ms, L5 security, quantum-resistant)
Signature Algorithms (1KB Document)
| Algorithm | Sign | Verify | Sig Size | Security | Quantum-Resistant |
|---|---|---|---|---|---|
| Ed25519 | 2ms | 3ms | 64 bytes | L1 (128-bit) | ❌ No |
| ML-DSA-44 | 4ms | 5ms | 2,420 bytes | L2 (128-bit) | ✅ Yes |
| ML-DSA-65 | 5ms | 5ms | 3,309 bytes | L3 (192-bit) | ✅ Yes |
| ML-DSA-87 | 8ms | 7ms | 4,627 bytes | L5 (256-bit) | ✅ Yes |
| ECDSA-P256 | 3ms | 4ms | 64 bytes | L1 (128-bit) | ❌ No |
| SLH-DSA-256f | 12ms | 4ms | 17,000 bytes | L5 | ✅ Yes (stateless) |
Winner for documents: ML-DSA-65 (balance of speed, size, security)
Migration Algorithm Mapping
Classical to PQC Equivalence
Encryption migrations:
RSA-2048 → ML-KEM-512 (L1 → L1, but use ML-KEM-768 for upgrade)
RSA-3072 → ML-KEM-768 (L2 → L3, security upgrade)
RSA-4096 → ML-KEM-1024 (L3 → L5, security upgrade)
Recommendation: Always upgrade to ML-KEM-1024 (maximum security, minimal cost)
Signature migrations:
ECDSA-P256 → ML-DSA-44 (L1 → L2, slight upgrade)
ECDSA-P384 → ML-DSA-65 (L3 → L3, equivalent)
ECDSA-P521 → ML-DSA-87 (L5 → L5, equivalent)
Ed25519 → ML-DSA-65 (L1 → L3, security upgrade)
Recommendation: Match NIST levels (P-384 → ML-DSA-65, P-521 → ML-DSA-87)
Common Mistakes to Avoid
Mistake 1: Using ML-KEM-512 by Default
Wrong assumption: "Smaller number = faster"
Reality:
Surprise: ML-KEM-768 is actually FASTEST (counterintuitive!)
Recommendation: Use ML-KEM-1024 by default (best security, only 1ms slower than ML-KEM-768)
Mistake 2: Mismatched Security Levels (Composite Keys)
Wrong:
# Combining L1 classical with L5 PQC (imbalanced!)
{
"classicalAlgorithm":"RSA_2048", # L1
"pqcAlgorithm":"ML_KEM_1024" # L5
}
Error: "Mismatched security levels (L1 vs L5)"
Correct:
# Match security levels
{
"classicalAlgorithm":"RSA_4096", # L3 (rounded to L5 in practice)
"pqcAlgorithm":"ML_KEM_1024" # L5
}
Rule: Both components must be same NIST level
Mistake 3: Using Composite Keys for High-Frequency APIs
Wrong: Composite keys for 10,000 ops/sec API
Problem:
Composite decrypt: 13ms
Required throughput: 10,000 ops/sec
Theoretical max: 1,000ms ÷ 13ms = 77 ops/sec per core
Needs: 10,000 ÷ 77 = 130 CPU cores (expensive!)
Correct: Use ML-KEM-1024 for high-frequency
ML-KEM decrypt: 7ms
Theoretical max: 143 ops/sec per core
Needs: 10,000 ÷ 143 = 70 CPU cores (half the cost)
Recommendation: Reserve composite keys for high-value data (not every API call)
Algorithm Selection Tool
Interactive Selector
Use our interactive tool to get personalized recommendation:
Inputs: - Use case (encryption, signature, both) - Security requirement (standard, high, maximum) - Performance budget (< 5ms, < 15ms, any) - Compliance needs (NIST, FIPS, CNSA, PCI, HIPAA) - Data lifetime (< 5y, 5-15y, > 15y)
Output: - Recommended algorithm - Code example (copy-paste ready) - Performance characteristics - Compliance mapping - Alternative options
Decision Tree
Start: What are you doing?
├─ Encrypting data?
│ ├─ Latency < 10ms? → ML-KEM-768
│ ├─ Maximum security? → ML-KEM-1024
│ └─ Defense-in-depth? → Composite (RSA + ML-KEM)
│
├─ Signing documents?
│ ├─ Standard security? → ML-DSA-65
│ ├─ Maximum security? → ML-DSA-87
│ └─ Long-term (50+ years)? → SLH-DSA-SHAKE-256f
│
└─ Both (encrypt + sign)?
└─ Federal compliance? → Composite dual (encryption + signature)
Test Your Choice
Benchmark Your Algorithm
Verify performance before committing:
# Test ML-KEM-1024 performance in YOUR environment
curl -sSL https://ankatech.co/benchmark.sh | bash -s -- \
--algorithm ML_KEM_1024 \
--iterations 100 \
--payload-size 1KB
Output:
Algorithm: ML-KEM-1024
Payload: 1 KB
Iterations: 100
Encrypt: median 3ms, p95 4ms, p99 5ms
Decrypt: median 7ms, p95 9ms, p99 11ms
Throughput: 125 ops/sec
Verdict: ✅ Suitable for API with < 10ms latency budget
What's Next?
Ready to choose your algorithm? - 🔍 Interactive selector (get personalized recommendation) - 📊 Benchmark tool (test performance in your environment) - 📥 Download algorithm guide (PDF, 20-page detailed guide) - 📧 Request algorithm consultation (free 30-min session with cryptographer)
Generate your first key: - Quick start guide - First encryption in 10 minutes - Composite keys guide - Hybrid algorithm setup - API reference - Complete key management API
Compare algorithms: - Performance benchmarks - Speed comparison across all 81 algorithms - Compliance mapping - Which algorithms for which standards - Migration guide - Classical to PQC mapping
Have questions? Email [email protected] or join our community forum
Last updated: 2026-01-07 | 81 algorithms supported | NIST FIPS 203/204/205 compliant