
org.spongycastle.pqc.jcajce.spec.McElieceCCA2ParameterSpec Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of prov Show documentation
Show all versions of prov Show documentation
Spongy Castle is a package-rename (org.bouncycastle.* to org.spongycastle.*) of Bouncy Castle
intended for the Android platform. Android unfortunately ships with a stripped-down version of
Bouncy Castle, which prevents easy upgrades - Spongy Castle overcomes this and provides a full,
up-to-date version of the Bouncy Castle cryptographic libs.
package org.spongycastle.pqc.jcajce.spec;
import java.security.spec.AlgorithmParameterSpec;
/**
* This class provides a specification for the parameters of the CCA2-secure
* variants of the McEliece PKCS that are used with
* {@link McElieceFujisakiCipher}, {@link McElieceKobaraImaiCipher}, and
* {@link McEliecePointchevalCipher}.
*
* @see McElieceFujisakiCipher
* @see McElieceKobaraImaiCipher
* @see McEliecePointchevalCipher
*/
public class McElieceCCA2ParameterSpec
implements AlgorithmParameterSpec
{
/**
* The default message digest ("SHA256").
*/
public static final String DEFAULT_MD = "SHA256";
private String mdName;
/**
* Construct the default parameters. Choose the
*/
public McElieceCCA2ParameterSpec()
{
this(DEFAULT_MD);
}
/**
* Constructor.
*
* @param mdName the name of the hash function
*/
public McElieceCCA2ParameterSpec(String mdName)
{
// check whether message digest is available
// TODO: this method not used!
// try {
// Registry.getMessageDigest(mdName);
// } catch (NoSuchAlgorithmException nsae) {
// throw new InvalidParameterException("Message digest '" + mdName
// + "' not found'.");
// }
// assign message digest name
this.mdName = mdName;
}
/**
* @return the name of the hash function
*/
public String getMDName()
{
return mdName;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy