|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface PseudoRandomSource
PseudoRandomSource
is an interface that represents a pseudo-random number generator (PRNG).
A PRNG expands a finite length seed into an arbitrarily long stream of pseudo-random bytes.
Method Summary | ||
---|---|---|
|
String |
getAlgorithm()
Returns the name of the algorithm, eg "X963KDF". |
|
int |
getAvailable()
Returns the number of pseudo random bytes currently available. |
|
void |
getBytes(byte[] buffer)
Generates random bytes, filling the given buffer entirely. |
|
void |
getBytes(byte[] buffer,
int offset,
int length)
Inserts random bytes into the given buffer starting at the specified array offset. |
|
byte[] |
getBytes(int length)
Generates a specified length of random bytes, returning them as a byte array of exactly that size. |
|
int |
getMaxAvailable()
Returns the maximum number of pseudo random bytes that this PRNG can produce. |
|
void |
xorBytes(byte[] buffer)
Exclusive-OR's (xor) random bytes into the given buffer. |
|
void |
xorBytes(byte[] buffer,
int offset,
int length)
Exclusive-OR's (xor) random bytes into the given buffer starting at the specified array offset. |
|
void |
xorBytes(byte[] data,
int dataOffset,
int dataLength,
byte[] buffer,
int bufferOffset)
Copies the bytes of the given data into the given buffer, and then exclusive-OR's random bytes into the copy. |
|
byte[] |
xorCopy(byte[] data)
Copies the bytes of the given data into a new buffer, and then exclusive-OR's random bytes into the copy. |
|
byte[] |
xorCopy(byte[] data,
int offset,
int length)
Copies the bytes of the given data into a new buffer, and then exclusive-OR's random bytes into the copy. |
Method Detail |
---|
String getAlgorithm()
void xorBytes(byte[] buffer, int offset, int length) throws CryptoTokenException
buffer
- The buffer to xor the bytes into.offset
- The starting offset, or initial bit position, of the data
within the buffer.length
- The number of bytes to xor.
IllegalStateException
- if the available random bytes are exhausted.
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.void xorBytes(byte[] buffer) throws CryptoTokenException
buffer
- The buffer to be xor'ed with the random bytes.
IllegalStateException
- if the available random bytes are exhausted.
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.void xorBytes(byte[] data, int dataOffset, int dataLength, byte[] buffer, int bufferOffset) throws CryptoTokenException
data
- The array containing the data to xor.dataOffset
- The starting offset, or initial position, of the data within the buffer.dataLength
- The number of bytes to xor.buffer
- The buffer to xor the bytes into.offset
- The starting offset, or initial bit position, of the data
within the buffer.
IllegalStateException
- if the available random bytes are exhausted.
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.byte[] xorCopy(byte[] data) throws CryptoTokenException
data
- The data to be xor'ed.
IllegalStateException
- if the available random bytes are exhausted.
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.byte[] xorCopy(byte[] data, int offset, int length) throws CryptoTokenException
data
- The array containing the data to xor.offset
- The starting offset, or initial position, of the data within the buffer.length
- The number of bytes to xor.
IllegalStateException
- if the available random bytes are exhausted.
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.void getBytes(byte[] buffer, int offset, int length) throws CryptoTokenException
buffer
- The array to hold the bytes.offset
- The starting offset, or initial bit position, of the data within the buffer.length
- The number of bytes to get.
IllegalStateException
- if the available random bytes are exhausted.
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.byte[] getBytes(int length) throws CryptoTokenException
length
- The number of random bytes to generate.
IllegalStateException
- if the available random bytes are exhausted.
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.void getBytes(byte[] buffer) throws CryptoTokenException
buffer
- The array to fill with random bytes.
IllegalStateException
- if the available random bytes are exhausted.
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.int getAvailable() throws CryptoTokenException
For PRNG sources that have an indefinite length but implement
this interface, the value returned is Integer.MAX
.
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.int getMaxAvailable() throws CryptoTokenException
For PRNG sources that have an indefinite length but implement
this interface, the value returned is Integer.MAX
.
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 1999-2010 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark of Sun Microsystems, Inc.