You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Joost Rijneveld 06281e057d
Merge pull request #4 from jamathews/master
преди 6 години
test Add test to check existence of parameter sets преди 6 години
ui Fix OID parsing преди 6 години
.gitignore Clean up tests преди 7 години
.travis.yml Add TravisCI configuration преди 7 години
LICENSE Simplify licensing using LICENSE file преди 7 години
Makefile Add test to check existence of parameter sets преди 6 години
README.md Add TravisCI badge преди 7 години
fips202.c Clean up includes преди 7 години
fips202.h Perform various reformatting / renaming преди 7 години
hash.c Fix prf when n != 32 преди 7 години
hash.h Rename hash functions to tweaked hashes преди 7 години
hash_address.c Make addr type switching not zero out remainder преди 7 години
hash_address.h Rename parameters for readability and consistency преди 7 години
params.c Update IANA numeric identifiers to match Draft v12 преди 6 години
params.h Fix pointer type codestyle inconsistency преди 6 години
randombytes.c Refactor for more consistent style and readability преди 7 години
randombytes.h Perform various reformatting / renaming преди 7 години
utils.c Move ull-byte-conversions to separate utils file преди 7 години
utils.h Move ull-byte-conversions to separate utils file преди 7 години
wots.c Rename hash functions to tweaked hashes преди 7 години
wots.h Fix typo in WOTS comments: n-byte messages, not m преди 7 години
xmss.c Store OID in bigendian notation in pk and sk преди 6 години
xmss.h Perform various reformatting / renaming преди 7 години
xmss_commons.c More explicitly label pk parts in verification преди 6 години
xmss_commons.h Do not expose l_tree function преди 6 години
xmss_core.c Fix typo in comments leaving root out of sk преди 7 години
xmss_core.h Fix typo in comments leaving root out of sk преди 7 години
xmss_core_fast.c Fix pointer type codestyle inconsistency преди 6 години

README.md

XMSS reference code Build Status

This repository contains the reference implementation that accompanies the Internet Draft “XMSS: Extended Hash-Based Signatures”, draft-irtf-cfrg-xmss-hash-based-signatures.

This reference implementation supports all parameter sets as defined in the Draft 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.