Commit Graph

512 Commits

Author SHA1 Message Date
Anjan Roy
82bc552e4e Add tests for checking, bad secret-key must fail to successfully decapsulate shared secret, against ACVP KATs
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-23 09:25:57 +05:30
Anjan Roy
5be903e966 Remove ML-KEM pubkeyCheck ACVP KATs and add seckeyCheck KATs
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-23 09:15:54 +05:30
Anjan Roy
38d8088793 Give variables more appropriate name
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-23 09:14:11 +05:30
Anjan Roy
186932a7f9 Add generated ACVP encapKeyCheck KATs
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-22 22:00:33 +05:30
Anjan Roy
fafe317d6f Add Python script to parse ML-KEM encapKeyCheck KATs
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-22 22:00:24 +05:30
Anjan Roy
7ccf9630fe Add tests for checking encaps implementation against ACVP KATs
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-22 21:34:21 +05:30
Anjan Roy
defc822e79 Add generated ACVP encapsulation KATs
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-22 21:20:01 +05:30
Anjan Roy
a3c6633989 Add Python script to parse ML-KEM encapDecap KAT files
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-22 21:18:27 +05:30
Anjan Roy
8750e87827 Put ACVP-Server on gitignore list to avoid adding it for git tracking
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-22 21:14:58 +05:30
Anjan Roy
43c7e02b4f Add tests for checking keygen implementation against ACVP KATs
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-22 20:47:34 +05:30
Anjan Roy
31d884a6d5 Change ML-KEM keygen KAT file names
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-22 20:35:00 +05:30
Anjan Roy
322fef8d56 Move kats to right directory
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-20 21:50:33 +05:30
Anjan Roy
f190c37719 Add script for automating sync. and regeneration of ACVP kats for ml-kem keygen algo
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-20 21:20:09 +05:30
Anjan Roy
3efc5731c2 Generate ACVP kats for ml-kem keygen algorithm
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-20 21:19:16 +05:30
Anjan Roy
45f0ceb299 Add Python script for parsing NIST ACVP KATs for ML-KEM keygen to local KAT format
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-09-20 21:06:44 +05:30
Anjan Roy
9ccaa5b1c8 Use a permissive license 2025-07-11 10:50:37 +05:30
Anjan Roy
c466968e42 Merge pull request #55 from itzmeanjan/bump-sha3-version
Bump dependency `sha3` to latest commit
2025-03-06 22:35:24 +04:00
Anjan Roy
6302be22e5 Prefer setting up google-test on github actions CI manually due to https://github.com/itzmeanjan/ml-kem/actions/runs/13701500559
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-03-06 20:04:23 +04:00
Anjan Roy
71e059d5da Update benchmark results
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-03-06 20:04:21 +04:00
Anjan Roy
98432f85d2 Pin RandomShake git submodule to latest commit
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-03-06 18:30:57 +04:00
Anjan Roy
68b112cc7f Pin sha3 git submodule to latest commit
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2025-03-06 18:29:00 +04:00
Anjan Roy
61cf680b1c Merge pull request #53 from itzmeanjan/use-randomshake-as-csprng
Switch to using "RandomShake" as CSPRNG
2024-11-21 20:18:07 +04:00
Anjan Roy
08d2b7bd12 Update project documentation
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-21 20:01:40 +04:00
Anjan Roy
a84b0664ad Add benchmark results in JSON format for multiple targets
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-21 20:01:38 +04:00
Anjan Roy
551c27645a Export benchmark results to JSON file
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-21 20:01:37 +04:00
Anjan Roy
8b538a8b9c Recursively clone all submodules inside "RandomShake" module
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-19 23:16:24 +04:00
Anjan Roy
5cf204e2ed Refactor variable names to be more verbose
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-19 23:06:28 +04:00
Anjan Roy
7356a9ede4 Do not include header what is not used
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-18 23:27:35 +04:00
Anjan Roy
274a25d821 Shorter name of github actions test
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-18 23:26:42 +04:00
Anjan Roy
343a800943 Refactor github actions file using AI 🤩
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-18 23:08:38 +04:00
Anjan Roy
eb4a8ea335 Run examples using Make command
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-18 22:19:51 +04:00
Anjan Roy
19512ecb53 Update example to use "RandomShake" as CSPRNG
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-18 22:19:09 +04:00
Anjan Roy
8437420c9e Switch to using "RandomShake" as CSPRNG
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-18 20:41:59 +04:00
Anjan Roy
9cd25955c8 Split Makefile into multiple units
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-18 20:17:23 +04:00
Anjan Roy
f1942886ec Bump version of sha3 dependency
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-18 11:10:05 +04:00
Anjan Roy
493ca3bee8 Add "RandomShake" as git submodule based dependency
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-11-18 11:09:11 +04:00
Anjan Roy
b43b819e88 Merge pull request #52 from itzmeanjan/conform-to-fips-203-standard
Conform to NIST Standard FIPS 203
2024-09-03 20:34:29 +04:00
Anjan Roy
a52a5de8b8 Change github actions linux runner image to ubuntu-24.04
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-02 23:38:32 +04:00
Anjan Roy
43aad07071 Update project documentation README
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-02 21:19:50 +04:00
Anjan Roy
0ab30f5200 Update in-code comments, referring to ML-KEM standard
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-02 20:41:18 +04:00
Anjan Roy
4621071758 Remove redundant header file include
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-02 19:42:47 +04:00
Anjan Roy
186b841633 Remove dudect -based constant-time tests
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-01 23:47:48 +04:00
Anjan Roy
5cb46afd16 Refactor KAT test runner functions, reducing lines of code
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-01 23:41:37 +04:00
Anjan Roy
53c0afa644 Declare lambda functions as constexpr
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-01 23:13:58 +04:00
Anjan Roy
0f2849520b Add new header, with MACRO definition, for ease of forcing inlining of small functions
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-01 23:09:17 +04:00
Anjan Roy
48c06432ee Update github actions script to run all combination of ASAN, UBSAN tests, with two compilers i.e. Clang and GCC
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-01 21:11:28 +04:00
Anjan Roy
30e0710c2e Add capability of running ASAN, UBSAN tests in both debug and release mode
Collects inspiration from bfa45f9f22/Makefile

Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-01 21:07:16 +04:00
Anjan Roy
05e92a0d45 Add utility functions for computing (preferably at compile-time) byte length of K-PKE keys and cipher text
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-01 20:48:21 +04:00
Anjan Roy
c9087f37ff Add domain separation in K-PKE key generation step
See section C.2 of https://doi.org/10.6028/NIST.FIPS.203

Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-09-01 20:38:36 +04:00
Anjan Roy
07883453dd Update Known Answer Test files
See gist @ https://gist.github.com/itzmeanjan/c8f5bc9640d0f0bdd2437dfe364d7710

Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
2024-08-31 13:23:05 +04:00