File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1919ML-KEM is based on Module Learning with Errors problems introduced by [ Reg05] [ Reg05 ] .
2020
2121## Preliminaries
22+ - [ ] Why Polynomial Rings?
23+ - [ ] Cyclotomic Polynomial Rings
24+ - [ ] NTT
25+ - [ ] Lattices
2226
2327## Implementation Details
2428- Polynomial Rings
@@ -81,4 +85,4 @@ ML-KEM is based on Module Learning with Errors problems introduced by [Reg05][Re
8185- [ Module-Lattice-Based Key-Encapsulation Mechanism Standard] ( https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.203.pdf )
8286- [ RustCrypto/KEMs] ( https://github.com/RustCrypto/KEMs ) : const functions inspiration
8387
84- [ Reg05 ] : < https://cims.nyu.edu/~regev/papers/lwesurvey.pdf >
88+ [ Reg05 ] : < https://cims.nyu.edu/~regev/papers/lwesurvey.pdf >
Original file line number Diff line number Diff line change 1+ // use super::{auxiliary::g, MatrixPolyVec};
2+
3+ // pub struct KpkeEncryptionKey<const K: usize>([u8; 384*K+32]);
4+ // pub struct KpkeDecryptionKey<const K: usize>([u8; 384*K]);
5+ // pub fn kpke_keygen<const K: usize>(d: [u8; 32]) -> (KpkeEncryptionKey, KpkeDecryptionKey) {
6+ // let (rho, sigma) = g(d, K);
7+
8+ // let mut a_ntt = MatrixPolyVec::<Ntt, K, K>
9+
10+ // }
You can’t perform that action at this time.
0 commit comments