Package org.bouncycastle.jcajce.spec
Class DHDomainParameterSpec
- java.lang.Object
-
- javax.crypto.spec.DHParameterSpec
-
- org.bouncycastle.jcajce.spec.DHDomainParameterSpec
-
- All Implemented Interfaces:
java.security.spec.AlgorithmParameterSpec
public class DHDomainParameterSpec extends javax.crypto.spec.DHParameterSpec
Extension class for DHParameterSpec that wraps a DHDomainParameters object and provides the q domain parameter.
-
-
Constructor Summary
Constructors Constructor Description DHDomainParameterSpec(java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g)
Minimal constructor for parameters able to be used to verify a public key, or use with MQV.DHDomainParameterSpec(java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g, int l)
Minimal constructor for parameters able to be used to verify a public key, or use with MQV, and a private value length.DHDomainParameterSpec(java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g, java.math.BigInteger j, int m, int l, DHValidationParameters validationParameters)
Base constructor - the full domain parameter set.DHDomainParameterSpec(java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g, java.math.BigInteger j, int l, DHValidationParameters validationParameters)
X9.42 parameters with private value length.DHDomainParameterSpec(DHDomainParameters domainParameters)
Base constructor - use the values in an existing set of domain parameters.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DHDomainParameters
getDomainParameters()
Return the DHDomainParameters object we represent.java.math.BigInteger
getJ()
Return the J value for the domain parameter set if available.int
getM()
Return the minimum bitlength for a private value to be generated from these parameters, 0 if not set.java.math.BigInteger
getQ()
Return the Q value for the domain parameter set.DHValidationParameters
getValidationParameters()
Return the validation parameters for the domain parameter set.
-
-
-
Constructor Detail
-
DHDomainParameterSpec
public DHDomainParameterSpec(DHDomainParameters domainParameters)
Base constructor - use the values in an existing set of domain parameters.- Parameters:
domainParameters
- the Diffie-Hellman domain parameters to wrap.
-
DHDomainParameterSpec
public DHDomainParameterSpec(java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g)
Minimal constructor for parameters able to be used to verify a public key, or use with MQV.- Parameters:
p
- the prime p defining the Galois field.g
- the generator of the multiplicative subgroup of order g.q
- specifies the prime factor of p - 1
-
DHDomainParameterSpec
public DHDomainParameterSpec(java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g, int l)
Minimal constructor for parameters able to be used to verify a public key, or use with MQV, and a private value length.- Parameters:
p
- the prime p defining the Galois field.g
- the generator of the multiplicative subgroup of order g.q
- specifies the prime factor of p - 1l
- the maximum bit length for the private value.
-
DHDomainParameterSpec
public DHDomainParameterSpec(java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g, java.math.BigInteger j, int l, DHValidationParameters validationParameters)
X9.42 parameters with private value length.- Parameters:
p
- the prime p defining the Galois field.g
- the generator of the multiplicative subgroup of order g.q
- specifies the prime factor of p - 1j
- optionally specifies the value that satisfies the equation p = jq+1l
- the maximum bit length for the private value.validationParameters
- parameters for validating these domain parameters.
-
DHDomainParameterSpec
public DHDomainParameterSpec(java.math.BigInteger p, java.math.BigInteger q, java.math.BigInteger g, java.math.BigInteger j, int m, int l, DHValidationParameters validationParameters)
Base constructor - the full domain parameter set.- Parameters:
p
- the prime p defining the Galois field.g
- the generator of the multiplicative subgroup of order g.q
- specifies the prime factor of p - 1j
- optionally specifies the value that satisfies the equation p = jq+1m
- the minimum bit length for the private value.l
- the maximum bit length for the private value.validationParameters
- parameters for validating these domain parameters.
-
-
Method Detail
-
getQ
public java.math.BigInteger getQ()
Return the Q value for the domain parameter set.- Returns:
- the value Q.
-
getJ
public java.math.BigInteger getJ()
Return the J value for the domain parameter set if available.- Returns:
- the value J, null otherwise.
-
getM
public int getM()
Return the minimum bitlength for a private value to be generated from these parameters, 0 if not set.- Returns:
- minimum bitlength for private value.
-
getValidationParameters
public DHValidationParameters getValidationParameters()
Return the validation parameters for the domain parameter set.- Returns:
- the Diffie-Hellman validation parameters.
-
getDomainParameters
public DHDomainParameters getDomainParameters()
Return the DHDomainParameters object we represent.- Returns:
- the internal DHDomainParameters.
-
-