SHOW Signed SHOW Certicom SHOW CryptoExtensionAPI

net.rim.device.api.crypto
Class DSACryptoToken

java.lang.Object
  |
  +--net.rim.device.api.crypto.DSACryptoToken
All Implemented Interfaces:
AsymmetricCryptoToken, CryptoToken, net.rim.vm.Persistable, Persistable

public abstract class DSACryptoToken
extends Object
implements AsymmetricCryptoToken

An interface for DSA cryptographic tokens to implement.

The RIM Crypto API will call this interface when a DSA operation is to be performed on a DSA enabled cryptographic token. Note: This class must be extended in order to override the default implementation.

Details on implementing for smart cards.

Note: It is considered good practice to implement the equals and hashCode methods when extending this class. Otherwise, odd behaviour can occur.

Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim

Since:
JDE 3.6.0
See Also:
CryptoToken, DSACryptoSystem, DSAPrivateKey, DSAPublicKey

Fields inherited from interface net.rim.device.api.crypto.AsymmetricCryptoToken
KEY_GENERATION, PRIVATE_KEY_OPERATION, PUBLIC_KEY_OPERATION
 
Constructor Summary
 Category: Signed Category: CryptoExtensionAPI Category: Certicom protected DSACryptoToken()
          Creates a new DSACryptoToken object.
 
Method Summary
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  DSAKeyPair createDSAKeyPair(CryptoTokenCryptoSystemData cryptoTokenData)
          Returns a copy of the DSA key pair.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  void deleteDSAPrivateKey(CryptoTokenPrivateKeyData data)
          Delete the specified key on the crypto token.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  void deleteDSAPublicKey(CryptoTokenPublicKeyData data)
          Delete the specified key on the crypto token.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  byte[] extractDSAPrivateKeyData(CryptoTokenPrivateKeyData cryptoTokenData)
          Returns the private key data.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  byte[] extractDSAPublicKeyData(CryptoTokenPrivateKeyData cryptoTokenData)
          Returns the public key data.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  byte[] extractDSAPublicKeyData(CryptoTokenPublicKeyData cryptoTokenData)
          Returns the public key data.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  String getAlgorithm()
          Returns the algorithm supported by this token, ie "DSA".
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  int getDSACryptoSystemBitLength(CryptoTokenCryptoSystemData cryptoTokenData)
          Returns the number of bits (aka the "strength") of the crypto system, eg 1024.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  CryptoTokenCryptoSystemData getDSACryptoSystemData(byte[] p, byte[] q, byte[] g, String name)
          Creates a crypto system associated with this token.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  byte[] getDSACryptoSystemG(CryptoTokenCryptoSystemData cryptoTokenData)
          Returns the g domain parameter.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  String getDSACryptoSystemName(CryptoTokenCryptoSystemData cryptoTokenData)
          Returns a String that indicates the set of parameters in use, eg "WTLS1", or null.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  byte[] getDSACryptoSystemP(CryptoTokenCryptoSystemData cryptoTokenData)
          Returns the p domain parameter.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  byte[] getDSACryptoSystemQ(CryptoTokenCryptoSystemData cryptoTokenData)
          Returns the q domain parameter, or null.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  int getDSAPrivateKeyLength(CryptoTokenCryptoSystemData cryptoTokenData)
          Returns the length of the private key.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  int getDSAPublicKeyLength(CryptoTokenCryptoSystemData cryptoTokenData)
          Returns the length of the public key.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  DSACryptoSystem[] getSuggestedDSACryptoSystems()
          Returns a list of supported or suggested crypto systems.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  CryptoTokenPrivateKeyData injectDSAPrivateKey(CryptoTokenCryptoSystemData cryptoSystemData, byte[] data)
          Inserts the raw private key data into the crypto token.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  CryptoTokenPublicKeyData injectDSAPublicKey(CryptoTokenCryptoSystemData cryptoSystemData, byte[] data)
          Inserts the raw public key data into the crypto token.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  boolean isSupported(CryptoSystem cryptoSystem, int operation)
          Indicates whether the chosen operation is supported by this CryptoToken using the provided CryptoSytem.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  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.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  void signDSA(CryptoTokenCryptoSystemData cryptoSystemData, CryptoTokenPrivateKeyData privateKeyData, byte[] digest, int digestOffset, int digestLength, byte[] r, int rOffset, byte[] s, int sOffset)
          Generates a DSA signature.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  boolean verifyDSA(CryptoTokenCryptoSystemData cryptoSystemData, CryptoTokenPublicKeyData publicKeyData, byte[] digest, int digestOffset, int digestLength, byte[] r, int rOffset, byte[] s, int sOffset)
          Verifies a DSA signature.
 Category: Signed Category: CryptoExtensionAPI Category: Certicom  void verifyDSACryptoSystemData(CryptoTokenCryptoSystemData cryptoSystemData)
          Checks the validity of the crypto system parameters represented by this token.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DSACryptoToken

