Skip to content

Commit

Permalink
Update Classic McEliece suppression files (#1541)
Browse files Browse the repository at this point in the history
* 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.
  • Loading branch information
praveksharma authored Sep 13, 2023
1 parent 456015c commit 7ef422a
Show file tree
Hide file tree
Showing 8 changed files with 83 additions and 19 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/weekly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
container: openquantumsafe/ci-ubuntu-focal-x86_64:latest
CMAKE_ARGS: -DOQS_OPT_TARGET=generic -DCMAKE_BUILD_TYPE=Debug -DOQS_ENABLE_TEST_CONSTANT_TIME=ON
PYTEST_ARGS: --numprocesses=auto -k 'test_constant_time'
SKIP_ALGS: 'SPHINCS\+-SHA*,Classic-McEliece-6(.)*'
SKIP_ALGS: 'SPHINCS\+-SHA*, Classic-McEliece-(.)*'
- name: extensions
container: openquantumsafe/ci-ubuntu-focal-x86_64:latest
CMAKE_ARGS: -DOQS_OPT_TARGET=haswell -DCMAKE_BUILD_TYPE=Debug -DOQS_ENABLE_TEST_CONSTANT_TIME=ON
Expand Down
1 change: 1 addition & 0 deletions docs/algorithms/kem/classic_mceliece.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
## Advisories

- Classic-McEliece-460896, Classic-McEliece-460896f, Classic-McEliece-6960119, and Classic-McEliece-6960119f parameter sets fail memory leak testing on x86-64 when building with ``clang`` using optimization level ``-O2`` and ``-O3``. Care is advised when using the algorithm at higher optimization levels, and any other compiler and architecture.
- Current implementation of the algorithm may not be constant-time. Additionally, environment specific constant-time leaks may not be documented; please report potential constant-time leaks when found.

## Parameter set summary

Expand Down
1 change: 1 addition & 0 deletions docs/algorithms/kem/classic_mceliece.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ advisories:
building with ``clang`` using optimization level ``-O2`` and ``-O3``. Care is advised
when using the algorithm at higher optimization levels, and any other compiler and
architecture.
- Current implementation of the algorithm may not be constant-time. Additionally, environment specific constant-time leaks may not be documented; please report potential constant-time leaks when found.
parameter-sets:
- name: Classic-McEliece-348864
claimed-nist-level: 1
Expand Down
18 changes: 0 additions & 18 deletions tests/constant_time/kem/issues/bike_has_no_timing_protections

This file was deleted.

24 changes: 24 additions & 0 deletions tests/constant_time/kem/issues/classic-mceliece-348864
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,14 @@
fun:PQCLEAN_MCELIECE348864_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
src:pk_gen.c:314
# fun:PQCLEAN_MCELIECE348864_AVX2_pk_gen
fun:PQCLEAN_MCELIECE348864_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
Expand Down Expand Up @@ -166,6 +174,22 @@
fun:PQCLEAN_MCELIECE348864_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
src:pk_gen.c:322
# fun:PQCLEAN_MCELIECE348864_AVX2_pk_gen
fun:PQCLEAN_MCELIECE348864_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Cond
src:pk_gen.c:322
# fun:PQCLEAN_MCELIECE348864_AVX2_pk_gen
fun:PQCLEAN_MCELIECE348864_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
Expand Down
40 changes: 40 additions & 0 deletions tests/constant_time/kem/issues/classic-mceliece-460896
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
src:pk_gen.c:35
# fun:extract_01_masks
fun:PQCLEAN_MCELIECE460896_AVX2_pk_gen
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
src:pk_gen.c:43
# fun:extract_mask256
fun:PQCLEAN_MCELIECE460896_AVX2_pk_gen
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
Expand Down Expand Up @@ -30,6 +46,14 @@
fun:PQCLEAN_MCELIECE460896_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
src:pk_gen.c:315
# fun:PQCLEAN_MCELIECE460896_AVX2_pk_gen
fun:PQCLEAN_MCELIECE460896_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Cond
Expand All @@ -38,6 +62,22 @@
fun:PQCLEAN_MCELIECE460896_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
src:pk_gen.c:320
# fun:PQCLEAN_MCELIECE460896_AVX2_pk_gen
fun:PQCLEAN_MCELIECE460896_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
src:pk_gen.c:323
# fun:PQCLEAN_MCELIECE460896_AVX2_pk_gen
fun:PQCLEAN_MCELIECE460896_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
Expand Down
8 changes: 8 additions & 0 deletions tests/constant_time/kem/issues/classic-mceliece-6960119
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,14 @@
fun:PQCLEAN_MCELIECE6960119_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Value8
src:pk_gen.c:326
# fun:PQCLEAN_MCELIECE6960119_AVX2_pk_gen
fun:PQCLEAN_MCELIECE6960119_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Cond
Expand Down
8 changes: 8 additions & 0 deletions tests/constant_time/kem/issues/classic-mceliece-8192128
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,14 @@
fun:PQCLEAN_MCELIECE8192128_AVX2_crypto_kem_keypair
}

{
<insert_a_suppression_name_here>
Memcheck:Value8
src:pk_gen.c:323
# fun:PQCLEAN_MCELIECE8192128_AVX2_pk_gen
fun:PQCLEAN_MCELIECE8192128_AVX2_crypto_kem_keypair
}

{
This implementation of Classic McEliece may not be constant time.
Memcheck:Cond
Expand Down

0 comments on commit 7ef422a

Please sign in to comment.