org.bouncycastle.pqc.jcajce.spec.LMSHSSKeyGenParameterSpec Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bcprov-jdk15to18 Show documentation
Show all versions of bcprov-jdk15to18 Show documentation
The Bouncy Castle Crypto package is a Java implementation of cryptographic algorithms. This jar contains JCE provider and lightweight API for the Bouncy Castle Cryptography APIs for JDK 1.5 to JDK 1.8.
package org.bouncycastle.pqc.jcajce.spec;
import java.security.spec.AlgorithmParameterSpec;
/**
* ParameterSpec for keys using the LMS Hierarchical Signature System (HSS).
*/
public class LMSHSSKeyGenParameterSpec
implements AlgorithmParameterSpec
{
private final LMSKeyGenParameterSpec[] specs;
/**
* Base constructor, specify the LMS parameters at each level of the hierarchy.
*
* @param specs the LMS parameter specs for each level of the hierarchy.
*/
public LMSHSSKeyGenParameterSpec(LMSKeyGenParameterSpec... specs)
{
if (specs.length == 0)
{
throw new IllegalArgumentException("at least one LMSKeyGenParameterSpec required");
}
this.specs = specs.clone();
}
/**
* Return the LMS parameters for the HSS hierarchy.
*
* @return the HSS component LMS parameter specs.
*/
public LMSKeyGenParameterSpec[] getLMSSpecs()
{
return specs.clone();
}
}