public class SPHINCSPlusSigner extends java.lang.Object implements MessageSigner
This version is based on the 3rd submission with deference to the updated reference implementation on github as at November 9th 2021. This version includes the changes for the countermeasure for the long-message second preimage attack - see "https://github.com/sphincs/sphincsplus/commit/61cd2695c6f984b4f4d6ed675378ed9a486cbede" for further details.
Constructor and Description |
---|
SPHINCSPlusSigner()
Base constructor.
|
Modifier and Type | Method and Description |
---|---|
byte[] |
generateSignature(byte[] message)
sign the passed in message (usually the output of a hash function).
|
void |
init(boolean forSigning,
CipherParameters param)
initialise the signer for signature generation or signature
verification.
|
boolean |
verifySignature(byte[] message,
byte[] signature)
verify the message message against the signature value.
|
public void init(boolean forSigning, CipherParameters param)
MessageSigner
init
in interface MessageSigner
forSigning
- true if we are generating a signature, false
otherwise.param
- key parameters for signature generation.public byte[] generateSignature(byte[] message)
MessageSigner
generateSignature
in interface MessageSigner
message
- the message to be signed.public boolean verifySignature(byte[] message, byte[] signature)
MessageSigner
verifySignature
in interface MessageSigner
message
- the message that was supposed to have been signed.signature
- the signature of the message