Lattice-Based Cryptography
Cryptographic systems based on hard mathematical problems involving lattices. The foundation of most post-quantum standards.
Lattice-based cryptography builds cryptographic primitives from computationally hard problems on mathematical lattices. It’s the basis for the primary post-quantum cryptography standards.
What’s a Lattice?
A lattice is a regular grid of points in -dimensional space, generated by integer combinations of basis vectors:
Think of it as an infinite, regular arrangement of points in space.
Hard Problems
Learning With Errors (LWE)
Given noisy linear equations over a ring:
Find the secret given many pairs. The noise is small but makes solving hard.
Ring-LWE
LWE over polynomial rings. More efficient and used in practice.
Module-LWE
A middle ground between LWE and Ring-LWE.
Short Integer Solution (SIS)
Find a short non-zero vector in the null space of a matrix.
Shortest Vector Problem (SVP)
Find the shortest non-zero vector in a lattice. Believed hard even for quantum computers.
Why Lattices for PQC?
| Property | Benefit |
|---|---|
| Quantum resistance | No known quantum speedup for lattice problems |
| Efficiency | Relatively fast operations |
| Versatility | Supports encryption, signatures, FHE |
| Worst-case hardness | Average-case security from worst-case problems |
NIST Standards
ML-KEM (Kyber)
- Type: Key Encapsulation Mechanism
- Based on: Module-LWE
- Use: Key exchange
ML-DSA (Dilithium)
- Type: Digital signature
- Based on: Module-LWE + Module-SIS
- Use: Authentication
FN-DSA (Falcon)
- Type: Digital signature
- Based on: NTRU lattices
- Use: Compact signatures
Key Sizes
Lattice schemes have larger keys than classical:
| Scheme | Public Key | Ciphertext/Signature |
|---|---|---|
| Kyber-768 | 1,184 bytes | 1,088 bytes |
| RSA-2048 | 256 bytes | 256 bytes |
| Dilithium-3 | 1,952 bytes | 3,293 bytes |
| ECDSA-256 | 64 bytes | 64 bytes |
Larger but manageable for most applications.
Beyond Encryption
Lattices enable advanced cryptography:
- Fully Homomorphic Encryption (FHE): Compute on encrypted data
- Attribute-Based Encryption: Access control via attributes
- Functional Encryption: Controlled function evaluation
Security Levels
NIST defines security levels:
| Level | Classical Security | Quantum Security |
|---|---|---|
| 1 | AES-128 | ~64-bit |
| 3 | AES-192 | ~128-bit |
| 5 | AES-256 | ~256-bit |
See also: Post-Quantum Cryptography, Quantum-Safe, Shor’s Algorithm