|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.rim.device.api.crypto.AESDecryptorEngine
public final class AESDecryptorEngine
Creates an Advanced Encryption Standard (AES) decryption engine. AES is also known as Rijndael. For more information visit the NIST web page. The implementation of AES we give is defined in FIPS 197.
The AES cipher has a variable key length of 128, 192 or 256 bits. The block length is also variable but defaults to 128 bits. The other valid block lengths are 192 and 256 bits.
For a code sample using the AES decryptor engine, click here.
AESEncryptorEngine
,
AESKey
Field Summary | ||
---|---|---|
|
static int |
BLOCK_LENGTH_DEFAULT
This is the default block length of a AES key |
Constructor Summary | ||
---|---|---|
|
AESDecryptorEngine(AESKey key)
Creates an instance of the AESDecryptorEngine class given
the AES key with a default block length of 16 bytes. |
|
|
AESDecryptorEngine(AESKey key,
int blockLength)
Creates an instance of the AESDecryptorEngine class given
the AES key. |
|
|
AESDecryptorEngine(AESKey key,
int blockLength,
boolean inECMMode)
Creates an instance of the AESDecryptorEngine class given
the AES key. |
Method Summary | ||
---|---|---|
|
void |
decrypt(byte[] ciphertext,
int ciphertextOffset,
byte[] plaintext,
int plaintextOffset)
Decrypts the data given a byte array containing the ciphertext, a byte array to hold the plaintext, and their associated offsets. |
|
String |
getAlgorithm()
Returns the name of the algorithm along with key and block lengths, eg "AES_128_128" ( "AES_" + keyBitLength + "_" + blockBitLength ). |
|
int |
getBlockLength()
Returns the block length that the engine uses when Decrypting data. |
|
int |
getKeyLength()
Returns the length of the key in bytes. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int BLOCK_LENGTH_DEFAULT
Constructor Detail |
---|
public AESDecryptorEngine(AESKey key) throws CryptoTokenException, CryptoUnsupportedOperationException
AESDecryptorEngine
class given
the AES key with a default block length of 16 bytes.
key
- The AESKey that will be used by the cipher to decrypt data.
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.
CryptoUnsupportedOperationException
- Thrown if a call is made to an unsupported operation.public AESDecryptorEngine(AESKey key, int blockLength) throws CryptoTokenException, CryptoUnsupportedOperationException
AESDecryptorEngine
class given
the AES key.
key
- The AESKey that will be used by the cipher to decrypt data.blockLength
- The block length of the cipher in bytes ( the valid lengths are 16, 24 and 32 ).
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.
CryptoUnsupportedOperationException
- Thrown if a call is made to an unsupported operation.public AESDecryptorEngine(AESKey key, int blockLength, boolean inECMMode) throws CryptoTokenException, CryptoUnsupportedOperationException
AESDecryptorEngine
class given
the AES key.
key
- The AESKey that will be used by the cipher to decrypt data.blockLength
- The block length of the cipher in bytes ( the valid lengths are 16, 24 and 32 ).inECMMode
- If true, then use a strong, but slow, AES implementation (including many electromagnetic countermeasures); otherwise, use a faster
implementation that is not as strong (including fewer electromagnetic countermeasures).
CryptoTokenException
- Thrown when a problem occurs with a crypto token or the crypto token is invalid.
CryptoUnsupportedOperationException
- Thrown if a call is made to an unsupported operation.Method Detail |
---|
public String getAlgorithm()
"AES_" + keyBitLength + "_" + blockBitLength
).
getAlgorithm
in interface BlockDecryptorEngine
public int getKeyLength()
public int getBlockLength()
getBlockLength
in interface BlockDecryptorEngine
public void decrypt(byte[] ciphertext, int ciphertextOffset, byte[] plaintext, int plaintextOffset) throws CryptoTokenException
decrypt
in interface BlockDecryptorEngine
ciphertext
- The byte array that contains the ciphertext.ciphertextOffset
- The offset, or position of the first bit, of the data.plaintext
- The byte array that contains the plaintext.plaintextOffset
- The offset, or position of the first bit, of the plaintext.
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.