diff --git a/CMakeLists.txt b/CMakeLists.txt index db254aaf..34241744 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -190,7 +190,16 @@ add_subdirectory(src/kem/hqc/hqc-rmrs-128/clean) add_subdirectory(src/kem/hqc/hqc-rmrs-192/clean) add_subdirectory(src/kem/hqc/hqc-rmrs-256/clean) add_subdirectory(src/kem/sike) - +add_subdirectory(src/kem/mceliece/mceliece348864/clean) +add_subdirectory(src/kem/mceliece/mceliece460896/clean) +add_subdirectory(src/kem/mceliece/mceliece6688128/clean) +add_subdirectory(src/kem/mceliece/mceliece6960119/clean) +add_subdirectory(src/kem/mceliece/mceliece8192128/clean) +add_subdirectory(src/kem/mceliece/mceliece348864f/clean) +add_subdirectory(src/kem/mceliece/mceliece460896f/clean) +add_subdirectory(src/kem/mceliece/mceliece6688128f/clean) +add_subdirectory(src/kem/mceliece/mceliece6960119f/clean) +add_subdirectory(src/kem/mceliece/mceliece8192128f/clean) # Hardware optimized targets if(${ARCH} STREQUAL "ARCH_x86_64") diff --git a/public/pqc/pqc.h b/public/pqc/pqc.h index 8a9ad129..baee68c4 100644 --- a/public/pqc/pqc.h +++ b/public/pqc/pqc.h @@ -66,7 +66,17 @@ extern "C" { _(HQCRMRS128) \ _(HQCRMRS192) \ _(HQCRMRS256) \ - _(SIKE434) + _(SIKE434) \ + _(MCELIECE348864) \ + _(MCELIECE460896) \ + _(MCELIECE6688128) \ + _(MCELIECE6960119) \ + _(MCELIECE8192128) \ + _(MCELIECE348864F) \ + _(MCELIECE460896F) \ + _(MCELIECE6688128F) \ + _(MCELIECE6960119F) \ + _(MCELIECE8192128F) // Defines IDs for each algorithm. The // PQC_ALG_SIG/KEM_MAX indicates number diff --git a/src/kem/mceliece/mceliece348864/clean/CMakeLists.txt b/src/kem/mceliece/mceliece348864/clean/CMakeLists.txt new file mode 100644 index 00000000..c1c7dd43 --- /dev/null +++ b/src/kem/mceliece/mceliece348864/clean/CMakeLists.txt @@ -0,0 +1,20 @@ +set( + SRC_CLEAN_MCELIECE348864 + aes256ctr.c + benes.c + bm.c + controlbits.c + decrypt.c + encrypt.c + gf.c + operations.c + pk_gen.c + root.c + sk_gen.c + synd.c + transpose.c + util.c +) + +define_kem_alg(mceliece348864_clean + PQCLEAN_MCELIECE348864_OPT "${SRC_CLEAN_MCELIECE348864}" "${CMAKE_CURRENT_SOURCE_DIR}") diff --git a/src/kem/mceliece/mceliece348864f/clean/CMakeLists.txt b/src/kem/mceliece/mceliece348864f/clean/CMakeLists.txt new file mode 100644 index 00000000..c0fb3a87 --- /dev/null +++ b/src/kem/mceliece/mceliece348864f/clean/CMakeLists.txt @@ -0,0 +1,20 @@ +set( + SRC_CLEAN_MCELIECE348864F + aes256ctr.c + benes.c + bm.c + controlbits.c + decrypt.c + encrypt.c + gf.c + operations.c + pk_gen.c + root.c + sk_gen.c + synd.c + transpose.c + util.c +) + +define_kem_alg(mceliece348864f_clean + PQCLEAN_MCELIECE348864F_OPT "${SRC_CLEAN_MCELIECE348864F}" "${CMAKE_CURRENT_SOURCE_DIR}") diff --git a/src/kem/mceliece/mceliece460896/clean/CMakeLists.txt b/src/kem/mceliece/mceliece460896/clean/CMakeLists.txt new file mode 100644 index 00000000..717063f9 --- /dev/null +++ b/src/kem/mceliece/mceliece460896/clean/CMakeLists.txt @@ -0,0 +1,20 @@ +set( + SRC_CLEAN_MCELIECE460896 + aes256ctr.c + benes.c + bm.c + controlbits.c + decrypt.c + encrypt.c + gf.c + operations.c + pk_gen.c + root.c + sk_gen.c + synd.c + transpose.c + util.c +) + +define_kem_alg(mceliece460896_clean + PQCLEAN_MCELIECE460896_OPT "${SRC_CLEAN_MCELIECE460896}" "${CMAKE_CURRENT_SOURCE_DIR}") diff --git a/src/kem/mceliece/mceliece460896f/clean/CMakeLists.txt b/src/kem/mceliece/mceliece460896f/clean/CMakeLists.txt new file mode 100644 index 00000000..9389c47f --- /dev/null +++ b/src/kem/mceliece/mceliece460896f/clean/CMakeLists.txt @@ -0,0 +1,20 @@ +set( + SRC_CLEAN_MCELIECE460896F + aes256ctr.c + benes.c + bm.c + controlbits.c + decrypt.c + encrypt.c + gf.c + operations.c + pk_gen.c + root.c + sk_gen.c + synd.c + transpose.c + util.c +) + +define_kem_alg(mceliece460896f_clean + PQCLEAN_MCELIECE460896F_OPT "${SRC_CLEAN_MCELIECE460896F}" "${CMAKE_CURRENT_SOURCE_DIR}") diff --git a/src/kem/mceliece/mceliece6688128/clean/CMakeLists.txt b/src/kem/mceliece/mceliece6688128/clean/CMakeLists.txt new file mode 100644 index 00000000..fcdbd7a8 --- /dev/null +++ b/src/kem/mceliece/mceliece6688128/clean/CMakeLists.txt @@ -0,0 +1,20 @@ +set( + SRC_CLEAN_MCELIECE6688128 + aes256ctr.c + benes.c + bm.c + controlbits.c + decrypt.c + encrypt.c + gf.c + operations.c + pk_gen.c + root.c + sk_gen.c + synd.c + transpose.c + util.c +) + +define_kem_alg(mceliece6688128_clean + PQCLEAN_MCELIECE6688128_OPT "${SRC_CLEAN_MCELIECE6688128}" "${CMAKE_CURRENT_SOURCE_DIR}") diff --git a/src/kem/mceliece/mceliece6688128f/clean/CMakeLists.txt b/src/kem/mceliece/mceliece6688128f/clean/CMakeLists.txt new file mode 100644 index 00000000..67ffb156 --- /dev/null +++ b/src/kem/mceliece/mceliece6688128f/clean/CMakeLists.txt @@ -0,0 +1,20 @@ +set( + SRC_CLEAN_MCELIECE6688128F + aes256ctr.c + benes.c + bm.c + controlbits.c + decrypt.c + encrypt.c + gf.c + operations.c + pk_gen.c + root.c + sk_gen.c + synd.c + transpose.c + util.c +) + +define_kem_alg(mceliece6688128f_clean + PQCLEAN_MCELIECE6688128F_OPT "${SRC_CLEAN_MCELIECE6688128F}" "${CMAKE_CURRENT_SOURCE_DIR}") diff --git a/src/kem/mceliece/mceliece6960119/clean/CMakeLists.txt b/src/kem/mceliece/mceliece6960119/clean/CMakeLists.txt new file mode 100644 index 00000000..dac76419 --- /dev/null +++ b/src/kem/mceliece/mceliece6960119/clean/CMakeLists.txt @@ -0,0 +1,20 @@ +set( + SRC_CLEAN_MCELIECE6960119 + aes256ctr.c + benes.c + bm.c + controlbits.c + decrypt.c + encrypt.c + gf.c + operations.c + pk_gen.c + root.c + sk_gen.c + synd.c + transpose.c + util.c +) + +define_kem_alg(mceliece6960119_clean + PQCLEAN_MCELIECE6960119_OPT "${SRC_CLEAN_MCELIECE6960119}" "${CMAKE_CURRENT_SOURCE_DIR}") diff --git a/src/kem/mceliece/mceliece6960119f/clean/CMakeLists.txt b/src/kem/mceliece/mceliece6960119f/clean/CMakeLists.txt new file mode 100644 index 00000000..3b9c66e4 --- /dev/null +++ b/src/kem/mceliece/mceliece6960119f/clean/CMakeLists.txt @@ -0,0 +1,20 @@ +set( + SRC_CLEAN_MCELIECE6960119F + aes256ctr.c + benes.c + bm.c + controlbits.c + decrypt.c + encrypt.c + gf.c + operations.c + pk_gen.c + root.c + sk_gen.c + synd.c + transpose.c + util.c +) + +define_kem_alg(mceliece6960119f_clean + PQCLEAN_MCELIECE6960119F_OPT "${SRC_CLEAN_MCELIECE6960119F}" "${CMAKE_CURRENT_SOURCE_DIR}") diff --git a/src/kem/mceliece/mceliece8192128/clean/CMakeLists.txt b/src/kem/mceliece/mceliece8192128/clean/CMakeLists.txt new file mode 100644 index 00000000..55250947 --- /dev/null +++ b/src/kem/mceliece/mceliece8192128/clean/CMakeLists.txt @@ -0,0 +1,20 @@ +set( + SRC_CLEAN_MCELIECE8192128 + aes256ctr.c + benes.c + bm.c + controlbits.c + decrypt.c + encrypt.c + gf.c + operations.c + pk_gen.c + root.c + sk_gen.c + synd.c + transpose.c + util.c +) + +define_kem_alg(mceliece8192128_clean + PQCLEAN_MCELIECE8192128_OPT "${SRC_CLEAN_MCELIECE8192128}" "${CMAKE_CURRENT_SOURCE_DIR}") diff --git a/src/kem/mceliece/mceliece8192128f/clean/CMakeLists.txt b/src/kem/mceliece/mceliece8192128f/clean/CMakeLists.txt new file mode 100644 index 00000000..b2cc8aa1 --- /dev/null +++ b/src/kem/mceliece/mceliece8192128f/clean/CMakeLists.txt @@ -0,0 +1,20 @@ +set( + SRC_CLEAN_MCELIECE8192128F + aes256ctr.c + benes.c + bm.c + controlbits.c + decrypt.c + encrypt.c + gf.c + operations.c + pk_gen.c + root.c + sk_gen.c + synd.c + transpose.c + util.c +) + +define_kem_alg(mceliece8192128f_clean + PQCLEAN_MCELIECE8192128F_OPT "${SRC_CLEAN_MCELIECE8192128F}" "${CMAKE_CURRENT_SOURCE_DIR}")