Class LMSPrivateKeyParameters

    • Constructor Detail

      • LMSPrivateKeyParameters

        public LMSPrivateKeyParameters​(LMSigParameters lmsParameter,
                                       LMOtsParameters otsParameters,
                                       int q,
                                       byte[] I,
                                       int maxQ,
                                       byte[] masterSecret)
    • Method Detail

      • getInstance

        public static LMSPrivateKeyParameters getInstance​(byte[] privEnc,
                                                          byte[] pubEnc)
                                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • getInstance

        public static LMSPrivateKeyParameters getInstance​(java.lang.Object src)
                                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • getIndex

        public int getIndex()
        Return the key index (the q value).
        Returns:
        private key index number.
      • extractKeyShard

        public LMSPrivateKeyParameters extractKeyShard​(int usageCount)
        Return a key that can be used usageCount times.

        Note: this will use the range [index...index + usageCount) for the current key.

        Parameters:
        usageCount - the number of usages the key should have.
        Returns:
        a key based on the current key that can be used usageCount times.
      • getI

        public byte[] getI()
      • getMasterSecret

        public byte[] getMasterSecret()
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • getEncoded

        public byte[] getEncoded()
                          throws java.io.IOException
        Description copied from interface: Encodable
        Return a byte array representing the implementing object.
        Specified by:
        getEncoded in interface Encodable
        Specified by:
        getEncoded in class LMSKeyParameters
        Returns:
        a byte array representing the encoding.
        Throws:
        java.io.IOException - if an issue arises generation the encoding.