AH
ahf/sphincs
Erlang NIF for SPHINCS-256: practical stateless hash-based signatures.
SPHINCS-256 NIF for Erlang
Version: 1.0.0 (SUPERCOP: 20160910)
Authors: Alexander Færøy (ahf@0x90.dk).
SPHINCS-256 is a high-security post-quantum stateless hash-based signature
scheme. This repository contains the SPHINCS-256 implementation found in the
SUPERCOP performance suite together with an Erlang NIF's for the SPHINCS API.
SPHINCS-256 uses 41 KB signatures, 1 KB public keys, and 1 KB private keys.
For more information about SPHINCS see:
Example Usage
- Alice generates a new keypair and sends her public key to Bob.
{ok, #{ secret := Secret, public := Public }} = sphincs:keypair().- Alice signs a document and sends it to Bob.
SignedDocument = sphincs:sign(Document, Secret).- Bob verifies the signed document from Alice.
sphincs:verify(SignedDocument, Public).Issues
-
It's currently only the
refimplementation of BLAKE-256,
BLAKE-512, ChaCha12 and SPHINCS-256 that have been tested. It would be nice
to have vectorized versions for higher performance. -
The Erlang bindings of sphincs could use some tests :-)
Modules
| sphincs |
On this page
Languages
C78.8%C++9.8%Erlang8.1%Makefile3.3%
Contributors
Created January 10, 2016
Updated November 8, 2024