| Modifier and Type | Field and Description |
|---|---|
| private byte[][] | AuthPath
stores the authentication path y_1(i), i = 0..H-1 |
| private GMSSDigestProvider | digestProvider
An array of strings containing the name of the hash function used to construct the authentication trees and used by the OTS. |
| private int | heightOfNextSeed
temporary integer that stores the height of the next treehash instance that gets initialized with a seed |
| private Vector | heightOfNodes
stores the height of all nodes laying on the tailStack |
| private int | heightOfTree
max height of the tree |
| private int[] | index
stores the index of the current node on each height of the tree |
| private int | indexForNextSeed
Integer that stores the index of the next seed that has to be omitted to the treehashs |
| private boolean | isFinished
true it instance was finished |
| private boolean | isInitialized
true if instance was already initialized, false otherwise |
| private int | K
the value K for the authentication path computation |
| private int | mdLength
length of the messageDigest |
| private Digest | messDigestTree
The hash function used for the construction of the authentication trees |
| private Vector | retain
stores the retain nodes for authPath computation |
| private byte[] | root
finally stores the root of the tree when finished |
| private Vector | tailStack
Vector element that stores the nodes on the stack |
| private Treehash[] | treehash
the treehash instances of the tree |
| Access | Constructor and Description |
|---|---|
| public | GMSSRootCalc(int
maximal height of the tree heightOfTree, int K, GMSSDigestProvider an array of strings, containing the name of the used hash
function and PRNG and the name of the corresponding
provider digestProvider)Constructor |
| Modifier and Type | Method and Description |
|---|---|
| public byte[][] | Returns: the authentication path of the first leaf of the treereturns the authentication path of the first leaf of the tree |
| public Vector | Returns: the retain stacks storing all right nodes near to the rootreturns the retain stacks storing all right nodes near to the root |
| public byte[] | |
| public Vector | |
| public byte[][] | Returns: The status bytesReturns the status byte array used by the GMSSPrivateKeyASN.1 class |
| public int[] | Returns: The status intsReturns the status int array used by the GMSSPrivateKeyASN.1 class |
| public Treehash[] | Returns: the initial treehash instances, storing value y_3(i)returns the initial treehash instances, storing value y_3(i) |
| public void | initialize(Vector<E>
the stack shared by all treehash instances of this tree sharedStack)Initializes the calculation of a new root |
| public void | initializeTreehashSeed(byte[]
the initial seed for treehash: seedNext seed, int the height of the treehash index)initializes the seeds for the treehashs of the tree precomputed by this class |
| public String | Returns: a human readable version of the structureOverrides java. |
| public void | update(byte[]
the initial seed for treehash: seedNext seed, byte[] the height of the treehash leaf)updates the root with one leaf and stores needed values in retain, treehash or authpath. |
| public void | update(byte[] leaf)
Updates the root with one leaf and stores the needed values in retain, treehash or authpath |
| public boolean | Returns: true if tree has reached its maximum heightMethod to check whether the instance has been finished or not |
| public boolean | Returns: true if treehash was already initializedMethod to check whether the instance has been initialized or not |
| AuthPath | back to summary |
|---|---|
| private byte[][] AuthPath stores the authentication path y_1(i), i = 0..H-1 | |
| digestProvider | back to summary |
|---|---|
| private GMSSDigestProvider digestProvider An array of strings containing the name of the hash function used to construct the authentication trees and used by the OTS. | |
| heightOfNextSeed | back to summary |
|---|---|
| private int heightOfNextSeed temporary integer that stores the height of the next treehash instance that gets initialized with a seed | |
| heightOfNodes | back to summary |
|---|---|
| private Vector<E> heightOfNodes stores the height of all nodes laying on the tailStack | |
| heightOfTree | back to summary |
|---|---|
| private int heightOfTree max height of the tree | |
| index | back to summary |
|---|---|
| private int[] index stores the index of the current node on each height of the tree | |
| indexForNextSeed | back to summary |
|---|---|
| private int indexForNextSeed Integer that stores the index of the next seed that has to be omitted to the treehashs | |
| isFinished | back to summary |
|---|---|
| private boolean isFinished true it instance was finished | |
| isInitialized | back to summary |
|---|---|
| private boolean isInitialized true if instance was already initialized, false otherwise | |
| K | back to summary |
|---|---|
| private int K the value K for the authentication path computation | |
| mdLength | back to summary |
|---|---|
| private int mdLength length of the messageDigest | |
| messDigestTree | back to summary |
|---|---|
| private Digest messDigestTree The hash function used for the construction of the authentication trees | |
| retain | back to summary |
|---|---|
| private Vector<E>[] retain stores the retain nodes for authPath computation | |
| root | back to summary |
|---|---|
| private byte[] root finally stores the root of the tree when finished | |
| tailStack | back to summary |
|---|---|
| private Vector<E> tailStack Vector element that stores the nodes on the stack | |
| treehash | back to summary |
|---|---|
| private Treehash[] treehash the treehash instances of the tree | |
| GMSSRootCalc | back to summary |
|---|---|
| public GMSSRootCalc(int heightOfTree, int K, GMSSDigestProvider digestProvider) Constructor
| |
| getAuthPath | back to summary |
|---|---|
| public byte[][] getAuthPath() returns the authentication path of the first leaf of the tree
| |
| getRetain | back to summary |
|---|---|
| public Vector returns the retain stacks storing all right nodes near to the root
| |
| getRoot | back to summary |
|---|---|
| public byte[] getRoot() returns the finished root value
| |
| getStack | back to summary |
|---|---|
| public Vector returns the shared stack
| |
| getStatByte | back to summary |
|---|---|
| public byte[][] getStatByte() Returns the status byte array used by the GMSSPrivateKeyASN.1 class
| |
| getStatInt | back to summary |
|---|---|
| public int[] getStatInt() Returns the status int array used by the GMSSPrivateKeyASN.1 class
| |
| getTreehash | back to summary |
|---|---|
| public Treehash[] getTreehash() returns the initial treehash instances, storing value y_3(i)
| |
| initialize | back to summary |
|---|---|
| public void initialize(Vector<E> sharedStack) Initializes the calculation of a new root
| |
| initializeTreehashSeed | back to summary |
|---|---|
| public void initializeTreehashSeed(byte[] seed, int index) initializes the seeds for the treehashs of the tree precomputed by this class
| |
| toString | back to summary |
|---|---|
| public String toString() Overrides java. Doc from java. Returns a string representation of the object.
| |
| update | back to summary |
|---|---|
| public void update(byte[] seed, byte[] leaf) updates the root with one leaf and stores needed values in retain, treehash or authpath. Additionally counts the seeds used. This method is used when performing the updates for TREE++.
| |
| update | back to summary |
|---|---|
| public void update(byte[] leaf) Updates the root with one leaf and stores the needed values in retain, treehash or authpath | |
| wasFinished | back to summary |
|---|---|
| public boolean wasFinished() Method to check whether the instance has been finished or not
| |
| wasInitialized | back to summary |
|---|---|
| public boolean wasInitialized() Method to check whether the instance has been initialized or not
| |