net.rim.device.api.crypto
Class CAST128CryptoToken

java.lang.Object
  extended by net.rim.device.api.crypto.CAST128CryptoToken
All Implemented Interfaces:
CryptoToken, SymmetricCryptoToken, Persistable, Persistable

public abstract class CAST128CryptoToken
extends Object
implements SymmetricCryptoToken, Persistable

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.

Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0

Constructor Summary
Category: Signed protected CAST128CryptoToken()
          Creates a new CAST128CryptoToken object.
 
Method Summary
Category: Signed  CryptoTokenSymmetricKeyData createKey()
          Create a key for the crypto token.
Category: Signed  void decrypt(CryptoTokenCipherContext context, byte[] ciphertext, int ciphertextOffset, byte[] plaintext, int plaintextOffset)
          Decrypts an array of ciphertext using the crypto token.
Category: Signed  void deleteKey(CryptoTokenSymmetricKeyData data)
          Delete the specified key on the crypto token.
Category: Signed  void encrypt(CryptoTokenCipherContext context, byte[] plaintext, int plaintextOffset, byte[] ciphertext, int ciphertextOffset)
          Encrypts an array of plaintext using the crypto token.
Category: Signed  byte[] extractKeyData(CryptoTokenSymmetricKeyData data)
          Returns the key data contained in the crypto token.
Category: Signed  String getAlgorithm()
          Returns the algorithm supported by this token, ie "CAST128".
Category: Signed  CryptoTokenCipherContext initializeDecrypt(CryptoTokenSymmetricKeyData data)
          Initializes the token for decryption.
Category: Signed  CryptoTokenCipherContext initializeEncrypt(CryptoTokenSymmetricKeyData data)
          Initializes the token for encryption.
Category: Signed  CryptoTokenSymmetricKeyData injectKey(byte[] key, int offset)
          Inserts the key onto the crypto token.
Category: Signed  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

CAST128CryptoToken

protected CAST128CryptoToken()
Creates a new CAST128CryptoToken object.

This constructor is not used.

Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0


Method Detail

getAlgorithm

public final String getAlgorithm()
Returns the algorithm supported by this token, ie "CAST128".

Specified by:
getAlgorithm in interface CryptoToken
Returns:
A String that represents the name of the algorithm.
Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0

providesUserAuthentication

public 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. This default implementation returns false.

Specified by:
providesUserAuthentication in interface CryptoToken
Returns:
true if the user will be authenticated by the token itself.
Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0

initializeEncrypt

public CryptoTokenCipherContext initializeEncrypt(CryptoTokenSymmetricKeyData data)
                                           throws CryptoTokenException,
                                                  CryptoUnsupportedOperationException
Initializes the token for encryption.

Parameters:
data - The symmetric key data contained on the crypto token.
Returns:
The cipher context.
Throws:
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.
Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0

encrypt

public void encrypt(CryptoTokenCipherContext context,
                    byte[] plaintext,
                    int plaintextOffset,
                    byte[] ciphertext,
                    int ciphertextOffset)
             throws CryptoTokenException
Encrypts an array of plaintext using the crypto token.

Parameters:
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.
Throws:
CryptoTokenException - Thrown if an error occurs with the crypto token or the crypto token is invalid.
Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0

initializeDecrypt

public CryptoTokenCipherContext initializeDecrypt(CryptoTokenSymmetricKeyData data)
                                           throws CryptoTokenException,
                                                  CryptoUnsupportedOperationException
Initializes the token for decryption.

Parameters:
data - The symmetric key data contained on the crypto token.
Returns:
The cipher context.
Throws:
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.
Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0

decrypt

public void decrypt(CryptoTokenCipherContext context,
                    byte[] ciphertext,
                    int ciphertextOffset,
                    byte[] plaintext,
                    int plaintextOffset)
             throws CryptoTokenException
Decrypts an array of ciphertext using the crypto token.

Parameters:
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.
Throws:
CryptoTokenException - Thrown if an error occurs with the crypto token or the crypto token is invalid.
Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0

extractKeyData

public byte[] extractKeyData(CryptoTokenSymmetricKeyData data)
                      throws CryptoTokenException,
                             CryptoUnsupportedOperationException
Returns the key data contained in the crypto token.

Parameters:
data - The symmetric data contained on the crypto token.
Returns:
A byte array containing the key data.
Throws:
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.
Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0

createKey

public CryptoTokenSymmetricKeyData createKey()
                                      throws CryptoTokenException,
                                             CryptoUnsupportedOperationException
Create a key for the crypto token.

Returns:
The key data.
Throws:
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.
Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0

injectKey

public CryptoTokenSymmetricKeyData injectKey(byte[] key,
                                             int offset)
                                      throws CryptoTokenException,
                                             CryptoUnsupportedOperationException
Inserts the key onto the crypto token.

Parameters:
key - A byte array containing the key.
offset - The offset, or start position, of the key data within the array.
Returns:
The key data.
Throws:
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.
Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0

deleteKey

public void deleteKey(CryptoTokenSymmetricKeyData data)
               throws CryptoTokenException,
                      CryptoUnsupportedOperationException
Delete the specified key on the crypto token.

Parameters:
data - The symmetric key data contained within the token.
Throws:
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.
Category:
Signed: This element is only accessible by signed applications. If you intend to use this element, please visit http://www.blackberry.com/go/codesigning to obtain a set of code signing keys. Code signing is only required for applications running on BlackBerry smartphones; development on BlackBerry Smartphone Simulators can occur without code signing.
Since:
BlackBerry API 3.6.0





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.