Joost Rijneveld
7c6354f762
Rename parameters for readability and consistency
2017-10-24 17:51:56 +02:00
Joost Rijneveld
bbbb95e869
Fix erroneous index length for XMSSMT
...
This produced repeated indices when reaching 2^32 signatures.
This was introduced in 9b35b00d98
with the re-introduction of runtime parameters. Compile-time parameters
did not contain this error.
2017-10-24 17:40:21 +02:00
Joost Rijneveld
4111393912
Abstract address types into macro constants
2017-10-24 16:23:57 +02:00
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.
2017-10-24 16:23:51 +02:00
Joost Rijneveld
d794ae30ee
Deduplicate XMSS/XMSSMT key generation
2017-10-24 12:02:42 +02:00
Joost Rijneveld
d9a9723125
Combine auth path and keygen root functions
...
This greatly reduces the memory comsumption of the auth path
computation, since it now also uses treehash. It prevents
duplicate code by re-using the treehash function.
A downside is that it does also pick out the authentication path
during key generation (while it is not used), but this cost is
negligible.
2017-10-24 11:53:45 +02:00
Joost Rijneveld
a9fe0e43fe
Clean up key generation
2017-10-24 09:37:49 +02:00
Joost Rijneveld
270e6cd753
Reorder ull_to_bytes parameters to group output
2017-10-23 16:19:16 +02:00
Joost Rijneveld
305bd614bb
Perform various reformatting / renaming
2017-10-23 14:10:39 +02:00
Joost Rijneveld
f3bad4a272
Simplify licensing using LICENSE file
2017-10-19 17:38:34 +02:00
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.
2017-10-16 12:09:07 +02:00
Joost Rijneveld
9d5884e120
Refactor for more consistent style and readability
2017-08-03 17:39:37 +02:00
Joost Rijneveld
65ee8202d8
Refactor to prepare for runtime parameters
2017-08-01 16:18:09 +02:00