Class DevRandom
- java.lang.Object
-
- gnu.crypto.prng.DevRandom
-
- All Implemented Interfaces:
IRandomStandalone,Cloneable
class DevRandom extends Object implements IRandomStandalone
Simple /dev/random reader- Since:
- 0.9.58
-
-
Constructor Summary
Constructors Constructor Description DevRandom()
-
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[] in)Supplement, or possibly replace, the random state of this PRNG with a sequence of new random bytes.voidaddRandomBytes(byte[] in, int offset, int length)Supplement, or possibly replace, the random state of this PRNG with a sequence of new random bytes.Objectclone()Returns a clone copy of this instance.voidinit(Map<String,byte[]> attributes)Initialises the pseudo-random number generator scheme with the appropriate attributes.Stringname()Returns the canonical name of this instance.bytenextByte()Returns the next 8 bits of random data generated from this instance.voidnextBytes(byte[] out)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.
-
-
-
Method Detail
-
name
public String name()
Description copied from interface:IRandomStandaloneReturns the canonical name of this instance.
- Specified by:
namein interfaceIRandomStandalone- Returns:
- the canonical name of this instance.
-
init
public void init(Map<String,byte[]> attributes)
Description copied from interface:IRandomStandaloneInitialises the pseudo-random number generator scheme with the appropriate attributes.
- Specified by:
initin interfaceIRandomStandalone- Parameters:
attributes- a set of name-value pairs that describe the desired future instance behaviour.
-
nextByte
public byte nextByte()
Description copied from interface:IRandomStandaloneReturns the next 8 bits of random data generated from this instance.
- Specified by:
nextBytein interfaceIRandomStandalone- Returns:
- the next 8 bits of random data generated from this instance.
-
nextBytes
public void nextBytes(byte[] out) throws IllegalStateException- Specified by:
nextBytesin interfaceIRandomStandalone- Throws:
IllegalStateException- Since:
- 0.9.58 added to interface
-
nextBytes
public void nextBytes(byte[] out, int offset, int length) throws IllegalStateExceptionDescription 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- 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.- Throws:
IllegalStateException- if the instance is not yet initialised. theoretical limit for generating non-repetitive pseudo-random data.
-
addRandomByte
public 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- Parameters:
b- The byte to add.
-
addRandomBytes
public void addRandomBytes(byte[] in)
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- Parameters:
in- The buffer of new random bytes to add.
-
addRandomBytes
public void addRandomBytes(byte[] in, 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- Parameters:
in- 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.
-
clone
public Object clone() throws CloneNotSupportedException
Description copied from interface:IRandomStandaloneReturns a clone copy of this instance.
- Specified by:
clonein interfaceIRandomStandalone- Overrides:
clonein classObject- Returns:
- a clone copy of this instance.
- Throws:
CloneNotSupportedException
-
-