|
For the latest news and information visit The GNU Crypto project |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object | +--gnu.crypto.prng.BasePRNG
An abstract class to facilitate implementing PRNG algorithms.
| Field Summary | |
protected byte[] |
buffer
A temporary buffer to serve random bytes. |
protected boolean |
initialised
Indicate if this instance has already been initialised or not. |
protected java.lang.String |
name
The canonical name prefix of the PRNG algorithm. |
protected int |
ndx
The index into buffer of where the next byte will come from. |
| Constructor Summary | |
protected |
BasePRNG(java.lang.String name)
Trivial constructor for use by concrete subclasses. |
| Method Summary | |
abstract java.lang.Object |
clone()
Returns a clone copy of this instance. |
abstract void |
fillBlock()
|
void |
init(java.util.Map attributes)
Initialises the padding scheme with a designated block size, eventually seeding it in preparation for operations. |
boolean |
isInitialised()
|
java.lang.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,
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. |
abstract void |
setup(java.util.Map attributes)
|
| Methods inherited from class java.lang.Object |
|
| Field Detail |
protected java.lang.String name
protected boolean initialised
protected byte[] buffer
protected int ndx
| Constructor Detail |
protected BasePRNG(java.lang.String name)
Trivial constructor for use by concrete subclasses.
name - the canonical name of this instance.| Method Detail |
public java.lang.String name()
IRandomReturns the canonical name of this instance.
name in interface IRandomgnu.crypto.prng.IRandompublic void init(java.util.Map attributes)
IRandomInitialises the padding scheme with a designated block size, eventually seeding it in preparation for operations.
init in interface IRandomgnu.crypto.prng.IRandomattributes - a set of name-value pairs that describe the desired
future instance behaviour.java.lang.IllegalArgumentException - if at least one of the defined name/
value pairs contains invalid data.
public byte nextByte()
throws java.lang.IllegalStateException,
LimitReachedException
IRandomReturns the next 8 bits of random data generated from this instance.
nextByte in interface IRandomgnu.crypto.prng.IRandomjava.lang.IllegalStateException - if the instance is not yet initialised.LimitReachedException - if this instance has reached its
theoretical limit for generating non-repetitive pseudo-random data.
public void nextBytes(byte[] out,
int offset,
int length)
throws java.lang.IllegalStateException,
LimitReachedException
IRandomFills 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 IRandomgnu.crypto.prng.IRandomout - 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.java.lang.IllegalStateException - if the instance is not yet initialised.LimitReachedException - if this instance has reached its
theoretical limit for generating non-repetitive pseudo-random data.public boolean isInitialised()
public abstract java.lang.Object clone()
IRandomReturns a clone copy of this instance.
clone in interface IRandomclone in class java.lang.Objectgnu.crypto.prng.IRandompublic abstract void setup(java.util.Map attributes)
public abstract void fillBlock()
throws LimitReachedException
|
For the latest news and information visit The GNU Crypto project |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||