de.flexiprovider.pqc.rainbow
Class RainbowParameterSpec
java.lang.Object
|
+--de.flexiprovider.pqc.rainbow.RainbowParameterSpec
- All Implemented Interfaces:
- AlgorithmParameterSpec, java.security.spec.AlgorithmParameterSpec
- public class RainbowParameterSpec
- extends java.lang.Object
- implements AlgorithmParameterSpec
This class implements the AlgorithmParameterSpec from the FlexiProvider_Api
and contains the parameters needed for the Rainbow Signature Scheme.
This class provides methods for setting and getting the Rainbow-parameters
like number of Vinegar-variables in the layers, number of layers and so on.
More detailed information about the needed parameters for the Rainbow
Signature Scheme is to be found in the paper of Jintai Ding, Dieter Schmidt:
Rainbow, a New Multivariable Polynomial Signature Scheme. ACNS 2005: 164-175
(http://dx.doi.org/10.1007/11496137_12)
- Author:
- Patrick Neugebauer, Marius Senftleben, Tsvetoslava Vateva
|
Constructor Summary |
RainbowParameterSpec()
Default Constructor The elements of the array containing the number of
Vinegar variables in each layer are set to the default values here. |
RainbowParameterSpec(int[] vi)
Constructor with parameters |
|
Method Summary |
int |
getNumOfLayers()
Getter for the number of layers |
int |
getRainbowDocumentLength()
Getter for the number of all the polynomials in Rainbow |
int[] |
getVi()
Getter for the array containing the number of Vinegar-variables per layer |
void |
setVi(int[] vi)
Setter for the number of Vinegar-variables per layer |
| Methods inherited from class java.lang.Object |
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
RainbowParameterSpec
public RainbowParameterSpec()
- Default Constructor The elements of the array containing the number of
Vinegar variables in each layer are set to the default values here.
RainbowParameterSpec
public RainbowParameterSpec(int[] vi)
- Constructor with parameters
- Parameters:
vi - The elements of the array containing the number of Vinegar
variables per layer are set to the values of the input array.- Throws:
InvalidParameterException - if the key size is invalid.
getNumOfLayers
public int getNumOfLayers()
- Getter for the number of layers
- Returns:
- the number of layers
getRainbowDocumentLength
public int getRainbowDocumentLength()
- Getter for the number of all the polynomials in Rainbow
- Returns:
- the number of the polynomials
getVi
public int[] getVi()
- Getter for the array containing the number of Vinegar-variables per layer
- Returns:
- the numbers of vinegars per layer
setVi
public void setVi(int[] vi)
- Setter for the number of Vinegar-variables per layer
- Parameters:
vi - the values in the array containing the number of vinegars per
layer should be set to the values of vi