protected DSACryptoToken()
Creates a new DSACryptoToken object.

This constructor is not used.

Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim

Method Detail

getAlgorithm

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

This method will always return the String "DSA".

Returns:
A String that represents the name of the algorithm.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


getDSACryptoSystemBitLength

public int getDSACryptoSystemBitLength(CryptoTokenCryptoSystemData cryptoTokenData)
                                throws CryptoTokenException,
                                       CryptoUnsupportedOperationException
Returns the number of bits (aka the "strength") of the crypto system, eg 1024.

Parameters:
cryptoTokenData - The data associated with the crypto token.
Returns:
An integer representing the bit length of the crypto system.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


getDSACryptoSystemName

public String getDSACryptoSystemName(CryptoTokenCryptoSystemData cryptoTokenData)
                              throws CryptoTokenException,
                                     CryptoUnsupportedOperationException
Returns a String that indicates the set of parameters in use, eg "WTLS1", or null.

Parameters:
cryptoTokenData - The data associated with the crypto token.
Returns:
A String that represents the name of the crypto system.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


getDSACryptoSystemP

public byte[] getDSACryptoSystemP(CryptoTokenCryptoSystemData cryptoTokenData)
                           throws CryptoTokenException,
                                  CryptoUnsupportedOperationException
Returns the p domain parameter.

Parameters:
cryptoTokenData - The data associated with the crypto token.
Returns:
A byte array containing the domain parameter, p.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


getDSACryptoSystemQ

public byte[] getDSACryptoSystemQ(CryptoTokenCryptoSystemData cryptoTokenData)
                           throws CryptoTokenException,
                                  CryptoUnsupportedOperationException
Returns the q domain parameter, or null.

Parameters:
cryptoTokenData - The data associated with the crypto token.
Returns:
A byte array containing the domain parameter, q.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


getDSACryptoSystemG

public byte[] getDSACryptoSystemG(CryptoTokenCryptoSystemData cryptoTokenData)
                           throws CryptoTokenException,
                                  CryptoUnsupportedOperationException
Returns the g domain parameter.

Parameters:
cryptoTokenData - The data associated with the crypto token.
Returns:
A byte array containing the domain parameter, g.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


getDSAPublicKeyLength

public int getDSAPublicKeyLength(CryptoTokenCryptoSystemData cryptoTokenData)
                          throws CryptoTokenException,
                                 CryptoUnsupportedOperationException
Returns the length of the public key.

Parameters:
cryptoTokenData - The data associated with the crypto token.
Returns:
An integer representing the length of the public key.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


getDSAPrivateKeyLength

public int getDSAPrivateKeyLength(CryptoTokenCryptoSystemData cryptoTokenData)
                           throws CryptoTokenException,
                                  CryptoUnsupportedOperationException
Returns the length of the private key.

Parameters:
cryptoTokenData - The data associated with the crypto token.
Returns:
An integer representing the length of the key.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


