NIST PQC Standards and Implementation | Post-Quantum XRPL Security | XRP Academy - XRP Academy
3 free lessons remaining this month

Free preview access resets monthly

Upgrade for Unlimited
Skip to main content
advanced45 min

NIST PQC Standards and Implementation

Learning Objectives

Identify the three NIST PQC standards and their purposes

Explain key implementation requirements from the standards

Analyze migration timelines mandated by government guidance

Assess library and tool availability for implementation

Evaluate hybrid deployment strategies

ML-KEM (Module-Lattice Key Encapsulation Mechanism):

Purpose: Secure key exchange/encryption
Based on: CRYSTALS-Kyber

Parameter Sets:
├── ML-KEM-512: Security Level 1 (128-bit)
│   └── Ciphertext: 768 B, Public Key: 800 B
├── ML-KEM-768: Security Level 3 (192-bit)
│   └── Ciphertext: 1,088 B, Public Key: 1,184 B
├── ML-KEM-1024: Security Level 5 (256-bit)
│   └── Ciphertext: 1,568 B, Public Key: 1,568 B

XRPL Relevance:
├── NOT directly used (XRPL doesn't use key exchange)
├── May appear in wallet encryption
├── Important for TLS connections to nodes
└── Background infrastructure, not signatures
ML-DSA (Module-Lattice Digital Signature Algorithm):

Purpose: Digital signatures
Based on: CRYSTALS-Dilithium
XRPL Relevance: PRIMARY — Transaction signatures

Parameter Sets:
├── ML-DSA-44: Security Level 2
│   ├── Public Key: 1,312 bytes
│   ├── Signature: 2,420 bytes
│   └── Use: Moderate security
├── ML-DSA-65: Security Level 3 [RECOMMENDED FOR XRPL]
│   ├── Public Key: 1,952 bytes
│   ├── Signature: 3,293 bytes
│   └── Use: Standard security
├── ML-DSA-87: Security Level 5
│   ├── Public Key: 2,592 bytes
│   ├── Signature: 4,595 bytes
│   └── Use: High security

Implementation Requirements:
├── Deterministic signature generation (no hidden randomness)
├── Side-channel resistance recommended
├── Specific hash functions (SHAKE)
└── Defined test vectors for conformance
SLH-DSA (Stateless Hash-Based Digital Signature Algorithm):

Purpose: Backup signature algorithm
Based on: SPHINCS+
XRPL Relevance: BACKUP — If lattice concerns emerge

Key Variants:
├── "-s" suffix: Smaller signatures, slower signing
├── "-f" suffix: Faster signing, larger signatures
├── SHA2 or SHAKE hash function base

Recommended for XRPL (if used):
├── SLH-DSA-SHA2-128s: 7,856 byte signatures
├── Most compact option at Level 1 security
└── Still 2-3× larger than ML-DSA

When to Use:
├── High-assurance applications
├── If lattice cryptanalysis advances
├── Optional maximum-security account type
└── Not for general transaction volume

NSA Commercial National Security Algorithm Suite 2.0:

Timeline Requirements:
├── 2025: Begin PQC transition planning
├── 2030: PQC capability required for new systems
├── 2033: All national security systems must be PQC
└── 2035: Complete deprecation of vulnerable algorithms

Algorithms Mandated:
├── ML-KEM-1024 (Level 5 only)
├── ML-DSA-87 (Level 5 only)
├── LMS/XMSS for firmware (hash-based, stateful)
└── Higher security levels than commercial

Implications:
├── Government contractors must comply
├── Sets floor for security expectations
├── Influences private sector adoption
└── XRPL should plan for similar timeline
Federal PQC Migration Requirements:

Key Mandates:
├── Inventory all cryptographic systems
├── Identify quantum-vulnerable systems
├── Prioritize migration of highest-risk systems
├── Complete migration by 2035

Priority Order:
├── 1. Systems protecting long-term secrets
├── 2. Critical infrastructure
├── 3. General purpose systems
└── Financial systems are high priority

XRPL Implications:
├── US-based XRPL businesses must comply
├── Exchanges, custodians affected
├── Likely accelerates XRPL PQC adoption
└── 2030-2033 deployment window likely

PQC Library Landscape (2024-2025):

Production-Ready:
├── liboqs (Open Quantum Safe): C library, most complete
├── PQClean: Reference implementations
├── BouncyCastle: Java/C# (PQC in development)
├── OpenSSL 3.x: PQC support emerging
└── AWS-LC: Amazon's library with PQC

Language-Specific:
├── Python: pqcrypto, liboqs-python
├── Rust: pqcrypto crate, oqs-rust
├── JavaScript/TypeScript: Limited, emerging
├── Go: cloudflare/circl
└── C++: liboqs (native)

XRPL-Specific (Future):
├── rippled: Will need PQC integration
├── xrpl.js: JavaScript library updates
├── xrpl-py: Python library updates
└── Timeline: Depends on XRPL amendment
Hardware Acceleration Status:

Current (2024):
├── Limited hardware support
├── Software implementations dominant
├── ARM/Intel optimizations available
└── HSMs: Limited PQC support

Near-Term (2025-2027):
├── HSM vendors adding PQC
├── Thales, Entrust, nCipher planning support
├── Hardware wallets: Limited announcements
├── Cloud HSMs: AWS/Azure/GCP adding support

XRPL Impact:
├── Software implementations sufficient initially
├── Hardware wallet support will lag
├── Enterprise custody may need HSM updates
└── Consumer wallets likely software-only initially

Hybrid Cryptography Rationale:

Definition:
├── Combine classical + PQC algorithms
├── Security: Valid if EITHER algorithm secure
├── Not "AND" — "OR" security model
└── Defense in depth

Motivation:
├── PQC algorithms less mature than classical
├── Unknown attacks may exist on PQC
├── Classical still secure against non-quantum
├── Hedge against both risks
└── Recommended during transition period

Example:
├── Sign with secp256k1 AND ML-DSA
├── Signature valid if both verify
├── If secp256k1 broken (quantum): ML-DSA protects
├── If ML-DSA broken (classical attack): secp256k1 protects
└── Size: Sum of both signatures
XRPL Hybrid Options:

Option 1: Dual Signatures
├── Every transaction has secp256k1 + ML-DSA signature
├── Both must verify for validity
├── Size: ~70 + 3,293 = ~3,363 bytes
├── Transition: Can verify old and new
└── Pro: Maximum security during transition

Option 2: Optional Hybrid
├── Users choose classical, PQC, or hybrid
├── Amendment enables choice
├── Size varies by choice
└── Pro: Flexibility for different risk profiles

Option 3: Transition Period
├── Initially require hybrid
├── After confidence period, allow PQC-only
├── Deprecate classical after quantum threat imminent
└── Pro: Phased approach, community confidence building

Recommendation:
├── Start with Option 2 (flexibility)
├── Encourage hybrid for high-value accounts
├── Move to PQC-only as confidence grows
└── Timeline: 5-10 year transition

Conformance Testing:

NIST Provides:
├── Known Answer Tests (KATs)
├── Test vectors for each parameter set
├── Input/output pairs to verify implementation
└── Essential for correct implementation

Validation Process:
├── Generate keys using test vectors
├── Sign test messages
├── Compare to expected signatures
├── Verify interoperability
└── Must match exactly

XRPL Testing:
├── Any PQC implementation must pass NIST tests
├── Additional blockchain-specific tests
├── Transaction signing test suite
├── Multi-sig combination tests
└── Performance benchmarks
Audit Requirements:

For XRPL PQC Implementation:
├── Code audit by cryptography experts
├── Side-channel analysis
├── Fuzzing and edge case testing
├── Formal verification (ideal)
└── Multi-auditor review recommended

Audit Focus Areas:
├── Random number generation
├── Key derivation correctness
├── Signature determinism
├── Memory handling (no leaks)
├── Timing consistency (side-channel)
└── Error handling

Timeline:
├── Implementation: 6-12 months
├── Internal testing: 2-3 months
├── External audits: 3-6 months
├── Bug fixes and re-audit: 2-3 months
└── Total: 12-24 months for production-ready

Proven: NIST standards are complete and well-defined; government mandates create adoption pressure; libraries exist.

Uncertain: Hardware support timeline; audit depth required; ecosystem upgrade coordination.

Risky: Implementing without audits; rushing adoption before tooling matures; ignoring hybrid option.


1. Which NIST standard defines digital signatures? Answer: FIPS 204 (ML-DSA)

2. NSA CNSA 2.0 requires PQC by: Answer: 2033 for national security systems

3. Hybrid cryptography provides security if: Answer: Either algorithm is secure (OR)

4. Most complete open-source PQC library: Answer: liboqs (Open Quantum Safe)

5. Why is hybrid recommended for transition? Answer: Hedges against unknown PQC attacks


End of Lesson 12

Key Takeaways

1

Three NIST standards:

ML-KEM (encryption), ML-DSA (signatures), SLH-DSA (backup signatures)

2

Government mandates push 2030-2035 timeline

— Applies to financial sector

3

Libraries exist but hardware support lags

— Software implementations ready

4

Hybrid deployment recommended

— Combine classical + PQC during transition

5

Thorough testing essential

— NIST test vectors + security audits mandatory ---