MODULE m2 · 8.0 HOURS
Understanding ML-KEM and ML-DSA Standards
LEARNING OBJECTIVES
Module objectives
- Explain the mathematical foundations and security proofs of Lattice-based cryptography.
- Understand the operational principles of the NIST standard ML-KEM (Key Encapsulation Mechanism).
- Identify the structural characteristics of the NIST standard ML-DSA (Digital Signature Algorithm).
- Analyze why lattice cryptography holds practical advantages over other cryptographic methods (code-based, hash-based).
Understanding ML-KEM and ML-DSA Standards
1. The Rise of Lattice-based Cryptography
Lattice-based systems are currently driving practical standardization. This is because there exist strong mathematical reductions from worst-case to average-case, and efficient implementation is possible [S4]. On the other hand, code-based or hash-based methods serve as conservative anchors, requiring a longer security history or minimal assumptions [S4].
2. ML-KEM (Module-Lattice Key Encapsulation Mechanism)
ML-KEM is based on the algorithm previously known as Kyber. It is based on the Module Learning With Errors (MLWE) problem and follows this flow:
- KeyGen: Generate public and secret keys within a module lattice.
- Encapsulation: Generate a shared secret and encapsulated key (Ciphertext) using the public key.
- Decapsulation: Recover the original shared secret from the encapsulated key using the secret key.
3. ML-DSA (Module-Lattice Digital Signature Algorithm)
ML-DSA is based on Dilithium and uses the ‘Fiat-Shamir with Aborts’ technique. It provides forgery resistance through the hardness of lattice problems and is a practical standard that balances signature size and public key size.
4. Security Assumptions
The security of lattice-based systems is closely related to the Shortest Vector Problem (SVP). Unlike Shor’s algorithm, which efficiently breaks RSA or ECC, lattice problems are assumed not to be solvable in polynomial time even by quantum algorithms.
WORKED EXAMPLES
Worked examples
- Example 1: Comparison of security strength of lattice-based KEM. ML-KEM-512, 768, and 1024 correspond to NIST security strength levels 1, 3, and 5, respectively. These target security levels similar to classical AES-128, 192, and 256.
- Example 2: Applying the Module Lattice concept. Operations are made efficient using vectors and matrices to optimize performance while maintaining security strength compared to general lattices.
LAB PROTOCOL
Basic Experiments with ML-KEM and ML-DSA Algorithms
- 1
Install liboqs and set environment variables.
- 2
Execute the process of generating ML-KEM key pairs and encapsulation using sample Python code.
- 3
Execute a script to sign and verify messages using ML-DSA.
- 4
Measure and record the time taken for each operation.
- Do not access system certificates or actual key files outside the experimental virtual environment.
- Use the liboqs library only for research and test purposes and do not mistake it for an operational environment security solution.
- All experimental data is kept in the local virtual environment and not transmitted to external networks.
Lab deliverables
- CSV file containing operation time measurement data.
- Capture of algorithm implementation execution results.
- Summary log of the lab process.
ASSIGNMENT
Post-Quantum Cryptography Standard Analysis Report
Deliverables
Rubric
- Did you accurately describe the mathematical basis of the standard algorithm?
- Did you analyze the advantages and limitations of lattice-based systems?
- Does it show a correct understanding of security threat models?
KNOWLEDGE CHECK
Knowledge check
FIELD CHECK
Completion criteria
- Pass all theory verification quizzes with correct answers.
- Submit a report including experimental processes and measurement data.
- Submit a checklist confirming adherence to lab safety guidelines and that tests were performed in an isolated environment.
MODULE SOURCES
Module sources
- Post-Quantum Cryptography and Quantum-Safe Security: A ...arxiv.org · paper