Package gnu.crypto.prng
Class FortunaStandalone.Generator
- java.lang.Object
-
- gnu.crypto.prng.BasePRNGStandalone
-
- gnu.crypto.prng.FortunaStandalone.Generator
-
- All Implemented Interfaces:
IRandomStandalone,Serializable,Cloneable
- Enclosing class:
- FortunaStandalone
public static class FortunaStandalone.Generator extends BasePRNGStandalone implements Cloneable
The Fortuna generator function. The generator is a PRNG in its own right; Fortuna itself is basically a wrapper around this generator that manages reseeding in a secure way.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class gnu.crypto.prng.BasePRNGStandalone
buffer, initialised, name, ndx
-
-
Constructor Summary
Constructors Constructor Description Generator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddRandomByte(byte b)Supplement, or possibly replace, the random state of this PRNG with a random byte.voidaddRandomBytes(byte[] seed, int offset, int length)Supplement, or possibly replace, the random state of this PRNG with a sequence of new random bytes.voidfillBlock()bytenextByte()Returns the next 8 bits of random data generated from this instance.voidnextBytes(byte[] out, int offset, int length)Fills the designated byte array, starting from byte at indexoffset, for a maximum oflengthbytes with the output of this generator instance.voidsetup(Map<String,byte[]> attributes)-
Methods inherited from class gnu.crypto.prng.BasePRNGStandalone
addRandomBytes, clone, init, isInitialised, name, nextBytes
-
-
-
-
Method Detail
-
nextByte
public final byte nextByte()
Description copied from interface:IRandomStandaloneReturns the next 8 bits of random data generated from this instance.
- Specified by:
nextBytein interfaceIRandomStandalone- Overrides:
nextBytein classBasePRNGStandalone- Returns:
- the next 8 bits of random data generated from this instance.
-
nextBytes
public final void nextBytes(byte[] out, int offset, int length)Description copied from interface:IRandomStandaloneFills the designated byte array, starting from byte at index
offset, for a maximum oflengthbytes with the output of this generator instance.- Specified by:
nextBytesin interfaceIRandomStandalone- Overrides:
nextBytesin classBasePRNGStandalone- Parameters:
out- the placeholder to contain the generated random bytes.offset- the starting index in out to consider. This method does nothing if this parameter is not within0andout.length.length- the maximum number of required random bytes. This method does nothing if this parameter is less than1.
-
addRandomByte
public final void addRandomByte(byte b)
Description copied from interface:IRandomStandaloneSupplement, or possibly replace, the random state of this PRNG with a random byte.
Implementations are not required to implement this method in any meaningful way; this may be a no-operation, and implementations may throw an
UnsupportedOperationException.- Specified by:
addRandomBytein interfaceIRandomStandalone- Overrides:
addRandomBytein classBasePRNGStandalone- Parameters:
b- The byte to add.
-
addRandomBytes
public final void addRandomBytes(byte[] seed, int offset, int length)Description copied from interface:IRandomStandaloneSupplement, or possibly replace, the random state of this PRNG with a sequence of new random bytes.
Implementations are not required to implement this method in any meaningful way; this may be a no-operation, and implementations may throw an
UnsupportedOperationException.- Specified by:
addRandomBytesin interfaceIRandomStandalone- Overrides:
addRandomBytesin classBasePRNGStandalone- Parameters:
seed- The buffer of new random bytes to add.offset- The offset from whence to begin reading random bytes.length- The number of random bytes to add.
-
fillBlock
public final void fillBlock()
- Specified by:
fillBlockin classBasePRNGStandalone
-
setup
public void setup(Map<String,byte[]> attributes)
- Specified by:
setupin classBasePRNGStandalone
-
-