Skip to content

Commit f29cb1b

Browse files
mkannwischerhanno-becker
authored andcommitted
Reimplement AArch64 NTT 2/2: Switch from ML-KEM to ML-DSA
This is the second commit reimplementing the NTT based on the "Apache-2.0 OR ISC OR MIT"-licensed NTT and iNTT from mlkem-native. This commit changes the ML-KEM NTT into a ML-DSA NTT using minimal changes. Resolves #381 Signed-off-by: Matthias J. Kannwischer <[email protected]>
1 parent eda588c commit f29cb1b

File tree

6 files changed

+701
-584
lines changed

6 files changed

+701
-584
lines changed

BIBLIOGRAPHY.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,22 @@ source code and documentation.
126126
* Referenced from:
127127
- [README.md](README.md)
128128

129+
### `NeonNTT`
130+
131+
* Neon NTT: Faster Dilithium, Kyber, and Saber on Cortex-A72 and Apple M1
132+
* Author(s):
133+
- Hanno Becker
134+
- Vincent Hwang
135+
- Matthias J. Kannwischer
136+
- Bo-Yin Yang
137+
- Shang-Yi Yang
138+
* URL: https://eprint.iacr.org/2021/986
139+
* Referenced from:
140+
- [dev/aarch64_clean/src/intt.S](dev/aarch64_clean/src/intt.S)
141+
- [dev/aarch64_clean/src/ntt.S](dev/aarch64_clean/src/ntt.S)
142+
- [mldsa/native/aarch64/src/intt.S](mldsa/native/aarch64/src/intt.S)
143+
- [mldsa/native/aarch64/src/ntt.S](mldsa/native/aarch64/src/ntt.S)
144+
129145
### `REF`
130146

131147
* CRYSTALS-Dilithium reference implementation
@@ -222,6 +238,21 @@ source code and documentation.
222238
- [examples/bring_your_own_fips202/mldsa_native/sign.c](examples/bring_your_own_fips202/mldsa_native/sign.c)
223239
- [mldsa/sign.c](mldsa/sign.c)
224240

241+
### `SLOTHY_Paper`
242+
243+
* Fast and Clean: Auditable high-performance assembly via constraint solving
244+
* Author(s):
245+
- Amin Abdulrahman
246+
- Hanno Becker
247+
- Matthias J. Kannwischer
248+
- Fabien Klein
249+
* URL: https://eprint.iacr.org/2022/1303
250+
* Referenced from:
251+
- [dev/aarch64_clean/src/intt.S](dev/aarch64_clean/src/intt.S)
252+
- [dev/aarch64_clean/src/ntt.S](dev/aarch64_clean/src/ntt.S)
253+
- [mldsa/native/aarch64/src/intt.S](mldsa/native/aarch64/src/intt.S)
254+
- [mldsa/native/aarch64/src/ntt.S](mldsa/native/aarch64/src/ntt.S)
255+
225256
### `libmceliece`
226257

227258
* libmceliece implementation of Classic McEliece

BIBLIOGRAPHY.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,26 @@
8383
- Stehlé, Damien
8484
url: https://pq-crystals.org/dilithium/data/dilithium-specification-round3-20210208.pdf
8585

86+
- id: SLOTHY_Paper
87+
name: "Fast and Clean: Auditable high-performance assembly via constraint solving"
88+
short: SLOTHY paper
89+
author:
90+
- Abdulrahman, Amin
91+
- Becker, Hanno
92+
- Kannwischer, Matthias J.
93+
- Klein, Fabien
94+
url: https://eprint.iacr.org/2022/1303
95+
96+
- id: NeonNTT
97+
name: "Neon NTT: Faster Dilithium, Kyber, and Saber on Cortex-A72 and Apple M1"
98+
year: 2022
99+
url: https://eprint.iacr.org/2021/986
100+
author:
101+
- Becker, Hanno
102+
- Hwang, Vincent
103+
- Kannwischer, Matthias J.
104+
- Yang, Bo-Yin
105+
- Yang, Shang-Yi
86106
- id: mupq
87107
name: Common files for pqm4, pqm3, pqriscv
88108
author:

0 commit comments

Comments
 (0)