class DevRandom extends Object implements IRandomStandalone
| Constructor and Description |
|---|
DevRandom()Default constructor |
| Modifier and Type | Method and Description |
|---|---|
void | addRandomByte(byte b)Supplement, or possibly replace, the random state of this PRNG with
a random byte. |
void | addRandomBytes(byte[] in)Supplement, or possibly replace, the random state of this PRNG with
a sequence of new random bytes. |
void | addRandomBytes(byte[] in,
int offset,
int length)Supplement, or possibly replace, the random state of this PRNG with
a sequence of new random bytes. |
Object | clone()Returns a clone copy of this instance. |
void | init(Map<String,byte[]> attributes)Initialises the pseudo-random number generator scheme with the
appropriate attributes. |
static boolean | isSupported()Check if /dev/random is available. |
String | name()Returns the canonical name of this instance. |
byte | nextByte()Returns the next 8 bits of random data generated from this instance. |
void | nextBytes(byte[] out)Fill the output byte array with random bytes. |
void | nextBytes(byte[] out,
int offset,
int length)Fills the designated byte array, starting from byte at index
offset, for a maximum of length bytes with the
output of this generator instance. |
public void addRandomByte(byte b)
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.
addRandomByte in interface IRandomStandaloneb - The byte to add.public void addRandomBytes(byte[] in)
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.
addRandomBytes in interface IRandomStandalonein - The buffer of new random bytes to add.public void addRandomBytes(byte[] in,
int offset,
int length)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.
addRandomBytes in interface IRandomStandalonein - 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.public Object clone() throws CloneNotSupportedException
IRandomStandaloneReturns a clone copy of this instance.
clone in interface IRandomStandaloneclone in class ObjectCloneNotSupportedException - if cloning is not supportedpublic void init(Map<String,byte[]> attributes)
IRandomStandaloneInitialises the pseudo-random number generator scheme with the appropriate attributes.
init in interface IRandomStandaloneattributes - a set of name-value pairs that describe the desired
future instance behaviour.public static boolean isSupported()
public String name()
IRandomStandaloneReturns the canonical name of this instance.
name in interface IRandomStandalonepublic byte nextByte()
IRandomStandaloneReturns the next 8 bits of random data generated from this instance.
nextByte in interface IRandomStandalonepublic void nextBytes(byte[] out)
throws IllegalStateExceptionIRandomStandalonenextBytes in interface IRandomStandaloneout - the output array to fillIllegalStateExceptionpublic void nextBytes(byte[] out,
int offset,
int length)
throws IllegalStateExceptionIRandomStandaloneFills the designated byte array, starting from byte at index
offset, for a maximum of length bytes with the
output of this generator instance.
nextBytes in interface IRandomStandaloneout - 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 within 0 and
out.length.length - the maximum number of required random bytes. This method
does nothing if this parameter is less than 1.IllegalStateException - if the instance is not yet initialised.
theoretical limit for generating non-repetitive pseudo-random data.