997 Commits

Author SHA1 Message Date
Douglas Stebila
9ed69af2c5
Wrap functions that call AES-NI code in ifdef (#815) 2020-08-24 11:22:24 -04:00
Douglas Stebila
226b4637d9
Remove non-Round 3 algorithms (NewHope, ThreeBears, MQDSS, qTesla) (#810) 2020-08-17 13:25:08 -04:00
Douglas Stebila
02fddd9353 0.4.0 release 0.4.0 2020-08-11 20:30:00 -04:00
Douglas Stebila
836b7e14b4
Fix undefined behaviour in FrodoKEM (#809) 2020-08-07 09:18:47 -04:00
Douglas Stebila
477ef3f60c 0.4.0-rc1 2020-08-04 20:25:59 -04:00
Douglas Stebila
adac989932
Added HQC from PQClean. (#805) 2020-08-04 13:22:45 -04:00
Douglas Stebila
aa7f1dfa3d
Cleanup PQClean implementations (#803)
* Sync with PQClean commit 90630db2ebada4bacceb5331b0a1a9a356ba65b9

* Delete duplicate implementations due to underscore bug; add MQDSS AVX2

* Delete more duplicate PQClean implementations
2020-08-04 11:54:25 -04:00
Douglas Stebila
a3f386da31
AES-NI bug fixes (#800)
* Don't cast to unaligned pointer

It's not available in some intrinsics headers

* Fix AES decryption bug

* Argument isn't unused

* Ensure AES calls are 16-byte aligned for BIKE

* Print cmake configuration for debugging

* Switch AES NI to use unaligned load/store
2020-07-26 10:53:40 -04:00
Douglas Stebila
ed1baf3d27 Change to 0.4.0-dev and some cleanup 2020-07-24 20:38:46 -04:00
Douglas Stebila
11246cd4eb Prefer OpenSSL on Alpine CI 2020-07-24 17:28:57 -04:00
Douglas Stebila
34ec4b83a7
Re-add AES-NI with CPU feature detection (#770)
* Start re-adding AES-NI with CPU feature detection

* Follow Goutam's feedback on CPU feature detection

* Macrify CPU feature detection logic in AES

* AES128 and AES256 using NI based on Romain Dolbeau's public domain code

* Fewer calls to C_OR_NI

* Restricting setting of OQS_USE_CPU_EXTENSIONS.

* Unroll AES loops

Co-authored-by: xvzcf <xvzcf@users.noreply.github.com>
2020-07-24 13:53:14 -04:00
Douglas Stebila
a3a5347202
Use C rounding code in Dilithium instead of AVX2 (#798)
Temporary workaround for #793 until proper fix developed

https://github.com/open-quantum-safe/liboqs/issues/793
https://github.com/pq-crystals/dilithium/issues/31
2020-07-24 13:06:48 -04:00
Douglas Stebila
a55b12eb25
Fix non-Dilithium-related execute failures on Alpine (#796)
* Increase stack size when using musl libc on Alpine

This is probably not the best way to do it in long run, but I'm not sure 
how to detect libc version at compile time.

* Fix free-check bug on Alpine

* Extra symbols in shared library on Alpine

* Activate Alpine builds

* Only increase stack size if musl is present on Alpine

This is not the most generic way to do it but hopefully will suffice

* Temporarily enable Alpine builds

* Simplify link option on Alpine
2020-07-24 09:18:19 -04:00
Michael Baentsch
2991696b4c
upstream dilithium (#794)
* added upstream dilithium

* switched to clang on Centos-8
2020-07-23 06:45:08 +02:00
Christian Paquin
9cffd175fb
Install dll in output bin directory on windows cross-compile (#792) 2020-07-21 19:48:40 -04:00
Michael Baentsch
b24a046495
Enable automated upstream imports (#789) 2020-07-16 15:36:58 +02:00
Christian Paquin
53937db0c2
Merge pull request #790 from christianpaquin/cp-update-sike-july2020
Integrated latest SIKE bug fixes
2020-07-13 16:17:18 -04:00
Christian Paquin
a34fd7062f formatted 2020-07-13 12:03:17 -04:00
Christian Paquin
0cba778097 Added invalid ciphertext test in test_kem, and replaced invalid signature with random array vs modified first byte (code from PR787). 2020-07-13 11:57:36 -04:00
Christian Paquin
e5f33fea7a Removed temp code guard. 2020-07-12 17:10:13 -04:00
Christian Paquin
a371bc0497 Integrated SIKE commit 50f352. 2020-07-12 14:55:36 -04:00
Christian Paquin
0f9610e15f Integrated SIKE from upstream commit 521aab to 011e11 2020-07-09 17:03:36 -04:00
Douglas Stebila
0bcb12ba2f
Add pull request template (#786) 2020-07-09 06:43:05 +02:00
Michael Baentsch
5f277fc019
KAT testing using hashes (#784)
* removed full-size KATs

* corrected qTesla avx2 KAT selection

* Fixed macOS build warnings. (#782)

* removed full-size KATs

* corrected qTesla avx2 KAT selection

* KATs as dicts; simplified & corrected logic
2020-07-08 10:40:50 -04:00
Michael Baentsch
f602c24401
fixed shlib OSX namespace test; moved alpine to nightly (#783)
* fixed shlib OSX namespace test; moved alpine to nightly

* disabled alpine
2020-07-08 10:37:57 -04:00
Michael Baentsch
d3b1d913cd
Fixed macOS build warnings. (#782) 2020-07-07 09:53:06 -04:00
Michael Baentsch
4d829af028
adding alpine, shared OSX (#781) 2020-07-07 07:47:46 +02:00
Christian Paquin
0327ed9169
Merge pull request #771 from christianpaquin/cp-picnicv3
Integrated picnic v3.0
2020-07-06 11:54:25 -04:00
Ryan Deschamps
1b9aecc656
Change return value of USING_TIME_RATHER_THAN_CYCLES to unsigned int. (#777) 2020-07-06 10:51:09 -04:00
Christian Paquin
56b2bda572 Added details on new params in alg doc sheet, and cleaned-up namescape macro file. 2020-06-29 15:31:36 -04:00
Christian Paquin
0d59d2bf0b Fix formatting for test_style 2020-06-26 20:09:30 -04:00
Christian Paquin
6ed4163f40 Fix L3/L5-full typo. 2020-06-26 19:25:58 -04:00
Kevin Kane
7f7bbaf59e
Update cross-compiling instructions for Windows in README.md (#772)
OQS_USE_CPU_EXTENSIONS has to be OFF in the cross-compiling scenario, or CMake will fail.
2020-06-26 17:26:20 +02:00
Christian Paquin
f4d4d47c81 Integrated picnic v3.0. 2020-06-24 20:18:39 -04:00
Christian Paquin
088284417e
Merge pull request #769 from christianpaquin/cp-sike-v3.3
Integrated SIKE v3.3
2020-06-22 20:56:03 -04:00
Christian Paquin
f96eeefea1 Reverted increased test timeout after fixing P751 compressed hang 2020-06-22 17:32:26 -04:00
Christian Paquin
60e7875da9 Removed FIXMEOQS 2020-06-22 17:28:48 -04:00
Christian Paquin
f4312bd640 Updated SIKE to latest upstream commit 521aab, and fix P751 compressed typo 2020-06-22 17:21:07 -04:00
Christian Paquin
d1344c7f24 Selectively build files based on ENABLE_KEM_SIDH/SIKE macros 2020-06-22 15:44:20 -04:00
Christian Paquin
78c5f77b08 Increased circleci timeout from 20 to 30 min. 2020-06-21 21:00:12 -04:00
Christian Paquin
47cbc02e8c Uncommented missing sike p503 constant. 2020-06-21 10:57:50 -04:00
Christian Paquin
66986b0d9f Removed tabs from circleci config 2020-06-20 21:50:16 -04:00
Christian Paquin
bb12bca317 Increased no-output runtime for tests. 2020-06-20 21:45:57 -04:00
Christian Paquin
816a91c137 Fix sike P610 namespace macro def. 2020-06-20 21:25:41 -04:00
Christian Paquin
8c33c81317 Treat Darwin as Linux 2020-06-20 20:58:05 -04:00
Christian Paquin
b52762428e asm optimization clean-ups 2020-06-19 17:37:39 -04:00
Christian Paquin
63b7621f46 Fixed AMD64 and ARM64 macro detection in sike files. 2020-06-19 16:07:55 -04:00
Christian Paquin
2deda2ce96 Added missing darwin detection in sike cmakefile 2020-06-19 15:50:42 -04:00
Christian Paquin
b2b9ca2f8b Fix cmake sike file on darwin to enable optimizations 2020-06-19 15:37:14 -04:00
Christian Paquin
8288420afb Enabled optimizations on macOS 2020-06-19 14:34:23 -04:00