All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class cryptix.provider.elgamal.GenericElGamalParameterSet

java.lang.Object
   |
   +----cryptix.provider.elgamal.GenericElGamalParameterSet

public class GenericElGamalParameterSet
extends Object
This class represents a set of ElGamal parameters for various prime lengths.

The best methods for computing discrete logarithms in GF(p) have an expensive pre-computation stage, but once the pre-computation has been done, individual logarithms can be calculated quickly. In order to make sure that a particular set of parameters does not become too much of a target because it is used in more than one application, you may wish to generate your own set of parameters.

References:

  1. Bruce Schneier, "Section 11.3 Number Theory" (heading "Calculating Discrete Logarithms in a Finite Group," pages 262-263), Applied Cryptography, 2nd edition, John Wiley & Sons, 1996.

Copyright © 1997 Systemics Ltd on behalf of the Cryptix Development Team.
All rights reserved.

$Revision: 1.3 $

Author:
David Hopwood
See Also:
CreateElGamalParameterSet, BaseElGamalKeyPairGenerator

Constructor Index

 o GenericElGamalParameterSet(int[], String[][])
Subclasses should call this constructor to determine the parameters that will be returned by getParameters.

Method Index

 o checkSane()
Throws an InvalidParameterException if any of the parameters are obviously incorrect.
 o getParameters(int)
If primeLength corresponds to one of the precomputed prime lengths, this method returns a corresponding ElGamalParams object.

Constructors

 o GenericElGamalParameterSet
 protected GenericElGamalParameterSet(int primeLengths[],
                                      String precomputed[][])
Subclasses should call this constructor to determine the parameters that will be returned by getParameters.

Parameters:
primeLengths - an array of bit lengths for each prime
precomputedP - an array of hex strings representing each prime
precomputedG - an array of hex strings representing each base
Throws: IllegalArgumentException
if the arrays are not all the same length.

Methods

 o getParameters
 public ElGamalParams getParameters(int primeLength)
If primeLength corresponds to one of the precomputed prime lengths, this method returns a corresponding ElGamalParams object. Otherwise, it returns null.

 o checkSane
 public void checkSane() throws InvalidParameterException
Throws an InvalidParameterException if any of the parameters are obviously incorrect.


All Packages  Class Hierarchy  This Package  Previous  Next  Index