Class SDitHSigner

  • All Implemented Interfaces:
    MessageSigner

    public class SDitHSigner
    extends java.lang.Object
    implements MessageSigner
    SDitH (Syndrome-Decoding-in-the-Head) signer for the Hypercube variant.

    Implements MessageSigner (one-shot whole-message signing) — the signature scheme hashes the message inside the protocol so there is no benefit to a streaming Signer API. Returned signatures are the raw SDitH signature bytes (the reference KAT generator appends the message itself; that concatenation is left to the caller / a JCA wrapper).

    • Constructor Summary

      Constructors 
      Constructor Description
      SDitHSigner()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method 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.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SDitHSigner

        public SDitHSigner()
    • Method Detail

      • init

        public void init​(boolean forSigning,
                         CipherParameters param)
        Description copied from interface: MessageSigner
        initialise the signer for signature generation or signature verification.
        Specified by:
        init in interface MessageSigner
        Parameters:
        forSigning - true if we are generating a signature, false otherwise.
        param - key parameters for signature generation.
      • generateSignature

        public byte[] generateSignature​(byte[] message)
        Description copied from interface: MessageSigner
        sign the passed in message (usually the output of a hash function).
        Specified by:
        generateSignature in interface MessageSigner
        Parameters:
        message - the message to be signed.
        Returns:
        the signature of the message
      • verifySignature

        public boolean verifySignature​(byte[] message,
                                       byte[] signature)
        Description copied from interface: MessageSigner
        verify the message message against the signature value.
        Specified by:
        verifySignature in interface MessageSigner
        Parameters:
        message - the message that was supposed to have been signed.
        signature - the signature of the message