28 Commits

Author SHA1 Message Date
Saito Masataka
59bf831b47
Add NTRU back (#2176)
This commit includes following changes:
* Revert "Removed NTRU. (#1335)"
* Replace the uses of malloc with OQS_MEM_malloc
* Add a derandomized keypair function
* Add "all" entries of NTRU algorithms to the KATs file
* Fix reflecting the removal of NTRU from PQClean
* Update NTRU documents with the latest manners
* Change the CODEOWNERS of NTRU KEM

Signed-off-by: Saito Masataka <saitomst@intellilink.co.jp>
2025-09-09 17:10:28 -04:00
Matthias J. Kannwischer
708b1052d5
Adjust constan-time test exception for mlkem-native [extended tests] (#2162)
The constant-time tests have been failing for mlkem-native as check_sk changed it's name and is no no longer recognized as an exception.
This function processes exclusively public data in the secret key and it's, hence, okay to branch both inside the function and depending on the return value.

This commit renames the function in the constant_time exceptions file.

Signed-off-by: Matthias J. Kannwischer <matthias@kannwischer.eu>
2025-06-10 08:49:19 -04:00
Basil Hess
a554b36dd3
Import ML-KEM from mlkem-native/PQ code package (#2041)
* Integrate ML-KEM from mlkem-native [full tests] [extended tests]

---------

Signed-off-by: Basil Hess <bhe@zurich.ibm.com>
2025-02-04 16:26:27 +01:00
Spencer Wilson
b37c937a64
Refactor liboqs CI and update Ubuntu images (#1909)
* Refactor liboqs CI to utilize reusable workflows
* Add CI.md documentation file
* Update all Focal jobs to Noble (the latest Ubuntu LTS)
* Minor fixes to address issues related to the update (CT files / syntax / static analysis)

Signed-off-by: Spencer Wilson <spencer.wilson@uwaterloo.ca>
2024-09-09 10:43:59 -04:00
Basil Hess
dc4deaa4e1
Add ML-KEM / FIPS203 final (#1899)
* Add ML-KEM
* Add ACVP vectors for ML-KEM
* Removes ML-KEM-ipd

---------
Signed-off-by: Basil Hess <bhe@zurich.ibm.com>
2024-08-27 18:57:04 +02:00
Basil Hess
60adf53107
Add ML-DSA-ipd and ML-KEM-ipd & NIST supplied test vectors (#1626)
Pulls ML-DSA-ipd and ML-KEM-ipd
Adds test cases with NIST supplied test vectors for ML-DSA/ML-KEM
Adds aliases (ML-<name> are aliases of ML-<name>-ipd)
[trigger downstream]
2024-02-19 10:28:28 +01:00
Spencer Wilson
dea517016c
Update McEliece suppression files for generic config (#1677) 2024-02-07 13:27:07 -05:00
Spencer Wilson
acac4e998a
Fix BIKE constant-time errors (#1632)
* Document BIKE CT issues

* Document / fix BIKE constant-time errors

* Revert "< 64" comparison change

* Add and use secure_cmpeq64_mask function

* Remove unnecessary static_assert
2024-01-02 09:40:34 -05:00
Spencer Wilson
aeac3a441d
Pull new HQC implementation from upstream (#1585)
* Update Sphincs+ PQClean patch

* Don't apply PQClean Dilithium and Kyber patches

* Run copy_from_upstream; don't apply Dilithium and Kyber changes

* Run HQC KATs with custom PRNG

* Satisfy astyle

* Add licence for common code

* Fix CI build errors

* Update HQC version, OQS version, and SOVERSION

* Move HQC PRNG into test file

* Satisfy astyle

* Fix SHA3 link error

* Reset HQC issues/passes

* fixup! Fix SHA3 link error

* fix kat_kem linkage to make HQC PR pass CI (#1601)

* fix kat_kem linkage

* remove armhf CI support

* Revert "remove armhf CI support"

This reverts commit af759bbf743bb3ecc2e7315cf10c1785e93bcc05.

---------

Co-authored-by: Michael Baentsch <57787676+baentsch@users.noreply.github.com>
2023-11-06 16:40:50 -05:00
Pravek Sharma
cdc8a971c6
Update Classic McEliece supression files (#1568) 2023-09-28 16:30:11 -04:00
Pravek Sharma
7ef422a6f5
Update Classic McEliece suppression files (#1541)
* Update McEliece supression files.

* Update McEliece advisories.

* Update weekly constant time test workflow.

* Update weekly constant time test workflow. Update McEliece supression files.

* Update BIKE advisories.

* Restored BIKE advisories. Deleted unused BIKE supressions.
2023-09-13 08:46:45 -04:00
Pravek Sharma
348ab36bbe
Update Classic McEliece supression files (#1527)
* Update constant suppression supression files for Round 4 Classic McEliece.

* Update constant suppression supression files for Round 4 Classic McEliece.
2023-08-15 10:48:54 -04:00
Douglas Stebila
35b1bf2704
Remove remaining references to SPHINCS+-Haraka, Kyber 90s, Dilithium-AES (#1465)
* Delete Haraka references

* Delete Kyber90s and Dilithium-AES source code and references

* Delete more references to Dilithium-AES
2023-05-16 12:27:12 -04:00
dkostic
8b24019ba0
Make BIKE decode function void to avoid ct issues (#1400)
* Make decode function void to avoid ct issues

* Update test documentation

* add suppression files

* forgot to add the file

* typo fix

* Compute threshold without floating point operations

* Replace division by a constant with mul+shift

---------

Co-authored-by: dkostic <dkostic@amazon.com>
2023-04-14 14:46:14 -04:00
Jeevesh Rishi Dindyal (Sarvesh)
2e42595804
Add ntruprime (#1328)
* Add back sntrup761
2022-12-22 07:37:44 +01:00
Goutam Tamvada
a7e1b8a32f
Removed NTRU. (#1335) 2022-12-15 12:19:29 -05:00
Goutam Tamvada
f5d96cab5c
Removed SABER. (#1326) 2022-12-01 14:04:08 -05:00
Goutam Tamvada
c50d38e5a8
Removed NTRU-Prime. (#1325) 2022-11-29 07:31:53 +01:00
Douglas Stebila
1e47e14556
Remove SIDH and SIKE (#1272)
Due to https://eprint.iacr.org/2022/975.

Fixes #1268.
2022-08-03 10:19:28 -04:00
Ted Eaton
feea2f3864
Issues and passes for aarch64 const time checks (#1214) 2022-05-25 10:47:34 -04:00
Douglas Stebila
bcc94dad5e
Suppress constant time check for public matrix generation on Kyber AVX2 (#1189)
* Suppress constant time check for public matrix generation on Kyber AVX2

* Update tests/constant_time/kem/passes/kyber-90s

Co-authored-by: Basil Hess <basil.hess@gmail.com>

* Remove temporary CI job [skip ci]

Co-authored-by: Basil Hess <basil.hess@gmail.com>
2022-02-16 20:19:19 -05:00
Michael Baentsch
6175da8246
Add S/NTRUP1277 (#1111)
* adds S/NTRUP1277

* disable McEliece for OSX shared CCI runs

* known sntrup constant_time issue suppressed
2021-10-22 09:31:47 -04:00
Douglas Stebila
a934455362
Update Valgrind suppression files for recent implementation changes (#1068) 2021-08-06 09:47:08 -04:00
John Schanck
bd23977818
tests/constant_time: update SIKE suppression files [skip ci] (#1009) 2021-06-01 17:50:17 -04:00
John Schanck
1b25f45f35
tests/constant_time: update passes file for AVX2 impl of HQC [skip ci] (#994) 2021-05-06 19:51:20 -04:00
John Schanck
8981b7f337
tests/constant_time: SIKE issues are resolved (#987) 2021-05-06 10:52:35 -04:00
John Schanck
0e4885b569
test_constant_time: Suppression files for AVX McEliece [skip ci] (#931) 2021-03-03 12:32:22 -05:00
John Schanck
fa9c2671ec
Use valgrind to check for secret-dependent branching on 'audit' branches (#904)
* Constant time checks using Valgrind and suppression files

* Suppression file for Kyber (ref+avx), HQC, SIKE, NTRUPrime, McEliece, SIDH, Falcon (ref+avx), SPHINCS, Dilithium r2+r3, picnic

* mark all BIKE implementations as vartime

* Set OQS_DEBUG_BUILD in oqsconfig.h if CMAKE_BUILD_TYPE=Debug

* Add OQS_ENABLE_TEST_CONSTANT_TIME to oqsconfig.h

* Check build options before running

* test_{kem,sig}: avoid direct call to OQS_randombytes_system

* Remove picnic3 issue based on review #889

* fix Kyber namespacing

* Missing BIKE error type, skip BIKE

* Resolve SIDH/SIKE bingcd issue as per #888

* Mark Falcon hash_to_point_vartime issue as resolved

* Disable CI tests
2021-02-25 06:51:01 +01:00