W3cubDocs

/OpenJDK 8

Class DHParameterSpec

All Implemented Interfaces:
AlgorithmParameterSpec
public class DHParameterSpec
extends Object
implements 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.

Since:
1.4
See Also:
KeyAgreement

Constructors

DHParameterSpec

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 - the prime modulus
g - the base generator

DHParameterSpec

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 - the prime modulus
g - the base generator
l - the size in bits of the random exponent (private value)

Methods

getP

public BigInteger getP()

Returns the prime modulus p.

Returns:
the prime modulus p

getG

public BigInteger getG()

Returns the base generator g.

Returns:
the base generator g

getL

public int getL()

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

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

© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.