|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object javacard.security.RandomData
public abstract class RandomData
The RandomData
abstract class is the base class for random number generation.
Implementations of RandomData
algorithms must extend this class and implement all the abstract methods.
Field Summary | |
---|---|
static byte |
ALG_PSEUDO_RANDOM
Utility pseudo-random number generation algorithms. |
static byte |
ALG_SECURE_RANDOM
Cryptographically secure random number generation algorithms. |
Constructor Summary | |
---|---|
protected |
RandomData()
Protected constructor for subclassing. |
Method Summary | |
---|---|
abstract void |
generateData(byte[] buffer,
short offset,
short length)
Generates random data. |
static RandomData |
getInstance(byte algorithm)
Creates a RandomData instance of the selected algorithm. |
abstract void |
setSeed(byte[] buffer,
short offset,
short length)
Seeds the random data generator. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final byte ALG_PSEUDO_RANDOM
Even if a transaction is in progress, the update of the internal state shall not participate in the transaction.
public static final byte ALG_SECURE_RANDOM
Constructor Detail |
---|
protected RandomData()
Method Detail |
---|
public static final RandomData getInstance(byte algorithm) throws CryptoException
RandomData
instance of the selected algorithm.
The pseudo random RandomData
instance's seed is initialized to a internal default value.
algorithm
- the desired random number algorithm. Valid codes listed in ALG_ .. constants above. See ALG_PSEUDO_RANDOM
.
RandomData
object instance of the requested algorithm
CryptoException
- with the following reason codes:CryptoException.NO_SUCH_ALGORITHM
if the requested algorithm is not supported.public abstract void generateData(byte[] buffer, short offset, short length) throws CryptoException
buffer
- the output bufferoffset
- the offset into the output bufferlength
- the length of random data to generate
CryptoException
- with the following reason codes:CryptoException.ILLEGAL_VALUE
if the length
parameter is
zero.public abstract void setSeed(byte[] buffer, short offset, short length)
buffer
- the input bufferoffset
- the offset into the input bufferlength
- the length of the seed data
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |