org.bouncycastle.crypto.params.RSAKeyGenerationParameters Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bcprov-ext-debug-jdk15on Show documentation
Show all versions of bcprov-ext-debug-jdk15on 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. Note: this package includes the NTRU encryption algorithms.
package org.bouncycastle.crypto.params;
import java.math.BigInteger;
import java.security.SecureRandom;
import org.bouncycastle.crypto.KeyGenerationParameters;
public class RSAKeyGenerationParameters
extends KeyGenerationParameters
{
private BigInteger publicExponent;
private int certainty;
public RSAKeyGenerationParameters(
BigInteger publicExponent,
SecureRandom random,
int strength,
int certainty)
{
super(random, strength);
if (strength < 12)
{
throw new IllegalArgumentException("key strength too small");
}
//
// public exponent cannot be even
//
if (!publicExponent.testBit(0))
{
throw new IllegalArgumentException("public exponent cannot be even");
}
this.publicExponent = publicExponent;
this.certainty = certainty;
}
public BigInteger getPublicExponent()
{
return publicExponent;
}
public int getCertainty()
{
return certainty;
}
}