extractDSAPublicKeyData

public byte[] extractDSAPublicKeyData(CryptoTokenPublicKeyData cryptoTokenData)
                               throws CryptoTokenException,
                                      CryptoUnsupportedOperationException
Returns the public key data.

Parameters:
cryptoTokenData - The data associated with the crypto token.
Returns:
A byte array containing the public key data.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


extractDSAPublicKeyData

public byte[] extractDSAPublicKeyData(CryptoTokenPrivateKeyData cryptoTokenData)
                               throws CryptoTokenException,
                                      CryptoUnsupportedOperationException
Returns the public key data.

Parameters:
cryptoTokenData - The data associated with the crypto token.
Returns:
A byte array containing the public key data.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


extractDSAPrivateKeyData

public byte[] extractDSAPrivateKeyData(CryptoTokenPrivateKeyData cryptoTokenData)
                                throws CryptoTokenException,
                                       CryptoUnsupportedOperationException
Returns the private key data.

Parameters:
cryptoTokenData - The data associated with the crypto token.
Returns:
A byte array containing the private key data.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


getDSACryptoSystemData

public CryptoTokenCryptoSystemData getDSACryptoSystemData(byte[] p,
                                                          byte[] q,
                                                          byte[] g,
                                                          String name)
                                                   throws CryptoTokenException,
                                                          CryptoUnsupportedOperationException,
                                                          InvalidCryptoSystemException,
                                                          UnsupportedCryptoSystemException
Creates a crypto system associated with this token.

Parameters:
p - The domain parameter p.
q - The domain parameter q.
g - The domain parameter g.
name - The name of the crypto system.
Returns:
The crypto system data.
Throws:
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.
InvalidCryptoSystemException - Thrown if one or all of the domain parameters are invalid.
UnsupportedCryptoSystemException - Thrown if one or all of the specified domain paramters are invalid.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


verifyDSACryptoSystemData

public void verifyDSACryptoSystemData(CryptoTokenCryptoSystemData cryptoSystemData)
                               throws CryptoTokenException,
                                      CryptoUnsupportedOperationException,
                                      InvalidCryptoSystemException
Checks the validity of the crypto system parameters represented by this token.

This method is called by DSACryptoSystem.verify() after it has gone through the integrity tests for the DSACryptoSystem object.

Parameters:
cryptoSystemData - The crypto system data to be verified.
Throws:
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.
InvalidCryptoSystemException - Thrown if the specified crypto system is improperly formatted or invalid.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


getSuggestedDSACryptoSystems

public DSACryptoSystem[] getSuggestedDSACryptoSystems()
                                               throws CryptoTokenException,
                                                      CryptoUnsupportedOperationException
Returns a list of supported or suggested crypto systems.

This list does not have to be exhaustive.

Returns:
The DSA crypto system.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


createDSAKeyPair

public DSAKeyPair createDSAKeyPair(CryptoTokenCryptoSystemData cryptoTokenData)
                            throws CryptoTokenException,
                                   CryptoUnsupportedOperationException
Returns a copy of the DSA key pair.

Parameters:
cryptoTokenData - The data associated with the crypto token.
Returns:
The DSA key pair.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


injectDSAPublicKey

public CryptoTokenPublicKeyData injectDSAPublicKey(CryptoTokenCryptoSystemData cryptoSystemData,
                                                   byte[] data)
                                            throws InvalidKeyException,
                                                   CryptoTokenException,
                                                   CryptoUnsupportedOperationException
Inserts the raw public key data into the crypto token.

Parameters:
cryptoSystemData - The data associated with the crypto token.
data - A byte array containing the key data.
Returns:
The public key data.
Throws:
InvalidKeyException - Thrown if the specified key is improperly formatted or invalid.
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


injectDSAPrivateKey

public CryptoTokenPrivateKeyData injectDSAPrivateKey(CryptoTokenCryptoSystemData cryptoSystemData,
                                                     byte[] data)
                                              throws InvalidKeyException,
                                                     CryptoTokenException,
                                                     CryptoUnsupportedOperationException
