Bouncy Castle Cryptography Library 1.77.0

org.bouncycastle.crypto.prng.drbg
Interface SP80090DRBG

All Known Implementing Classes:
DualECSP800DRBG, HMacSP800DRBG, CTRSP800DRBG, HashSP800DRBG

public interface SP80090DRBG

Interface to SP800-90A deterministic random bit generators.


Method Summary
 int generate(byte[] output, byte[] additionalInput, boolean predictionResistant)
          Populate a passed in array with random data.
 int getBlockSize()
          Return the block size of the DRBG.
 void reseed(byte[] additionalInput)
          Reseed the DRBG.
 

Method Detail

getBlockSize

public int getBlockSize()
Return the block size of the DRBG.
Returns:
the block size (in bits) produced by each round of the DRBG.

generate

public int generate(byte[] output,
                    byte[] additionalInput,
                    boolean predictionResistant)
Populate a passed in array with random data.
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)
Reseed the DRBG.
Parameters:
additionalInput - additional input to be added to the DRBG in this step.

Bouncy Castle Cryptography Library 1.77.0