Bouncy Castle Cryptography Library 1.87

org.bouncycastle.crypto.prng.drbg
Class DualECSP800DRBG

java.lang.Object
  extended byorg.bouncycastle.crypto.prng.drbg.DualECSP800DRBG
All Implemented Interfaces:
SP80090DRBG

Deprecated. Dual_EC_DRBG was withdrawn from SP 800-90A in Revision 1 (2015) and is not an approved DRBG; use HashSP800DRBG, HMacSP800DRBG or CTRSP800DRBG. It will be removed in a future release.

public class DualECSP800DRBG
extends java.lang.Object
implements SP80090DRBG

A SP800-90A Dual EC DRBG.


Constructor Summary
DualECSP800DRBG(Digest digest, int securityStrength, EntropySource entropySource, byte[] personalizationString, byte[] nonce)
          Deprecated. Construct a SP800-90A Dual EC DRBG.
DualECSP800DRBG(DualECPoints[] pointSet, Digest digest, int securityStrength, EntropySource entropySource, byte[] personalizationString, byte[] nonce)
          Deprecated. Construct a SP800-90A Dual EC DRBG.
 
Method Summary
 int generate(byte[] output, byte[] additionalInput, boolean predictionResistant)
          Deprecated. Populate a passed in array with random data.
 int getBlockSize()
          Deprecated. Return the block size (in bits) of the DRBG.
 void reseed(byte[] additionalInput)
          Deprecated. Reseed the DRBG.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DualECSP800DRBG

public DualECSP800DRBG(Digest digest,
                       int securityStrength,
                       EntropySource entropySource,
                       byte[] personalizationString,
                       byte[] nonce)
Deprecated. 
Construct a SP800-90A Dual EC DRBG.

Minimum entropy requirement is the security strength requested.

Parameters:
digest - source digest to use with the DRB stream.
securityStrength - security strength required (in bits)
entropySource - source of entropy to use for seeding/reseeding.
personalizationString - personalization string to distinguish this DRBG (may be null).
nonce - nonce to further distinguish this DRBG (may be null).

DualECSP800DRBG

public DualECSP800DRBG(DualECPoints[] pointSet,
                       Digest digest,
                       int securityStrength,
                       EntropySource entropySource,
                       byte[] personalizationString,
                       byte[] nonce)
Deprecated. 
Construct a SP800-90A Dual EC DRBG.

Minimum entropy requirement is the security strength requested.

Parameters:
pointSet - an array of points to choose from, in order of increasing security strength
digest - source digest to use with the DRB stream.
securityStrength - security strength required (in bits)
entropySource - source of entropy to use for seeding/reseeding.
personalizationString - personalization string to distinguish this DRBG (may be null).
nonce - nonce to further distinguish this DRBG (may be null).
Method Detail

getBlockSize

public int getBlockSize()
Deprecated. 
Return the block size (in bits) of the DRBG.

Specified by:
getBlockSize in interface SP80090DRBG
Returns:
the number of bits produced on each internal round of the DRBG.

generate

public int generate(byte[] output,
                    byte[] additionalInput,
                    boolean predictionResistant)
Deprecated. 
Populate a passed in array with random data.

Specified by:
generate in interface SP80090DRBG
Parameters:
output - output array for generated bits.
additionalInput - additional input to be added to the DRBG in this step.
predictionResistant - true if a reseed should be forced, false otherwise.
Returns:
number of bits generated, -1 if a reseed required.

reseed

public void reseed(byte[] additionalInput)
Deprecated. 
Reseed the DRBG.

Specified by:
reseed in interface SP80090DRBG
Parameters:
additionalInput - additional input to be added to the DRBG in this step.

Bouncy Castle Cryptography Library 1.87