Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
Joost Rijneveld 49f72fd1a7
Update README to point to RFC
pirms 5 gadiem
test Prevent overrunning stack for large benchmarks pirms 6 gadiem
ui Fix OID parsing pirms 6 gadiem
.gitignore Clean up tests pirms 7 gadiem
.travis.yml Add TravisCI configuration pirms 7 gadiem
LICENSE Simplify licensing using LICENSE file pirms 7 gadiem
Makefile Add benchmarking binary/target pirms 6 gadiem
README.md Update README to point to RFC pirms 5 gadiem
fips202.c Clean up includes pirms 7 gadiem
fips202.h Perform various reformatting / renaming pirms 7 gadiem
hash.c Fix prf when n != 32 pirms 7 gadiem
hash.h Rename hash functions to tweaked hashes pirms 7 gadiem
hash_address.c Make addr type switching not zero out remainder pirms 7 gadiem
hash_address.h Rename parameters for readability and consistency pirms 7 gadiem
params.c Allow more flexible parameter selection pirms 6 gadiem
params.h Allow more flexible parameter selection pirms 6 gadiem
randombytes.c Refactor for more consistent style and readability pirms 7 gadiem
randombytes.h Perform various reformatting / renaming pirms 7 gadiem
utils.c Move ull-byte-conversions to separate utils file pirms 7 gadiem
utils.h Move ull-byte-conversions to separate utils file pirms 7 gadiem
wots.c Rename hash functions to tweaked hashes pirms 7 gadiem
wots.h Fix typo in WOTS comments: n-byte messages, not m pirms 7 gadiem
xmss.c Store OID in bigendian notation in pk and sk pirms 6 gadiem
xmss.h Perform various reformatting / renaming pirms 7 gadiem
xmss_commons.c More explicitly label pk parts in verification pirms 7 gadiem
xmss_commons.h Do not expose l_tree function pirms 7 gadiem
xmss_core.c Change order of SK elements to match RFC pirms 6 gadiem
xmss_core.h Allow more flexible parameter selection pirms 6 gadiem
xmss_core_fast.c Change order of SK elements to match RFC pirms 6 gadiem

README.md

XMSS reference code Build Status

This repository contains the reference implementation that accompanies RFC 8391: “XMSS: eXtended Merkle Signature Scheme”.

This reference implementation supports all parameter sets as defined in the RFC at run-time (specified by prefixing the public and private keys with a 32-bit oid). Implementations that want to use compile-time parameter sets can remove the struct xmss_params function parameter.

When using the current code base, please be careful, expect changes and watch this document for further documentation. In particular, xmss_core_fast.c is long due for a serious clean-up. While this will not change its public API or output, it may affect the storage format of the BDS state (i.e. part of the secret key).

Dependencies

For the SHA-2 hash functions (i.e. SHA-256 and SHA-512), we rely on OpenSSL. Make sure to install the OpenSSL development headers. On Debian-based systems, this is achieved by installing the OpenSSL development package libssl-dev.

License

This reference implementation was written by Andreas Hülsing and Joost Rijneveld. All included code is available under the CC0 1.0 Universal Public Domain Dedication.