Class DSAParametersGenerator

java.lang.Object
org.gudy.bouncycastle.crypto.generators.DSAParametersGenerator

public class DSAParametersGenerator extends Object
generate suitable parameters for DSA, in line with FIPS 186-2.
  • Field Details

    • size

      private int size
    • certainty

      private int certainty
    • random

      private SecureRandom random
    • ONE

      private static BigInteger ONE
    • TWO

      private static BigInteger TWO
  • Constructor Details

    • DSAParametersGenerator

      public DSAParametersGenerator()
  • Method Details

    • init

      public void init(int size, int certainty, SecureRandom random)
      initialise the key generator.
      Parameters:
      size - size of the key (range 2^512 -> 2^1024 - 64 bit increments)
      certainty - measure of robustness of prime (for FIPS 186-2 compliance this should be at least 80).
      random - random byte source.
    • add

      private void add(byte[] a, byte[] b, int value)
      add value to b, returning the result in a. The a value is treated as a BigInteger of length (a.length * 8) bits. The result is modulo 2^a.length in case of overflow.
    • generateParameters

      public DSAParameters generateParameters()
      which generates the p and g values from the given parameters, returning the DSAParameters object.

      Note: can take a while...