|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.rim.device.api.crypto.CAST128CryptoToken
public abstract class CAST128CryptoToken
Represents a CAST128 crypto token.
Note: This class must be extended in order to override the default implementation.
Note: It is considered good practice to implement the equals and hashCode methods when extending this class. Otherwise, odd behaviour can occur.
(@link CAST128Key More Information on the CAST Key.)
Details on implementing for smart cards.
Constructor Summary | ||
---|---|---|
|
protected |
CAST128CryptoToken()
Creates a new CAST128CryptoToken object. |
Method Summary | ||
---|---|---|
|
CryptoTokenSymmetricKeyData |
createKey()
Create a key for the crypto token. |
|
void |
decrypt(CryptoTokenCipherContext context,
byte[] ciphertext,
int ciphertextOffset,
byte[] plaintext,
int plaintextOffset)
Decrypts an array of ciphertext using the crypto token. |
|
void |
deleteKey(CryptoTokenSymmetricKeyData data)
Delete the specified key on the crypto token. |
|
void |
encrypt(CryptoTokenCipherContext context,
byte[] plaintext,
int plaintextOffset,
byte[] ciphertext,
int ciphertextOffset)
Encrypts an array of plaintext using the crypto token. |
|
byte[] |
extractKeyData(CryptoTokenSymmetricKeyData data)
Returns the key data contained in the crypto token. |
|
String |
getAlgorithm()
Returns the algorithm supported by this token, ie "CAST128". |
|
CryptoTokenCipherContext |
initializeDecrypt(CryptoTokenSymmetricKeyData data)
Initializes the token for decryption. |
|
CryptoTokenCipherContext |
initializeEncrypt(CryptoTokenSymmetricKeyData data)
Initializes the token for encryption. |
|
CryptoTokenSymmetricKeyData |
injectKey(byte[] key,
int offset)
Inserts the key onto the crypto token. |
|
boolean |
providesUserAuthentication()
Returns true if the token provides its own user authentication checks, eg a smartcard will prompt for a password before allowing access to the keys. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
protected CAST128CryptoToken()
CAST128CryptoToken
object.
This constructor is not used.
Method Detail |
---|
public final String getAlgorithm()
getAlgorithm
in interface CryptoToken
public boolean providesUserAuthentication()
providesUserAuthentication
in interface CryptoToken
public CryptoTokenCipherContext initializeEncrypt(CryptoTokenSymmetricKeyData data) throws CryptoTokenException, CryptoUnsupportedOperationException
data
- The symmetric key data contained on the crypto token.
CryptoTokenException
- Thrown if an error occurs with a crypto
token or the crypto token is invalid.
CryptoUnsupportedOperationException
- Thrown if a call is made to
an unsupported operation.public void encrypt(CryptoTokenCipherContext context, byte[] plaintext, int plaintextOffset, byte[] ciphertext, int ciphertextOffset) throws CryptoTokenException
context
- The crypto token context.plaintext
- An array containing the plaintext to be encrypted.plaintextOffset
- The offset, or start position, of the plaintext
data within the array.ciphertext
- An array to contain the ciphertext.ciphertextOffset
- The offset, or starting bit, of the new cipher text
data within the array.
CryptoTokenException
- Thrown if an error occurs with the crypto
token or the crypto token is invalid.public CryptoTokenCipherContext initializeDecrypt(CryptoTokenSymmetricKeyData data) throws CryptoTokenException, CryptoUnsupportedOperationException
data
- The symmetric key data contained on the crypto token.
CryptoTokenException
- Thrown if an error occurs with a crypto
token or the crypto token is invalid.
CryptoUnsupportedOperationException
- Thrown if a call is made to
an unsupported operation.public void decrypt(CryptoTokenCipherContext context, byte[] ciphertext, int ciphertextOffset, byte[] plaintext, int plaintextOffset) throws CryptoTokenException
context
- The crypto token context.ciphertext
- An array containing the ciphertext to decrypt.ciphertextOffset
- The offset, or starting bit, of the ciphertext
data within the array.plaintext
- An array to contain the plaintext.plaintextOffset
- The offset, or start position, of the plaintext
data within the array.
CryptoTokenException
- Thrown if an error occurs with the crypto
token or the crypto token is invalid.public byte[] extractKeyData(CryptoTokenSymmetricKeyData data) throws CryptoTokenException, CryptoUnsupportedOperationException
data
- The symmetric data contained on the crypto token.
CryptoTokenException
- Thrown if an error occurs with a crypto
token or the crypto token is invalid.
CryptoUnsupportedOperationException
- Thrown if a call is made to
an unsupported operation.public CryptoTokenSymmetricKeyData createKey() throws CryptoTokenException, CryptoUnsupportedOperationException
CryptoTokenException
- Thrown if an error occurs with a crypto
token or the crypto token is invalid.
CryptoUnsupportedOperationException
- Thrown if a call is made to
an unsupported operation.public CryptoTokenSymmetricKeyData injectKey(byte[] key, int offset) throws CryptoTokenException, CryptoUnsupportedOperationException
key
- A byte array containing the key.offset
- The offset, or start position, of the key data within the
array.
CryptoTokenException
- Thrown if an error occurs with a crypto
token or the crypto token is invalid.
CryptoUnsupportedOperationException
- Thrown if a call is made to
an unsupported operation.public void deleteKey(CryptoTokenSymmetricKeyData data) throws CryptoTokenException, CryptoUnsupportedOperationException
data
- The symmetric key data contained within the token.
CryptoTokenException
- Thrown if an error occurs with a crypto
token or the crypto token is invalid.
CryptoUnsupportedOperationException
- Thrown if a call is made to
an unsupported operation.
|
|||||||||
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