Joost Rijneveld
2e96b03106
Clean up and simplify hash function definitions
7 lat temu
Joost Rijneveld
384b228c58
Support messages that exceed the stack size
Previous code allocated an array on the stack of mlen bytes, but
it should be possible to also sign heap-space messages. By relying
on the fact that sm and m fit the message + signature, we move
the message so that 4*n bytes of prefix can be added.
7 lat temu
Joost Rijneveld
f5d53b252e
Fix failing verification test formatting
7 lat temu
Joost Rijneveld
94a92ed2b1
Make XMSS sign/open functions instances of XMSSMT
This removes a lot of code duplication.
7 lat temu
Joost Rijneveld
7c6354f762
Rename parameters for readability and consistency
7 lat temu
Joost Rijneveld
4111393912
Abstract address types into macro constants
7 lat temu
Joost Rijneveld
ae49c04807
Clean up signing functions
As a result, performs various refactors that also impact the verification
function, since cleaner signing functions exposed more overlap.
7 lat temu
Joost Rijneveld
270e6cd753
Reorder ull_to_bytes parameters to group output
7 lat temu
Joost Rijneveld
305bd614bb
Perform various reformatting / renaming
7 lat temu
Joost Rijneveld
f3bad4a272
Simplify licensing using LICENSE file
7 lat temu
Joost Rijneveld
6a8571d880
Revert to using runtime-only parameter struct
Using global defines for parameters (as seems to be typical in
academic crypto code) does not play nice with multithreading at all.
7 lat temu
Joost Rijneveld
9d5884e120
Refactor for more consistent style and readability
7 lat temu
Joost Rijneveld
65ee8202d8
Refactor to prepare for runtime parameters
7 lat temu
Joost Rijneveld
8befb0d550
Add SHAKE128 and SHAKE256
This also performs numerous consistency fixes
7 lat temu
Joost Rijneveld
5122ac6f73
Reduce code duplication
A large number of functions was repeated in xmss_fast; these are now
shared between the two implementations via the xmss_commons file.
Notably, we ensure compatability by sharing the verification functions.
7 lat temu
Andreas
9f512fa8dc
v06
8 lat temu
Andreas
2c290d39be
upgraded to draft-06
8 lat temu
Andreas
2b73688b7c
fixed endianess for toByte and base_w
8 lat temu
Andreas
c37b9dcfca
SWITCH from v01 to v03
Versions are incompatible due to different address formats and differing message compression!
8 lat temu
Andreas
622a9513b1
local changes
8 lat temu
Joost Rijneveld
1e503b665e
Make codestyle more consistent, fix -Wextra warns
8 lat temu
Joost Rijneveld
71da95c8b4
Change 'uint' to standard 'unsigned int'
9 lat temu
Andreas
d80a463e53
added copyright notes for publishing. Removed unused file.
9 lat temu
Andreas
1826fb26ff
Initial commit
9 lat temu