Commit Graph

850 Commits

Author SHA1 Message Date
Thom Wiggers
aa4611a4d1 Eliminate the global state
This PR sacrifices passing some extra arguments to get rid of the global
state.

* Haraka needs state in all hash calls, this results in changes to the
  hash functions specified in `hash.h`.  The extra pointers passed would
  not be necessary for SHA256 or SHAKE256.
* SHAKE256 did not have global state, but uniformity in the implementations
  requires us to pass  around the new state context anyway. Otherwise,
  @joostrijneveld's SPHINCS+ generator doesn't really work anymore).

We introduce a new header file called `primitive.h` which defines the
required state type for the generic functions. I did not go into
replacing _all_ occurrences of state variables by the new `hash_state`
macro.
2019-07-16 15:46:27 -04:00
Douglas Stebila
04a0dbfb72
Merge pull request #204 from PQClean/fix_travis_behaviour
Try to more reliably run the Travis PR path
2019-07-08 17:16:21 -04:00
Thom Wiggers
0d78cf8ea6
try to more reliably run the Travis PR path 2019-07-08 13:33:52 +02:00
Thom Wiggers
be941b28a8
Merge pull request #203 from PQClean/ds-sha3-512-finalize
Change sha3_512_inc_finalize output length to 64
2019-07-05 16:32:05 +02:00
Douglas Stebila
e53cf16fa8 Change sha3_512_inc_finalize output length to 64 2019-07-04 21:13:57 -04:00
Thom Wiggers
0ed5ba4a30
Merge pull request #192 from PQClean/saber
Add Saber
2019-07-04 15:53:57 +02:00
Matthias J. Kannwischer
756b550ceb add Saber LICENSE 2019-07-01 07:48:17 +02:00
Douglas Stebila
b8a243bf2d
Merge pull request #198 from PQClean/ds-aes-key-schedule
Add release function for AES key schedule
2019-06-27 14:43:32 -04:00
Douglas Stebila
f041450262 Trivial commit to trigger a rerun of all CI. 2019-06-26 09:58:05 -04:00
Douglas Stebila
f21a1b7e24 Document AES key schedule release
[skip ci]
2019-06-25 09:47:24 -04:00
Douglas Stebila
d7f745a0e6 Alternative no-op 2019-06-25 09:38:24 -04:00
Douglas Stebila
f62ba7ac85 Merge branch 'ds-aes-key-schedule' of github.com:PQClean/PQClean into ds-aes-key-schedule 2019-06-25 09:37:39 -04:00
Douglas Stebila
4157e0fbad Add release function for AES key schedule 2019-06-25 09:37:23 -04:00
Matthias J. Kannwischer
acde8afff2 Convert into a list for the Saber parameter sets 2019-06-24 09:18:58 +02:00
Matthias J. Kannwischer
515b04d87b fix warnings 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
931f466937 switch to the polymul from the submission 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
e543aea8ea add duplicate consistency checks for saber 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
8378132c5e clean up of comments and packing 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
61b36e933b remove wrong cast 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
cc94db88fa fix vs warning 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
6aafbd56f2 add firesaber 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
8539bd8684 add lightsaber 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
15a9e77b4c remove pre-processor conditionals 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
510a7baee8 move header guards to the top 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
a971a3188b Revert "temporarily disable pre-processor test"
This reverts commit def5bddb62098afe134ed30dbeb82f0c195968cc.
2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
ccfe87a4a3 refactoring to make vs more happy 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
03596d4705 another vs warning 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
ef0ad8e752 fix some vs warnings 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
31f9ee52ce add license 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
7883f8ce8c Make auxiliary-submitters optional. Saber does not have any 2019-06-24 09:14:24 +02:00
Matthias J. Kannwischer
f18e464a68 add Saber 2019-06-24 09:14:00 +02:00
Matthias J. Kannwischer
ca1add7baf temporarily disable pre-processor test 2019-06-24 09:12:40 +02:00
Matthias J. Kannwischer
5bdb9569e3
Merge pull request #195 from PQClean/fix_194
Convert `principal-submitter` into a list
2019-06-24 09:11:26 +02:00
Matthias J. Kannwischer
042d365e5c convert principal-submitter into a list in CONTRIBUTING.md 2019-06-23 16:17:00 +02:00
Thom Wiggers
4cea81d15f
Convert principal-submitter into a list
There are schemes, like SABER (#192) that have more than one principal
submitter. Consistency warrants that we turn it into a list for all
schemes and don't do something with allowing either a str or a list:
that would just be very annoying to parse.

Closes #194
2019-06-21 09:30:55 +02:00
Thom Wiggers
8a7e6ef81d
Merge pull request #196 from PQClean/fix_travis
Update OSX image
2019-06-21 09:28:32 +02:00
Douglas Stebila
82383c204e Add release function for AES key schedule 2019-06-20 21:07:03 -04:00
Thom Wiggers
82563c9b64
Cache homebrew 2019-06-20 11:15:15 +02:00
Thom Wiggers
3ca9cfe5cd
Update OSX image 2019-06-20 10:35:43 +02:00
Thom Wiggers
e7d936e24a
Merge pull request #186 from leonbotros/leda
LEDAcrypt KEM-LT
2019-06-17 18:33:02 +02:00
Leon
3c733b6691 resolve todo, remove asserts, add duplicate checks and make sure they pass 2019-06-17 14:03:59 +02:00
Leon
e5b9b13160 rename impl to leaktime 2019-06-16 17:01:29 +02:00
Leon
db99d3ec09 more msvc complaints 2019-06-14 16:07:31 +02:00
Leon
e353081cc2 fix msvc warnings 2019-06-14 15:04:30 +02:00
Leon
bf0aca644e avoid global state by including 2nd round threshold in secret key 2019-06-14 14:23:58 +02:00
Leon
5a4b7f24a3 (de)serialization instead of pointer casts 2019-06-12 15:33:20 +02:00
Matthias J. Kannwischer
33e1ed5d7d
Merge pull request #190 from PQClean/skip_sphincs_travis
Skip SPHINCS+ on Travis CI
2019-06-12 14:47:37 +02:00
Thom Wiggers
909808d6f0
Skip SPHINCS+ on Travis CI
We're running out of build limits.
2019-06-12 09:20:57 +02:00
Thom Wiggers
e4e10990dc
Merge pull request #188 from PQClean/dilithium
Polish Dilithium
2019-06-12 08:58:23 +02:00
Leon
6811a40527 move implementations of functions to .c files 2019-06-11 22:50:33 +02:00