Top Description Fields Constructors Methods
javax.crypto.spec

public Class DHParameterSpec

extends Object
implements AlgorithmParameterSpec
Class Inheritance
All Implemented Interfaces
java.security.spec.AlgorithmParameterSpec
Known Direct Subclasses
sun.security.util.SafeDHParameterSpec
Imports
java.math.BigInteger, java.security.spec.AlgorithmParameterSpec

This class specifies the set of parameters used with the Diffie-Hellman algorithm, as specified in PKCS #3: Diffie-Hellman Key-Agreement Standard.

A central authority generates parameters and gives them to the two entities seeking to generate a secret key. The parameters are a prime p, a base g, and optionally the length in bits of the private value, l.

It is possible that more than one instance of parameters may be generated by a given central authority, and that there may be more than one central authority. Indeed, each individual may be its own central authority, with different entities having different parameters.

Note that this class does not perform any validation on specified parameters. Thus, the specified values are returned directly even if they are null.

Author
Jan Luehe
Since
1.4
See Also
javax.crypto.KeyAgreement

Field Summary

Modifier and TypeField and Description
private final BigInteger
g

private final int
l

private final BigInteger
p

Constructor Summary

AccessConstructor and Description
public
DHParameterSpec(BigInteger
the prime modulus
p
,
BigInteger
the base generator
g
)

Constructs a parameter set for Diffie-Hellman, using a prime modulus p and a base generator g.

public
DHParameterSpec(BigInteger
the prime modulus
p
,
BigInteger
the base generator
g
,
int
the size in bits of the random exponent (private value)
l
)

Constructs a parameter set for Diffie-Hellman, using a prime modulus p, a base generator g, and the size in bits, l, of the random exponent (private value).

Method Summary

Modifier and TypeMethod and Description
public BigInteger

Returns:

the base generator g
getG
()

Returns the base generator g.

public int

Returns:

the size in bits, l, of the random exponent (private value), or 0 if this size has not been set
getL
()

Returns the size in bits, l, of the random exponent (private value).

public BigInteger

Returns:

the prime modulus p
getP
()

Returns the prime modulus p.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

gback to summary
private final BigInteger g
lback to summary
private final int l
pback to summary
private final BigInteger p

Constructor Detail

DHParameterSpecback to summary
public DHParameterSpec(BigInteger p, BigInteger g)

Constructs a parameter set for Diffie-Hellman, using a prime modulus p and a base generator g.

Parameters
p:BigInteger

the prime modulus

g:BigInteger

the base generator

DHParameterSpecback to summary
public DHParameterSpec(BigInteger p, BigInteger g, int l)

Constructs a parameter set for Diffie-Hellman, using a prime modulus p, a base generator g, and the size in bits, l, of the random exponent (private value).

Parameters
p:BigInteger

the prime modulus

g:BigInteger

the base generator

l:int

the size in bits of the random exponent (private value)

Method Detail

getGback to summary
public BigInteger getG()

Returns the base generator g.

Returns:BigInteger

the base generator g

getLback to summary
public int getL()

Returns the size in bits, l, of the random exponent (private value).

Returns:int

the size in bits, l, of the random exponent (private value), or 0 if this size has not been set

getPback to summary
public BigInteger getP()

Returns the prime modulus p.

Returns:BigInteger

the prime modulus p