Class QTESLA


  • public class QTESLA
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      QTESLA()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static int generateKeyPairI​(byte[] publicKey, byte[] privateKey, java.security.SecureRandom secureRandom)
      Description: Generates A Pair of Public Key and Private Key for qTESLA Signature Scheme for Heuristic qTESLA Security Category-1
      static int generateKeyPairIIIP​(byte[] publicKey, byte[] privateKey, java.security.SecureRandom secureRandom)
      Description: Generates A Pair of Public Key and Private Key for qTESLA Signature Scheme for Provably-Secure qTESLA Security Category-3
      static int generateKeyPairIIISize​(byte[] publicKey, byte[] privateKey, java.security.SecureRandom secureRandom)
      Description: Generates A Pair of Public Key and Private Key for qTESLA Signature Scheme for Heuristic qTESLA Security Category-3 (Option for Size)
      static int generateKeyPairIIISpeed​(byte[] publicKey, byte[] privateKey, java.security.SecureRandom secureRandom)
      Description: Generates A Pair of Public Key and Private Key for qTESLA Signature Scheme for Heuristic qTESLA Security Category-3 (Option for Speed)
      static int generateKeyPairIP​(byte[] publicKey, byte[] privateKey, java.security.SecureRandom secureRandom)
      Description: Generates A Pair of Public Key and Private Key for qTESLA Signature Scheme for Provably-Secure qTESLA Security Category-1
      static int signingIIIP​(byte[] signature, byte[] message, int messageOffset, int messageLength, byte[] privateKey, java.security.SecureRandom secureRandom)
      Description: Generates A Signature for A Given Message According to the Ring-TESLA Signature Scheme for Provably-Secure qTESLA Security Category-3
      static int signingIP​(byte[] signature, byte[] message, int messageOffset, int messageLength, byte[] privateKey, java.security.SecureRandom secureRandom)
      Description: Generates A Signature for A Given Message According to the Ring-TESLA Signature Scheme for Provably-Secure qTESLA Security Category-1
      • Methods inherited from class java.lang.Object

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

      • QTESLA

        public QTESLA()
    • Method Detail

      • generateKeyPairI

        public static int generateKeyPairI​(byte[] publicKey,
                                           byte[] privateKey,
                                           java.security.SecureRandom secureRandom)
        Description: Generates A Pair of Public Key and Private Key for qTESLA Signature Scheme for Heuristic qTESLA Security Category-1
        Parameters:
        publicKey - Contains Public Key
        privateKey - Contains Private Key
        secureRandom - Source of Randomness
        Returns:
        0 Successful Execution
      • generateKeyPairIIISize

        public static int generateKeyPairIIISize​(byte[] publicKey,
                                                 byte[] privateKey,
                                                 java.security.SecureRandom secureRandom)
        Description: Generates A Pair of Public Key and Private Key for qTESLA Signature Scheme for Heuristic qTESLA Security Category-3 (Option for Size)
        Parameters:
        publicKey - Contains Public Key
        privateKey - Contains Private Key
        secureRandom - Source of Randomness
        Returns:
        0 Successful Execution
      • generateKeyPairIIISpeed

        public static int generateKeyPairIIISpeed​(byte[] publicKey,
                                                  byte[] privateKey,
                                                  java.security.SecureRandom secureRandom)
        Description: Generates A Pair of Public Key and Private Key for qTESLA Signature Scheme for Heuristic qTESLA Security Category-3 (Option for Speed)
        Parameters:
        publicKey - Contains Public Key
        privateKey - Contains Private Key
        secureRandom - Source of Randomness
        Returns:
        0 Successful Execution
      • generateKeyPairIP

        public static int generateKeyPairIP​(byte[] publicKey,
                                            byte[] privateKey,
                                            java.security.SecureRandom secureRandom)
        Description: Generates A Pair of Public Key and Private Key for qTESLA Signature Scheme for Provably-Secure qTESLA Security Category-1
        Parameters:
        publicKey - Contains Public Key
        privateKey - Contains Private Key
        secureRandom - Source of Randomness
        Returns:
        0 Successful Execution
      • generateKeyPairIIIP

        public static int generateKeyPairIIIP​(byte[] publicKey,
                                              byte[] privateKey,
                                              java.security.SecureRandom secureRandom)
        Description: Generates A Pair of Public Key and Private Key for qTESLA Signature Scheme for Provably-Secure qTESLA Security Category-3
        Parameters:
        publicKey - Contains Public Key
        privateKey - Contains Private Key
        secureRandom - Source of Randomness
        Returns:
        0 Successful Execution
      • signingIP

        public static int signingIP​(byte[] signature,
                                    byte[] message,
                                    int messageOffset,
                                    int messageLength,
                                    byte[] privateKey,
                                    java.security.SecureRandom secureRandom)
        Description: Generates A Signature for A Given Message According to the Ring-TESLA Signature Scheme for Provably-Secure qTESLA Security Category-1
        Parameters:
        message - Message to be Signed
        messageOffset - Starting Point of the Message to be Signed
        messageLength - Length of the Message to be Signed
        signature - Output Package Containing Signature
        privateKey - Private Key
        secureRandom - Source of Randomness
        Returns:
        0 Successful Execution
      • signingIIIP

        public static int signingIIIP​(byte[] signature,
                                      byte[] message,
                                      int messageOffset,
                                      int messageLength,
                                      byte[] privateKey,
                                      java.security.SecureRandom secureRandom)
        Description: Generates A Signature for A Given Message According to the Ring-TESLA Signature Scheme for Provably-Secure qTESLA Security Category-3
        Parameters:
        message - Message to be Signed
        messageOffset - Starting Point of the Message to be Signed
        messageLength - Length of the Message to be Signed
        signature - Output Package Containing Signature
        privateKey - Private Key
        secureRandom - Source of Randomness
        Returns:
        0 Successful Execution