Inserts the raw private key data into the crypto token.

Parameters:
cryptoSystemData - The data associated with the crypto token.
data - A byte array containing the key data.
Returns:
The private key data.
Throws:
InvalidKeyException - Thrown if the specified key is improperly formatted or invalid.
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


deleteDSAPublicKey

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

Parameters:
data - The 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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


deleteDSAPrivateKey

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

Parameters:
data - The 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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


signDSA

public void signDSA(CryptoTokenCryptoSystemData cryptoSystemData,
                    CryptoTokenPrivateKeyData privateKeyData,
                    byte[] digest,
                    int digestOffset,
                    int digestLength,
                    byte[] r,
                    int rOffset,
                    byte[] s,
                    int sOffset)
             throws CryptoTokenException,
                    CryptoUnsupportedOperationException
Generates a DSA signature.
Parameters:
cryptoSystemData - The data associated with the crypto token.
privateKeyData - The DSA private key used to sign the data.
digest - The digest data to be signed.
digestOffset - The offset in the digest buffer where digest data begins.
digestLength - The length of the digest to be signed.
r - A buffer to hold return result of r.
rOffset - The offset to begin the writing the result r in the buffer r.
s - A buffer to hold return result of s.
sOffset - The offset to begin the writing the result s in the buffer s.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


verifyDSA

public boolean verifyDSA(CryptoTokenCryptoSystemData cryptoSystemData,
                         CryptoTokenPublicKeyData publicKeyData,
                         byte[] digest,
                         int digestOffset,
                         int digestLength,
                         byte[] r,
                         int rOffset,
                         byte[] s,
                         int sOffset)
                  throws CryptoTokenException,
                         CryptoUnsupportedOperationException
Verifies a DSA signature.

Parameters:
cryptoSystemData - The data associated with the crypto token.
publicKeyData - The DSA public key used to verify the data.
digest - The digest data to be signed.
digestOffset - The offset in the digest buffer where digest data begins.
digestLength - The length of the digest to be signed.
r - A buffer to hold return result of r.
rOffset - The offset to begin the writing the result r in the buffer r.
s - A buffer to hold return result of s.
sOffset - The offset to begin the writing the result s in the buffer s.
Returns:
A boolean that determines the validity of the certificate.
Throws:
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.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim


isSupported

public boolean isSupported(CryptoSystem cryptoSystem,
                           int operation)
Indicates whether the chosen operation is supported by this CryptoToken using the provided CryptoSytem.

Parameters:
cryptoSystem - The CryptoSystem to check against.
operation - An integer, either KEY_GENERATION, PUBLIC_KEY_OPERATION, PRIVATE_KEY_OPERATION, or some other value specific to the cryptosystem that indicates the operation to be checked.
Since:
JDE 3.6.0
Category:
Signed: This element is only accessible by signed clients. If you intend to use this element, please contact RIM to establish the necessary agreements that will allow you to have your COD files signed. Signing is only required for use on the device, development under the JDE can occur without signing the CODs.
CryptoExtensionAPI: This element is part of the Crypto Extension API. These APIs are intended for parties interested in extending the security provider frameworks, such as integrating a new security medium.
Certicom: This element is part of the Certicom Cryptography APIs. The Certicom Cryptography APIs provide the tools you need, including ECC based algorithms, to integrate high performance data security into your applications, such as public key data encryption and decryption, digital signatures, and data authentication. Since the Certicom Cryptography API is already in the JDE, its use will remove the need for you to engage in time and resource intensive security integration so that you have lower development costs and a faster time to market. Use of the Certicom Cryptography API requires a license from Certicom. Please contact Certicom directly for more information on licensing fees and conditions.

Certicom Contact Information

Phone:613-254-9258

Email: sales@certicom.com

Website: http://www.certicom.com/rim



Copyright 1999-2004 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.