Submission to NIST's Post-Quantum Cryptography Project, structured as per http://csrc.nist.gov/groups/ST/post-quantum-crypto/submission-requirements/digital-optical-media.html.
Gravity-SPHINCS is a stateless hash-based signature scheme designed by Jean-Philippe Aumasson and Guillaume Endignoux while working in Kudelski Security's research team.
Content of this submission package
Supporting_Documentation/submission.pdf: Reference documentation of Gravity-SPHINCS, include specification, security analysis, performance analysis.
Supporting_Documentation/latex_source/: LaTeX source of the reference documentation.
Supporting_Documentation/master_thesis_endignoux_guillaume.pdf: Masters thesis of Guillaume Endignoux, containing detailed analyses related to Gravity-SPHINCS' security.
Supporting_Documentation/parameters.py: Python script to compute the security of a Gravity-SPHINCS instance given a set of parameters.
Reference_Implementation/: Our reference C89 implementation, without AES-NI nor SIMD instructions.
Additional_Implementations/fast: Our fast C89 implementation, with AES-NI and SIMD instructions.
Additional_Implementations/debug: A version of the reference implementation that prints intermediate values. This directory includes intermediate values files for each of the three Gravity-SPHINCS versions.
$ make Please choose a target: analyze runs static analyzers bench runs speed benchmarks clean cleans up format formats the code using .clang-format rules
KAT/: Includes NIST's s PQCgenKAT_sign.c, rng.c, and [rnc.h], as well as a Makefile that we created to generate the files PQCsignKAT_64.req and PQCsignKAT_64.rsp required by NIST, using our fast implementation in Reference_Implementation/.
KAT/PQCsignKAT_all.req: .req KAT file generated by running
make, same for all Gravity-SPHINCS versions.
Copyright notices are included in the header of each source code file. Our original source code of Gravity-SPHINCS is copyright © 2017 Nagravision S.A., and was written by Jean-Philippe Aumasson and Guillaume Endignoux.
The fast, AES-NI-based Haraka implementation is copyright © 2016 Stefan Kölbl.
Our source code is released under Apache 2.0 license.
Patent situation: We haven't filed any patent related to Gravity-SPHINCS nor are we aware of existing patent or patent application covering Gravity-SPHINCS.
Thanks to Samuel Neves for helping optimize our code.