Marcel Cornu
8f926065eb
Add AVX512VL-Optimized SHA3/SHAKE Implementations ( #2167 )
...
* Add SHA3-256/384/512 and SHAKE128/256 AVX512VL implementations
Co-authored-by: Tomasz Kantecki <tomasz.kantecki@intel.com>
Co-authored-by: Erdinc Ozturk <erdinc.ozturk@intel.com>
Signed-off-by: Marcel Cornu <marcel.d.cornu@intel.com>
Signed-off-by: Tomasz Kantecki <tomasz.kantecki@intel.com>
* AVX512VL SHA3 is added as an extension of XKCP implementation
Co-authored-by: Marcel Cornu <marcel.d.cornu@intel.com>
Signed-off-by: Tomasz Kantecki <tomasz.kantecki@intel.com>
Signed-off-by: Marcel Cornu <marcel.d.cornu@intel.com>
* Add SHA3-384 tests
Signed-off-by: Marcel Cornu <marcel.d.cornu@intel.com>
* Update namespace test to include SHA3
Signed-off-by: Marcel Cornu <marcel.d.cornu@intel.com>
* Release SHA3 context after triggering dispatcher
Signed-off-by: Marcel Cornu <marcel.d.cornu@intel.com>
* Add linux CI for OQS_USE_SHA3_AVX512VL=OFF config
Signed-off-by: Marcel Cornu <marcel.d.cornu@intel.com>
* Add AVX512 emulation to linux CI
Signed-off-by: Marcel Cornu <marcel.d.cornu@intel.com>
---------
Signed-off-by: Marcel Cornu <marcel.d.cornu@intel.com>
Signed-off-by: Tomasz Kantecki <tomasz.kantecki@intel.com>
Co-authored-by: Tomasz Kantecki <tomasz.kantecki@intel.com>
Co-authored-by: Erdinc Ozturk <erdinc.ozturk@intel.com>
2025-06-20 13:37:32 -04:00
Jan Adriaan Leegwater
429c98ee7e
Integrate SNOVA into liboqs ( #2109 )
...
* Integrate SNOVA into liboqs
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
* Remove SNOVA_66_15_3
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
* Add ARM NEON
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
* Update, tighter constant_time passes and issues [full tests] [extended tests]
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
* Update remote commit
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
* Review comments SWilson4 [full tests] [extended tests]
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
* Fix newline at end of file [full tests] [extended tests]
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
* Restrict zephyr algorithms to the low stack ones. [full tests] [extended tests]
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
* Disable SNOVA_24_5_5 in zephyr test [full tests] [extended tests]
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
* Fix typos in KAT [full tests] [extended tests]
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
* Use Constant Time version for sign [full tests] [extended tests]
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
---------
Signed-off-by: Jan Adriaan Leegwater <info@vacuas.nl>
2025-05-01 11:41:57 -04:00
Matthias J. Kannwischer
8ed50816c1
Add UOV ( #2094 )
...
* update_docs_from_yaml.py: Do not rely on SPHINCS being last
Signed-off-by: Matthias J. Kannwischer <matthias@kannwischer.eu>
* allow pqov namespace
Signed-off-by: Matthias J. Kannwischer <matthias@kannwischer.eu>
* add uov implementations [full tests] [extended tests]
Signed-off-by: Matthias J. Kannwischer <matthias@kannwischer.eu>
* Typo [skip ci]
Signed-off-by: Douglas Stebila <dstebila@users.noreply.github.com>
* add UOV to NIST_SIG_ONRAMP
Signed-off-by: Matthias J. Kannwischer <matthias@kannwischer.eu>
---------
Signed-off-by: Matthias J. Kannwischer <matthias@kannwischer.eu>
Signed-off-by: Douglas Stebila <dstebila@users.noreply.github.com>
Signed-off-by: Basil Hess <bhe@zurich.ibm.com>
Co-authored-by: Thing-han, Lim <15379156+potsrevennil@users.noreply.github.com>
Co-authored-by: Douglas Stebila <dstebila@users.noreply.github.com>
Co-authored-by: Basil Hess <bhe@zurich.ibm.com>
2025-03-10 10:33:27 -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
Pravek Sharma
e520ec1c38
Integrate Kyber from libjade ( #1745 )
...
* Add copy_from_libjade.yml
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Modify copy_from_upstream.py
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Add patches for libjade Kyber code
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update alg_support.cmake templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update KEM famiy templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Fix copy_from_upstream.py
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Correct copy_from_upstream.py
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Modify copy_from_upstream.yml
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update KEM family templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Fix copy_from_upstream.py
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Fix KEM family templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Fix KEM family templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update templates for build system files
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update build system files
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Fix add_enable_by_alg_conditional.libjade
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Run copy_from_upstream.py
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update KEM family templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update KEM templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update KEM templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update copy_from_upstream.yml with libjade implementation info
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update KEM templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Edit KEM templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Run copy_from_upstream.py
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update copy_from_upstream.py
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Fix KEM temlates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Run copy_from_upstream.py
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Add libjade_shim
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Add jasmin/libjade namespaces to test_binary.py
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update testing
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Allow manually triggering CI tests
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Change container for upstreamcheck in unix.yml
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update copy_from_upstream.py
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Edit unix.yml
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Edit unix.yml
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Restrict copying of code from libjade repo to relevant files
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Remove irrelevant libjade code
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Remove redundant KEM templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update KEM template to accomodate new dir structure
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Debug: tweak unix.yml
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Re-build libjade with jasmin version used in CI
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Debug: undo unix.yml tweak
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Allow MSVC to ignore libjade_shims
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Simplify name scheme for libjade code
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update alg docs, libjade code name scheme, and license
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update copy_from_upstream documentation
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Fix copy_from_upstream.py and simply libjade code name scheme
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update alg docs and CBOM
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Correct alg doc generation
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Generate CBOM with unique bom-ref
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Cleanup unix.yml
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* fix patches to include api.c; fix kem templates
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* fix kyber patch
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* turn off weekly constant time tests for libjade implementations
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* update documentation
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* change upstream to stable libjade release
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* fix kyber documentation
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* fix kyber documentation
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* fix kem template again
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* fix weekly.yml and unix.yml to test libjade code
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* rename libjade asm files from *.s to *.S
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* end libjade_kyber*/api.c files with newline
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* fix kem template to prevent duplicate symbols in object files
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* fix indentation in weekly.yml
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* skip testing libjade on macos-14 in CI
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* use release tag/branch with libjade upstream url instead of commit
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* fix build error when OQS_ENABLE_LIBJADE_KEM_ALG=OFF
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* initialize LIBJADE_RANDOMBYTES when OQS_LIBJADE_BUILD=OFF
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* remove redundant comment
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* fix comment typo
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* make string explicit when comparing with variable in cmake
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* add libjade kyber licensing to README.md
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* remove reference to oldpqclean_kyber* code from libjade if branchin kem_kyber_*.c
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update CMakeLists.txt
Co-authored-by: Spencer Wilson <spencer.wilson@uwaterloo.ca>
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* track jasminc version in copy_from_libjade.yml; check jasminc version in copy_from_upstream.py
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* add OQS_LIBJADE_BUILD to build flags output
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* remove link from CONFIGURE.md
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Update libjade to dual license
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Patch gcc version for MacOS CI runs
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Fix doc generation
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* Fix libjade docs
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* fix license info in README.md
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
* update libjade_randombytes spdx-license
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
---------
Signed-off-by: Pravek Sharma <sharmapravek@gmail.com>
Co-authored-by: Spencer Wilson <spencer.wilson@uwaterloo.ca>
2024-08-18 12:02:37 -04:00
Basil Hess
4cc88845e8
Add MAYO signature scheme from NIST onramp ( #1707 )
...
Add MAYO signature scheme from NIST onramp, C and AVX2 versions
Add AES128CTR to common code
Signed-off-by: Basil Hess <bhe@zurich.ibm.com>
2024-07-13 21:38:01 +02:00
Douglas Stebila
a34cabb4bf
Mark stack non-executable when compiling with clang or gcc ( #1161 )
...
* Mark stack non-executable when compiling with clang or gcc
Fixes #1159
* Change noexecstack option on gcc
* Use gcc noexecstack only on non-Darwin
* Check for non-executable stack in shared object builds on Linux
2022-01-09 11:30:10 -05:00