|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.rim.device.api.crypto.AbstractPseudoRandomSource
net.rim.device.api.crypto.PKCS1MGF1PseudoRandomSource
public final class PKCS1MGF1PseudoRandomSource
The PKCS1MGF1PseudoRandomSource
class implements the PKCS1 mask
generation function (MGF1), using a digest to expand a finite length seed
into an arbitrarily long stream of pseudo-random bytes.
We implemented the PKCS1 MGF as per the PKCS #1 version 2.1 document.
Constructor Summary | ||
---|---|---|
|
PKCS1MGF1PseudoRandomSource(byte[] seed)
Creates a PKCS1MGF1PseudoRandomSource object using a seed. |
|
|
PKCS1MGF1PseudoRandomSource(byte[] seed,
int offset,
int length)
Creates a PKCS1MGF1PseudoRandomSource object using a seed. |
|
|
PKCS1MGF1PseudoRandomSource(byte[] seed,
int offset,
int length,
Digest digest)
Creates a PKCS1MGF1PseudoRandomSource object using a seed and a digest. |
|
|
PKCS1MGF1PseudoRandomSource(byte[] seed,
Digest digest)
Creates a PKCS1MGF1PseudoRandomSource object using a seed and a digest. |
|
|
PKCS1MGF1PseudoRandomSource(SymmetricKey seed)
Creates a PKCS1MGF1PseudoRandomSource object using a SymmetricKey seed. |
|
|
PKCS1MGF1PseudoRandomSource(SymmetricKey seed,
Digest digest)
Creates a PKCS1MGF1PseudoRandomSource object using a SymmetricKey seed and a digest. |
Method Summary | ||
---|---|---|
|
String |
getAlgorithm()
Returns the name of this PseudoRandomSource "PKCS1MGF1". |
|
int |
getAvailable()
Returns the number of pseudo random bytes currently available. |
|
int |
getMaxAvailable()
Returns the maximum number of pseudo random bytes that this PRNG can produce. |
|
void |
xorBytes(byte[] buffer,
int offset,
int length)
Exclusive-OR's random bytes into the given buffer starting at the specified array offset. |
Methods inherited from class net.rim.device.api.crypto.AbstractPseudoRandomSource |
---|
getBytes, getBytes, getBytes, xorBytes, xorBytes, xorCopy, xorCopy |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface net.rim.device.api.crypto.PseudoRandomSource |
---|
getBytes, getBytes, getBytes, xorBytes, xorBytes, xorCopy, xorCopy |
Constructor Detail |
---|
public PKCS1MGF1PseudoRandomSource(byte[] seed, Digest digest)
PKCS1MGF1PseudoRandomSource
object using a seed and a digest.
seed
- A byte array containing the seed that will be used to seed the digest.digest
- The digest to be used for the pseudo random source.public PKCS1MGF1PseudoRandomSource(byte[] seed, int offset, int length, Digest digest)
PKCS1MGF1PseudoRandomSource
object using a seed and a digest.
seed
- A byte array containing the seed that will be used to seed the digest.digest
- The digest to be used for the pseudo random source.length
- The length of the portion of seed to be used.offset
- The offset, or start position, of the portion to be used.public PKCS1MGF1PseudoRandomSource(SymmetricKey seed, Digest digest) throws CryptoTokenException, CryptoUnsupportedOperationException
PKCS1MGF1PseudoRandomSource
object using a SymmetricKey
seed and a digest.
seed
- A symmetric key containing the seed that will be used to seed the digest.digest
- The digest to be used for the pseudo random source.
CryptoTokenException
- Thrown if an error occurs with the crypto
token or the crypto token is invalid.
CryptoUnsupportedOperationException
- Thrown if a call is made to
an unsupported operation.public PKCS1MGF1PseudoRandomSource(byte[] seed, int offset, int length)
PKCS1MGF1PseudoRandomSource
object using a seed. This constructor will by
default use the SHA1Digest
for the digest.
seed
- A byte array containing the seed that will be used to seed the digest.offset
- The offset, or starting position, of the seed data within
the array.length
- The number of bytes to use as seed data.public PKCS1MGF1PseudoRandomSource(byte[] seed)
PKCS1MGF1PseudoRandomSource
object using a seed. This constructor will by
default use the SHA1Digest
for the digest.
seed
- A byte array containing the seed that will be used to seed the digest.public PKCS1MGF1PseudoRandomSource(SymmetricKey seed) throws CryptoTokenException, CryptoUnsupportedOperationException
PKCS1MGF1PseudoRandomSource
object using a SymmetricKey
seed. This constructor will
use the SHA1Digest
by default.
seed
- A symmetric key containing the seed that will be used to seed
the digest.
CryptoTokenException
- Thrown if an error occurs with the crypto
token or the crypto token is invalid.
CryptoUnsupportedOperationException
- Thrown if a call is made to
an unsupported operation.Method Detail |
---|
public String getAlgorithm()
This method will always return the String "PKCS1MGF1".
getAlgorithm
in interface PseudoRandomSource
public void xorBytes(byte[] buffer, int offset, int length)
AbstractPseudoRandomSource
xorBytes
in interface PseudoRandomSource
xorBytes
in class AbstractPseudoRandomSource
buffer
- The byte array to xor the bytes into.offset
- The starting offset within buffer.length
- The number of bytes to xor.public int getAvailable()
PseudoRandomSource
For PRNG sources that have an indefinite length but implement
this interface, the value returned is Integer.MAX
.
getAvailable
in interface PseudoRandomSource
public int getMaxAvailable()
PseudoRandomSource
For PRNG sources that have an indefinite length but implement
this interface, the value returned is Integer.MAX
.
getMaxAvailable
in interface PseudoRandomSource
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 1999-2011 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Java is a trademark of Oracle America Inc. in the US and other countries.
Legal