Class DHParameterSpec

java.lang.Object
javax.crypto.spec.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:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a parameter set for Diffie-Hellman, using a prime modulus p and a base generator g.
    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 Type
    Method
    Description
    Returns the base generator g.
    int
    Returns the size in bits, l, of the random exponent (private value).
    Returns the prime modulus p.

    Methods declared in class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected Object
    Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.
    boolean
    Compares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    May cause performance issues, deadlocks and hangs.
    final Class<? extends Object>
    Answers the unique instance of java.lang.Class which represents the class of the receiver.
    int
    Answers an integer hash code for the receiver.
    final void
    Causes one thread which is waiting on the receiver to be made ready to run.
    final void
    Causes all threads which are waiting on the receiver to be made ready to run.
    Answers a string containing a concise, human-readable description of the receiver.
    final void
    Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated by notify or notifyAll).
    final void
    wait(long time)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
    final void
    wait(long time, int frac)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
  • Constructor Details

    • 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)
  • Method Details

    • 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