Class GMSSPrivateKeyParameters
java.lang.Object
org.bouncycastle.crypto.params.AsymmetricKeyParameter
org.bouncycastle.pqc.legacy.crypto.gmss.GMSSKeyParameters
org.bouncycastle.pqc.legacy.crypto.gmss.GMSSPrivateKeyParameters
- All Implemented Interfaces:
CipherParameters
This class provides a specification for a GMSS private key.
-
Constructor Summary
ConstructorsConstructorDescriptionGMSSPrivateKeyParameters(byte[][] currentSeed, byte[][] nextNextSeed, byte[][][] currentAuthPath, byte[][][] nextAuthPath, Treehash[][] currentTreehash, Treehash[][] nextTreehash, Vector[] currentStack, Vector[] nextStack, Vector[][] currentRetain, Vector[][] nextRetain, byte[][] nextRoot, byte[][] currentRootSig, GMSSParameters gmssParameterset, GMSSDigestProvider digestProvider) Generates a new GMSS private keyGMSSPrivateKeyParameters(int[] index, byte[][] currentSeeds, byte[][] nextNextSeeds, byte[][][] currentAuthPaths, byte[][][] nextAuthPaths, byte[][][] keep, Treehash[][] currentTreehash, Treehash[][] nextTreehash, Vector[] currentStack, Vector[] nextStack, Vector[][] currentRetain, Vector[][] nextRetain, GMSSLeaf[] nextNextLeaf, GMSSLeaf[] upperLeaf, GMSSLeaf[] upperTreehashLeaf, int[] minTreehash, byte[][] nextRoot, GMSSRootCalc[] nextNextRoot, byte[][] currentRootSig, GMSSRootSig[] nextRootSig, GMSSParameters gmssParameterset, GMSSDigestProvider digestProvider) /** -
Method Summary
Modifier and TypeMethodDescriptionbyte[][][]byte[][]int[]getIndex()intgetIndex(int i) getName()intgetNumLeafs(int i) byte[]getSubtreeRootSig(int i) booleanisUsed()voidmarkUsed()nextKey()Methods inherited from class org.bouncycastle.pqc.legacy.crypto.gmss.GMSSKeyParameters
getParametersMethods inherited from class org.bouncycastle.crypto.params.AsymmetricKeyParameter
isPrivate
-
Constructor Details
-
GMSSPrivateKeyParameters
public GMSSPrivateKeyParameters(byte[][] currentSeed, byte[][] nextNextSeed, byte[][][] currentAuthPath, byte[][][] nextAuthPath, Treehash[][] currentTreehash, Treehash[][] nextTreehash, Vector[] currentStack, Vector[] nextStack, Vector[][] currentRetain, Vector[][] nextRetain, byte[][] nextRoot, byte[][] currentRootSig, GMSSParameters gmssParameterset, GMSSDigestProvider digestProvider) Generates a new GMSS private key- Parameters:
currentSeed- seed for the generation of private OTS keys for the current subtreesnextNextSeed- seed for the generation of private OTS keys for the next subtreescurrentAuthPath- array of current authentication pathsnextAuthPath- array of next authentication pathscurrentTreehash- array of current treehash instancesnextTreehash- array of next treehash instancescurrentStack- array of current shared stacksnextStack- array of next shared stackscurrentRetain- array of current retain stacksnextRetain- array of next retain stacksnextRoot- the roots of the next subtreecurrentRootSig- array of signatures of the roots of the current subtreesgmssParameterset- the GMSS Parameterset- See Also:
-
GMSSPrivateKeyParameters
public GMSSPrivateKeyParameters(int[] index, byte[][] currentSeeds, byte[][] nextNextSeeds, byte[][][] currentAuthPaths, byte[][][] nextAuthPaths, byte[][][] keep, Treehash[][] currentTreehash, Treehash[][] nextTreehash, Vector[] currentStack, Vector[] nextStack, Vector[][] currentRetain, Vector[][] nextRetain, GMSSLeaf[] nextNextLeaf, GMSSLeaf[] upperLeaf, GMSSLeaf[] upperTreehashLeaf, int[] minTreehash, byte[][] nextRoot, GMSSRootCalc[] nextNextRoot, byte[][] currentRootSig, GMSSRootSig[] nextRootSig, GMSSParameters gmssParameterset, GMSSDigestProvider digestProvider) /**- Parameters:
index- tree indiceskeep- keep array for the authPath algorithmcurrentTreehash- treehash for authPath algorithm of current treenextTreehash- treehash for authPath algorithm of next tree (TREE+)currentStack- shared stack for authPath algorithm of current treenextStack- shared stack for authPath algorithm of next tree (TREE+)currentRetain- retain stack for authPath algorithm of current treenextRetain- retain stack for authPath algorithm of next tree (TREE+)nextNextLeaf- array of upcoming leafs of the tree after next (LEAF++) of each layerupperLeaf- needed for precomputation of upper nodesupperTreehashLeaf- needed for precomputation of upper treehash nodesminTreehash- index of next treehash instance to receive an updatenextRoot- the roots of the next trees (ROOT+)nextNextRoot- the roots of the tree after next (ROOT++)currentRootSig- array of signatures of the roots of the current subtrees (SIG)nextRootSig- array of signatures of the roots of the next subtree (SIG+)gmssParameterset- the GMSS Parameterset
-
-
Method Details
-
isUsed
public boolean isUsed() -
markUsed
public void markUsed() -
nextKey
-
getIndex
public int[] getIndex() -
getIndex
public int getIndex(int i) - Returns:
- The current index of layer i
-
getCurrentSeeds
public byte[][] getCurrentSeeds() -
getCurrentAuthPaths
public byte[][][] getCurrentAuthPaths() -
getSubtreeRootSig
public byte[] getSubtreeRootSig(int i) - Returns:
- The one-time signature of the root of the current subtree
-
getName
-
getNumLeafs
public int getNumLeafs(int i) - Returns:
- The number of leafs of each tree of layer i
-