Commit Graph

858 Commits

Author SHA1 Message Date
Sebastian
33232a0343
HQC submission (#202)
* Sebastian's HQC merge request

* Clean up changes to common infrastructure

* Fix Bitmask macro

It assumed that ``unsigned long`` was 64 bit

* Remove maxlen from nistseedexpander

It's a complicated thing to handle because the value is larger than size_t supports on 32-bit platforms

* Initialize buffers to help linter

* Add Nistseedexpander test

* Resolve UB in gf2x.c

Some of the shifts could be larger than WORD_SIZE_BITS, ie. larger than
the width of uint64_t. This apparently on Intel gets interpreted as the
shift mod 64, but on ARM something else happened.

* Fix Windows complaints

* rename log, exp which appear to be existing functions on MS

* Solve endianness problems

* remove all spaces before ';'

* Fix duplicate consistency

* Fix duplicate consistency

* Fix complaints by MSVC about narrowing int

* Add nistseedexpander.obj to COMMON_OBJECTS_NOPATH

* astyle format util.[ch]

* add util.h to makefile

* Sort includes in util.h

* Fix more Windows MSVC complaints

Co-authored-by: Sebastian Verschoor <sebastian@zeroknowledge.me>
Co-authored-by: Thom Wiggers <thom@thomwiggers.nl>
2020-04-01 13:57:21 +08:00
mergify[bot]
1b163987bd
Merge pull request #278 from PQClean/fix_ub
Clean up undefined behaviour
2020-03-28 15:47:03 +00:00
mergify[bot]
da46a96aca
Merge branch 'master' into fix_ub 2020-03-27 23:13:26 +00:00
Thom Wiggers
b380047d75
Merge pull request #282 from baentsch/Wshadow
Wshadow at Dilithium/avx2
2020-03-27 12:09:27 +01:00
Michael Baentsch
56d0f2df6e Wshadow at Dilithium/avx2 2020-03-27 07:24:29 +01:00
mergify[bot]
bfbf99eb76
Merge pull request #280 from PQClean/ds-falcon-type-punning
Avoid type-punning warning in Falcon when strict-aliasing turned on
2020-03-14 20:23:46 +00:00
mergify[bot]
57265306de
Merge branch 'master' into ds-falcon-type-punning 2020-03-14 09:51:06 +00:00
mergify[bot]
36283693d2
Merge pull request #270 from PQClean/fix_newhope
Fix NewHope CCA verify function
2020-03-14 04:52:05 +00:00
Douglas Stebila
b50dbbf544 Trigger build 2020-03-13 17:06:45 -04:00
Douglas Stebila
20aa6ea3dc Change formatting
[skip ci]
2020-03-13 17:05:29 -04:00
Douglas Stebila
d0d53ab52a Avoid type-punning error when strict-aliasing turned on 2020-03-13 17:00:32 -04:00
Thom Wiggers
35e4b0faa1
fixup! Fix uint8_t to uint16_t upcast in Frodo 2020-03-13 16:30:01 -04:00
mergify[bot]
dfb12bb3e3
Merge branch 'master' into fix_newhope 2020-03-13 20:16:35 +00:00
Thom Wiggers
d7b739af13
Clean up README and CONTRIBUTING (#273)
* Clean up the docs a bit

* Document that qemu-user-static needs Linux
2020-03-13 16:15:12 -04:00
Thom Wiggers
5436ec0476
Fix uint8_t to uint16_t upcast in Frodo 2020-03-13 15:58:15 -04:00
Thom Wiggers
74bc3e74e1
Fix UB in qTESLA
Lots of shifts left of signed integers
2020-03-13 15:02:24 -04:00
Thom Wiggers
f9c4c34a8f
fixup! Run sanitizers after running AMD64 tests 2020-03-13 13:30:50 -04:00
Thom Wiggers
85de23bdfe
Fix too-large shift in mceliece*f 2020-03-13 13:27:02 -04:00
Thom Wiggers
5aeccdb747
fixup! Run sanitizers after running AMD64 tests 2020-03-13 13:15:17 -04:00
Thom Wiggers
76bac3c2b2
Run sanitizers after running AMD64 tests 2020-03-13 13:10:36 -04:00
Thom Wiggers
ef38541c6e
Clean up SABER 2020-03-13 13:00:57 -04:00
Thom Wiggers
bc86182b93
Fix overflowing mults in NTRUHRSS701 2020-03-09 18:02:44 -04:00
Thom Wiggers
39fa1ccfc7
Fix reduce.c's overflowing multiplication 2020-03-09 17:57:43 -04:00
Thom Wiggers
9b06aedefe
Make sure tests respond to undefined behaviour 2020-03-09 17:54:33 -04:00
Matthias J. Kannwischer
85c6605bbf
fix MSVS warning 2020-03-09 15:45:20 -04:00
Matthias J. Kannwischer
de5cda4d7b
Fix NewHope verify
https://github.com/mupq/pqm4/issues/132 repoorted that the NewHope verify function does not actually return 0 or 1, but 0 or -1, which consequenctly breaks the cmov in the FO transform.
This bug was introduced when I integrated this into PQClean.
2020-03-09 15:45:19 -04:00
mergify[bot]
9023fef558
Merge pull request #275 from PQClean/fix-remaining-leaks
Fix remaining memory leaks
2020-03-04 03:11:09 +00:00
Thom Wiggers
8c2f5994b9
Fix duplicate consistency 2020-03-03 10:15:57 -05:00
Thom Wiggers
2b267defdb
Enable leak check in Valgrind 2020-03-03 10:15:56 -05:00
Thom Wiggers
fe4e12308b
Fix memory leaks in LEDAkem 2020-03-03 10:15:56 -05:00
Thom Wiggers
81caa58b57
Fix memory leaks in NewHope 2020-03-03 10:15:56 -05:00
Thom Wiggers
9a4e9da47e
Fix FIPS202 API memory leaks in Dilithium 2020-03-03 10:15:56 -05:00
Thom Wiggers
0564c906f7
Force running brew update
This will add ~5m to the build time, but Travis CI SUCK at keeping their tools up to date...
2020-03-03 10:07:38 -05:00
Thom Wiggers
9b41a86f8e
Update Travis CI to XCode 11.3 2020-03-03 10:06:21 -05:00
Thom Wiggers
07f96fa057
Merge pull request #274 from PQClean/fix_detecting_changes
Fix detecting of to-be-tested changes on Windows
2020-02-19 15:05:35 -05:00
Thom Wiggers
acf7760f4d
Fix detecting of to-be-tested changes on Windows 2020-02-19 11:53:14 -05:00
Thom Wiggers
f13961dbfc
Merge pull request #272 from PQClean/kyber-fix-leak
Fix memory leak in Kyber
2020-02-17 11:02:07 +01:00
Douglas Stebila
b4de294f68 Fix memory leak in Kyber 2020-02-16 14:55:19 -05:00
Thom Wiggers
bbad7871d2
Fix SHAKE256 memory leak in Dilithium (#271) 2020-02-16 10:18:05 -05:00
mergify[bot]
6de728361e
Merge pull request #265 from PQClean/functest_keys_on_heap
Move keys in crypto_sign/functest.c to the heap
2020-02-12 11:53:29 +00:00
mergify[bot]
b2bdf88091
Merge branch 'master' into functest_keys_on_heap 2020-02-12 01:36:23 +00:00
Thom Wiggers
1a4739e2bf
Move keys to heap for KEMs as well 2020-02-11 12:23:06 +01:00
Thom Wiggers
65a6a63e08
Put all common primitives on the heap (#266)
* Put AES ctx on the heap

This forces people to use the ``ctx_release`` functions, because otherwise there will be leaks

* Put fips202 on the heap

* Add much more docs for fips202.h

* fixup! Put fips202 on the heap

* Put SHA2 on the heap-supporting API

* Fix clang-tidy warnings

* Fix unreachable free() in falcon

* Fix McEliece8192128f-sse GNU Makefile
2020-02-11 11:15:14 +01:00
Thom Wiggers
8a6f612605
Merge pull request #268 from PQClean/fix-mceliece8192128f-sse-makefile
Fix McEliece8192128f makefile
2020-02-11 09:18:25 +01:00
Thom Wiggers
7862f7faae
Fix McEliece8192128f makefile 2020-02-11 09:17:55 +01:00
Thom Wiggers
53d50fd751
Fix alignment problems with vectors in McEliece AVX2 and fix McEliece 8192128f (#267)
* Fix alignment problems with vectors

* Fix required CPU flags for McEliece

* Fix McElice8192128f that was missed in #259

* fixup! Fix McElice8192128f that was missed in #259

* Fix initialization
2020-02-07 11:13:59 +01:00
Thom Wiggers
b3f9d4f8d6
Classic McEliece (#259)
* Add McEliece reference implementations

* Add Vec implementations of McEliece

* Add sse implementations

* Add AVX2 implementations

* Get rid of stuff not supported by Mac ABI

* restrict to two cores

* Ditch .data files

* Remove .hidden from all .S files

* speed up duplicate consistency tests by batching

* make cpuinfo more robust

* Hope to stabilize macos cpuinfo without ccache

* Revert "Hope to stabilize macos cpuinfo without ccache"

This reverts commit 6129c3cabe1abbc8b956bc87e902a698e32bf322.

* Just hardcode what's available at travis

* Fixed-size types in api.h

* namespace all header files in mceliece

* Ditch operations.h

* Get rid of static inline functions

* fixup! Ditch operations.h
2020-02-05 13:09:56 +01:00
Thom Wiggers
8ffb087545
Move keys in crypto_sign/functest.c to the heap
Having the keys on the stack increases the stack space consumption by
quite a bit, and this in turn results in the sanitizer tests failing
for Rainbow.

Moving the keys to the heap in the test seems like a harmless change.
2020-02-05 12:38:08 +01:00
mergify[bot]
7729c76b3e
Merge pull request #263 from PQClean/fix-clang-builds-to-use-clang
Fix clang builds to actually use clang
2020-01-23 03:11:50 +00:00
mergify[bot]
e45513adf9
Merge branch 'master' into fix-clang-builds-to-use-clang 2020-01-22 15:38:18 +00:00