SHOW Signed SHOW CryptoExtensionAPI
 

net.rim.device.api.crypto
Class KeyPair

java.lang.Object
  |
  +--net.rim.device.api.crypto.KeyPair
All Implemented Interfaces:
Persistable, Persistable
Direct Known Subclasses:
DHKeyPair, DSAKeyPair, ECKeyPair, KEAKeyPair, RSAKeyPair

public abstract class KeyPair
extends Object
implements Persistable

The KeyPair class generically defines all key pairs (such as ECKeyPair, DSAKeyPair, etc.) that are used in the Crypto API.

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:
JDE 3.6.0

Constructor Summary
 Category: CryptoExtensionAPI Category: Signed protected KeyPair()
          Creates a new KeyPair object.
 Category: CryptoExtensionAPI Category: Signed protected KeyPair(KeyPair keypair)
          Creates a new KeyPair object.
 Category: Signed   KeyPair(PublicKey publicKey, PrivateKey privateKey)
          Creates a new KeyPair object.
 
Method Summary
 Category: Signed  boolean equals(Object obj)
          Indicates whether some other object is "equal to" this one.
 Category: Signed  CryptoSystem getCryptoSystem()
          Returns the crypto system associated with the keys.
 Category: Signed  PrivateKey getPrivateKey()
          Returns the private key associated with this key pair.
 Category: Signed  PublicKey getPublicKey()
          Returns the public key associated with this key pair.
 Category: Signed  int hashCode()
          Returns a hash code value for the object.
 Category: CryptoExtensionAPI Category: Signed  boolean isVerified()
          Returns a boolean that determines if this key pair is verified.
 Category: CryptoExtensionAPI Category: Signed protected  void setKeyPair(PublicKey publicKey, PrivateKey privateKey)
          Sets the key pair.
 Category: CryptoExtensionAPI Category: Signed protected  void verified()
          Sets the verified field to true, indicating that this key pair has been verified.
 Category: Signed abstract  void verify()
          Performs certain integrity checks on the key pair parameters.
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

KeyPair

protected KeyPair()
Creates a new KeyPair object.

This constructor does nothing.

Since:
JDE 3.6.0
Category:
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.
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.

KeyPair

protected KeyPair(KeyPair keypair)
Creates a new KeyPair object.

Since:
JDE 3.6.0
Category:
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.
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.

KeyPair

public KeyPair(PublicKey publicKey,
               PrivateKey privateKey)
        throws InvalidKeyPairException
Creates a new KeyPair object.

Parameters:
publicKey - The publicKey object that represents the public key in the key pair.
privateKey - The privatekey object that represents the private key in the key pair.
Since:
JDE 3.6.0
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.
Method Detail

equals

public boolean equals(Object obj)
Description copied from class: Object
Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation:

  • It is reflexive: for any reference value x, x.equals(x) should return true.
  • It is symmetric: for any reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the object is modified.
  • For any non-null reference value x, x.equals(null) should return false.

The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any reference values x and y, this method returns true if and only if x and y refer to the same object (x==y has the value true).

Overrides:
equals in class Object
Since:
JDE 3.6.0

Following copied from class: Object
Parameters:
obj - the reference object with which to compare.
Returns:
true if this object is the same as the obj argument; false otherwise.
See Also:
Boolean.hashCode(), Hashtable
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.

getCryptoSystem

public CryptoSystem getCryptoSystem()
Returns the crypto system associated with the keys.

Returns:
The CryptoSystem used to create the key pair.
Since:
JDE 3.6.0
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.

getPrivateKey

public PrivateKey getPrivateKey()
Returns the private key associated with this key pair.

Returns:
The PrivateKey associated with the key pair.
Since:
JDE 3.6.0
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.

getPublicKey

public PublicKey getPublicKey()
Returns the public key associated with this key pair.

Returns:
The PublicKey associated with the key pair.
Since:
JDE 3.6.0
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.

hashCode

public int hashCode()
Description copied from class: Object
Returns a hash code value for the object. This method is supported for the benefit of hashtables such as those provided by java.util.Hashtable.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals(Object) method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the Object.equals(java.lang.Object) method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hashtables.

As much as is reasonably practical, the hashCode method defined by class Object does return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the JavaTM programming language.)

Overrides:
hashCode in class Object
Since:
JDE 3.6.0

Following copied from class: Object
Returns:
a hash code value for this object.
See Also:
Object.equals(java.lang.Object), Hashtable
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.

isVerified

public boolean isVerified()
Returns a boolean that determines if this key pair is verified.

Returns:
A boolean that determines if the key pair has been verified.
Since:
JDE 3.6.0
Category:
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.
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.

setKeyPair

protected final void setKeyPair(PublicKey publicKey,
                                PrivateKey privateKey)
Sets the key pair.

This method should only be called from the constructor of subclasses, since it changes the hashcode of the object.

Parameters:
publicKey - The public key.
privateKey - The private key.
Since:
JDE 3.6.0
Category:
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.
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.

verified

protected void verified()
Sets the verified field to true, indicating that this key pair has been verified.
Since:
JDE 3.6.0
Category:
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.
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.

verify

public abstract void verify()
                     throws InvalidKeyException,
                            InvalidCryptoSystemException,
                            InvalidKeyPairException,
                            CryptoTokenException,
                            CryptoUnsupportedOperationException
Performs certain integrity checks on the key pair parameters.

These checks are useful to prevent certain types of attacks that involve modifying the parameters and then using a signed message to calculate the private key parameters.

Throws:
InvalidKeyException - Thrown when one or both of the keys are of an invalid format.
InvalidCryptoSystemException - Thrown if the specified crypto system is invalid.
InvalidKeyPairException - Thrown when the keys are not related.
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 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.



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