org.bouncycastle.crypto.prng.EntropySource Maven / Gradle / Ivy
package org.bouncycastle.crypto.prng;
/**
* Base interface describing an entropy source for a DRBG.
*/
public interface EntropySource
{
/**
* Return whether or not this entropy source is regarded as prediction resistant.
*
* @return true if it is, false otherwise.
*/
boolean isPredictionResistant();
/**
* Return a byte array of entropy.
*
* @return entropy bytes.
*/
byte[] getEntropy();
/**
* Return the number of bits of entropy this source can produce.
*
* @return size in bits of the return value of getEntropy.
*/
int entropySize();
}