SymCrypt/unittest/lib
Samuel Lee 977ec1e5f0 Merged PR 11273883: Implement ML-KEM
## Description:

+ Adds ML-KEM API surface
+ Implements the API with initial C implementation, with sprinkling of SSE/NEON for (I)NTT
+ Adds low level ML-KEM polynomial arithmetic testing which tests self-consistency and exercises internal assertion in debug builds
+ Adds multi-implementation functionality testing to enable comparative functionality and performance testing on E2E functionality
  + For now, comparison testing is just between SymCrypt static and dynamic, with 3rd party comparison with libcrux disabled until they publish a final ML-KEM implementation
+ Adds ML-KEM KATs from NIST

Related work items: #50913735
2024-08-31 02:53:41 +00:00
..
amd64 Merged PR 7551174: Rejig CPUID logic for VAES and AVX* 2022-07-12 11:50:20 +00:00
i386 Merged PR 7551174: Rejig CPUID logic for VAES and AVX* 2022-07-12 11:50:20 +00:00
CMakeLists.txt Merged PR 11273883: Implement ML-KEM 2024-08-31 02:53:41 +00:00
callback.cpp Merged PR 9883477: Fix issues on arm32 linux 2023-11-21 22:17:23 +00:00
capi_imp_blockcipherpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
capi_imp_hashpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
capi_imp_macpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
capi_implementations.cpp Merged PR 3965002: Fix up CMake files after recent changes 2019-11-06 02:16:53 +00:00
cng_imp_authenc.cpp Merged PR 9746161: Support cbNonce != 12 for AES-GCM 2023-10-31 22:21:18 +00:00
cng_imp_blockcipherpattern.cpp Merged PR 3965002: Fix up CMake files after recent changes 2019-11-06 02:16:53 +00:00
cng_imp_hashpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
cng_imp_kdfpattern.cpp Merged PR 7594329: Enable SymCrypt unit tests to drive a dynamic module 2022-08-05 20:01:21 +00:00
cng_imp_macpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
cng_imp_parallelhashpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
cng_imp_pbkdf2pattern.cpp Merged PR 7594329: Enable SymCrypt unit tests to drive a dynamic module 2022-08-05 20:01:21 +00:00
cng_imp_sp800_108pattern.cpp Merged PR 7594329: Enable SymCrypt unit tests to drive a dynamic module 2022-08-05 20:01:21 +00:00
cng_imp_tlsprf1_1pattern.cpp Merged PR 3136947: Fix copyright messages to refer to the MIT license 2019-04-11 22:52:13 +00:00
cng_imp_tlsprf1_2pattern.cpp Merged PR 3136947: Fix copyright messages to refer to the MIT license 2019-04-11 22:52:13 +00:00
cng_implementations.cpp Merged PR 10406838: Add OpenSSL implementation for XtsAes test 2024-03-16 00:10:00 +00:00
env_commonSymCryptUnittest.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
env_linuxSymCryptUnittest.cpp Merged PR 7551174: Rejig CPUID logic for VAES and AVX* 2022-07-12 11:50:20 +00:00
env_windowsSymCryptUnittest.cpp Merged PR 8395382: Fix Windows unit test for IvyBridge 2023-01-24 01:58:17 +00:00
kat.cpp Merged PR 10935012: Add support for multi-line KATs, reformat existing KATs 2024-06-14 22:17:15 +00:00
libcrux_implementations.cpp Merged PR 11273883: Implement ML-KEM 2024-08-31 02:53:41 +00:00
main.cpp Merged PR 11273883: Implement ML-KEM 2024-08-31 02:53:41 +00:00
main_exe_common.cpp Merged PR 11273883: Implement ML-KEM 2024-08-31 02:53:41 +00:00
main_exe_common_windows.cpp Merged PR 8797661: Add MSBuild solution and project files for SymCrypt 2023-05-23 08:11:33 +00:00
main_sys_common.cpp Remove NULL check for pDlgroup for consistency with other SetValue API 2021-11-26 04:56:03 -08:00
msbignum_implementations.cpp Merged PR 4044116: DL and DSA tests with flexible implementations 2019-11-21 22:57:20 +00:00
old-testRsa.cpp Merged PR 7349481: Avoid Unnecessary Pairwise Conditional Tests on (EC)DH key generation 2022-05-25 19:51:34 +00:00
old-testRsa_cng.cpp Merged PR 3919453: Modularize RSA tests 2019-10-24 01:49:21 +00:00
old-testRsa_msbignum.cpp Merged PR 3919453: Modularize RSA tests 2019-10-24 01:49:21 +00:00
old-testRsa_sc.cpp Merged PR 3919453: Modularize RSA tests 2019-10-24 01:49:21 +00:00
openssl_implementations.cpp Merged PR 10636483: Add OpenSSL implementation for SHA2 and SHA3 algorithms 2024-05-01 23:46:15 +00:00
perf.cpp Merged PR 11273883: Implement ML-KEM 2024-08-31 02:53:41 +00:00
perfPrint.cpp Merged PR 10481180: Add OpenSSL implementation for AesGcm test 2024-03-29 03:39:59 +00:00
perf_sc_imp_pattern.cpp Merged PR 7725881: Fix bug for SymCryptRsakeyGenerate for encrypt-only keys 2022-08-30 17:11:25 +00:00
precomp.h First draft of Symcrypt build system on Git 2018-11-16 16:28:12 -08:00
printtable.cpp Merged PR 7594329: Enable SymCrypt unit tests to drive a dynamic module 2022-08-05 20:01:21 +00:00
ref_implementations.cpp Merged PR 4044116: DL and DSA tests with flexible implementations 2019-11-21 22:57:20 +00:00
resultMerge.cpp Merged PR 10406838: Add OpenSSL implementation for XtsAes test 2024-03-16 00:10:00 +00:00
rndDriver.cpp Squashing previous commits: 2024-06-04 13:39:46 -07:00
rng.cpp Merged PR 10154765: Fix builds for Mariner 3 2024-01-25 23:40:05 +00:00
rsa32_imp_blockcipherpattern.cpp Merged PR 3965002: Fix up CMake files after recent changes 2019-11-06 02:16:53 +00:00
rsa32_imp_hashpattern.cpp Merged PR 3965002: Fix up CMake files after recent changes 2019-11-06 02:16:53 +00:00
rsa32_imp_macpattern.cpp Merged PR 3965002: Fix up CMake files after recent changes 2019-11-06 02:16:53 +00:00
rsa32_implementations.cpp Merged PR 9746161: Support cbNonce != 12 for AES-GCM 2023-10-31 22:21:18 +00:00
sc_imp_blockcipherpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_blockciphertestfunctionspattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_cxofpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_hashpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_hkdfpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_kdfpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_kmacpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_macpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_pattern.cpp Merged PR 11273883: Implement ML-KEM 2024-08-31 02:53:41 +00:00
sc_imp_pbkdf2pattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_sp800_108pattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_srtpkdfpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_sshkdfpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_sskdfhashpattern.cpp Merged PR 11087190: SSKDF implementation 2024-08-12 22:55:13 +00:00
sc_imp_sskdfmacpattern.cpp Merged PR 11087190: SSKDF implementation 2024-08-12 22:55:13 +00:00
sc_imp_tlsprf1_1pattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_tlsprf1_2pattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_imp_xofpattern.cpp Merged PR 10740690: Fixes for various build issues 2024-05-10 06:48:11 +00:00
sc_implementations.cpp Merged PR 11273883: Implement ML-KEM 2024-08-31 02:53:41 +00:00
selftestFuncList.cpp Merged PR 11273883: Implement ML-KEM 2024-08-31 02:53:41 +00:00
symcryptunittest_lib.vcxproj Merged PR 11273883: Implement ML-KEM 2024-08-31 02:53:41 +00:00
testAesCtrDrbg.cpp Merged PR 10154765: Fix builds for Mariner 3 2024-01-25 23:40:05 +00:00
testArithmetic.cpp Merged PR 10154765: Fix builds for Mariner 3 2024-01-25 23:40:05 +00:00
testAuthEnc.cpp Merged PR 10154765: Fix builds for Mariner 3 2024-01-25 23:40:05 +00:00
testBlockCiphers.cpp Merged PR 10154765: Fix builds for Mariner 3 2024-01-25 23:40:05 +00:00
testCustomizableXof.cpp Merged PR 10154765: Fix builds for Mariner 3 2024-01-25 23:40:05 +00:00
testDh.cpp Merged PR 10154765: Fix builds for Mariner 3 2024-01-25 23:40:05 +00:00
testDl.cpp Merged PR 7349481: Avoid Unnecessary Pairwise Conditional Tests on (EC)DH key generation 2022-05-25 19:51:34 +00:00
testDl_cng.cpp Merged PR 4178671: Add x86 CMake build with CPU optimizations 2020-01-11 01:22:33 +00:00
testDl_msbignum.cpp Merged PR 3136947: Fix copyright messages to refer to the MIT license 2019-04-11 22:52:13 +00:00
testDl_sc.cpp Merged PR 7349481: Avoid Unnecessary Pairwise Conditional Tests on (EC)DH key generation 2022-05-25 19:51:34 +00:00
testDsa.cpp Merged PR 7594329: Enable SymCrypt unit tests to drive a dynamic module 2022-08-05 20:01:21 +00:00
testEcc.cpp Merged PR 10154765: Fix builds for Mariner 3 2024-01-25 23:40:05 +00:00
testHbs.cpp Merged PR 11273883: Implement ML-KEM 2024-08-31 02:53:41 +00:00
testIEEE802_11SaeCustom.cpp Merged PR 7594329: Enable SymCrypt unit tests to drive a dynamic module 2022-08-05 20:01:21 +00:00
testInterop.cpp Merged PR 3136947: Fix copyright messages to refer to the MIT license 2019-04-11 22:52:13 +00:00
testKdf.cpp Merged PR 11087190: SSKDF implementation 2024-08-12 22:55:13 +00:00
testKem.cpp Merged PR 11273883: Implement ML-KEM 2024-08-31 02:53:41 +00:00
testKmac.cpp Merged PR 10154765: Fix builds for Mariner 3 2024-01-25 23:40:05 +00:00
testMac.cpp Merged PR 10154765: Fix builds for Mariner 3 2024-01-25 23:40:05 +00:00
testMontgomery.cpp Merged PR 9304996: Add checks for presence of private key before using it in ECC 2023-07-18 20:15:02 +00:00
testMultiThread.cpp Merged PR 3136947: Fix copyright messages to refer to the MIT license 2019-04-11 22:52:13 +00:00
testPaddingPkcs7.cpp Merged PR 7594329: Enable SymCrypt unit tests to drive a dynamic module 2022-08-05 20:01:21 +00:00
testRsaEnc.cpp Merged PR 7594329: Enable SymCrypt unit tests to drive a dynamic module 2022-08-05 20:01:21 +00:00
testRsaSign.cpp Merged PR 7979179: Add SHA-3 implementations 2022-10-25 20:39:41 +00:00
testScsTable.cpp Merged PR 7594329: Enable SymCrypt unit tests to drive a dynamic module 2022-08-05 20:01:21 +00:00
testScsTools.cpp Merged PR 7594329: Enable SymCrypt unit tests to drive a dynamic module 2022-08-05 20:01:21 +00:00
testSelftest.cpp Merged PR 11324214: FIPS 140-3 CASTs for RSA, DSA, ECDSA 2024-08-30 05:26:38 +00:00
testStatusIndicator.cpp Merged PR 9834558: Add FIPS Status Indicator 2023-11-13 21:32:26 +00:00
testStreamCipher.cpp Merged PR 4110997: Enable performance tests on Linux 2019-12-12 00:23:08 +00:00
testTlsCbcHmac.cpp Merged PR 4110997: Enable performance tests on Linux 2019-12-12 00:23:08 +00:00
testWipe.cpp Merged PR 9883477: Fix issues on arm32 linux 2023-11-21 22:17:23 +00:00
testXof.cpp Merged PR 10154765: Fix builds for Mariner 3 2024-01-25 23:40:05 +00:00
testXts.cpp Merged PR 10406838: Add OpenSSL implementation for XtsAes test 2024-03-16 00:10:00 +00:00
testhash.cpp Merged PR 10636483: Add OpenSSL implementation for SHA2 and SHA3 algorithms 2024-05-01 23:46:15 +00:00
testutil.cpp Merged PR 7594329: Enable SymCrypt unit tests to drive a dynamic module 2022-08-05 20:01:21 +00:00