|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object
|
+--net.rim.device.api.crypto.AbstractPseudoRandomSource
|
+--net.rim.device.api.crypto.PKCS5KDF1PseudoRandomSource
Provides PKCS #5 Key Derivation Function 1 pseudo random number generation. This is provided for compatibility with existing applications and is not recommended for new applications due to its limited output length. The output length of this KDF is determined by the output length of the supplied digest.
We implemented the PKCS5 KDF1 as per PKCS #5 version 2.0 ( March 1999 ).
PKCS5KDF2PseudoRandomSource| Constructor Summary | ||
|
PKCS5KDF1PseudoRandomSource(byte[] password,
byte[] salt,
int iterationCount)
Creates a PKCS5KDF1PseudoRandomSource object using the specified parameters
and a SHA-1 digest. |
|
|
PKCS5KDF1PseudoRandomSource(byte[] password,
int offset,
int length,
byte[] salt,
int iterationCount)
Creates a PKCS5KDF1PseudoRandomSource object using the supplied parameters
and a SHA-1 digest. |
|
|
PKCS5KDF1PseudoRandomSource(byte[] password,
int offset,
int length,
byte[] salt,
int iterationCount,
Digest digest)
Creates a PKCS5KDF1PseudoRandomSource object using the supplied parameters
and the specified digest. |
|
| Method Summary | ||
|
String |
getAlgorithm()
Returns the name of this PseaudoRandomSource "PKCS5KDF1" This method will always return the String "PKCS5KDF1". |
|
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 (xor) 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 PKCS5KDF1PseudoRandomSource(byte[] password,
byte[] salt,
int iterationCount)
PKCS5KDF1PseudoRandomSource object using the specified parameters
and a SHA-1 digest.
password - The password to use.salt - The salt data that is hashed to generate the key data.iterationCount - The number of times to hash the password and salt.
public PKCS5KDF1PseudoRandomSource(byte[] password,
int offset,
int length,
byte[] salt,
int iterationCount)
PKCS5KDF1PseudoRandomSource object using the supplied parameters
and a SHA-1 digest.
password - The password to use.offset - The offset, or starting position, of the password data
within the array.length - The number of bytes to use as password data.salt - The salt data that is hashed to generate the key data.iterationCount - The number of times to hash the password and salt.
public PKCS5KDF1PseudoRandomSource(byte[] password,
int offset,
int length,
byte[] salt,
int iterationCount,
Digest digest)
PKCS5KDF1PseudoRandomSource object using the supplied parameters
and the specified digest.
password - The password to use.offset - The offset, or starting position, of the password data
within the array.length - The number of bytes to use as password data.salt - The salt data that is hashed to generate the key data. It is recommended that the salt is 8 bytes
or more in length for security.iterationCount - The number of times to hash the password and salt.digest - The digest to use for hashing.| Method Detail |
public String getAlgorithm()
This method will always return the String "PKCS5KDF1".
public int getAvailable()
PseudoRandomSource
For PRNG sources that have an indefinite length but implement
this interface, the value returned is Integer.MAX.
PseudoRandomSourceCryptoTokenException - Thrown when a problem occurs with a crypto token or the crypto token is invalid.public int getMaxAvailable()
PseudoRandomSource
For PRNG sources that have an indefinite length but implement
this interface, the value returned is Integer.MAX.
PseudoRandomSourceCryptoTokenException - Thrown when a problem occurs with a crypto token or the crypto token is invalid.
public void xorBytes(byte[] buffer,
int offset,
int length)
PseudoRandomSourcexorBytes in interface PseudoRandomSourcexorBytes in class AbstractPseudoRandomSource
PseudoRandomSourcebuffer - 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.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Copyright 1999-2007 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.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.