|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.rim.device.api.crypto.ECPublicKey
public final class ECPublicKey
Represents a public key in an Elliptic Curve (EC) system.
Elliptic Curve cryptography is defined in various standards including P1363 and ANSI X9.62.
ECCryptoSystem
,
ECPrivateKey
Constructor Summary | ||
---|---|---|
|
ECPublicKey(ECCryptoSystem cryptoSystem,
byte[] data)
Constructs an ECPublicKey object, representing an Elliptic Curve public key, under the given crypto system
using the specified data as the public key's mathematical representation. |
|
|
ECPublicKey(ECCryptoSystem cryptoSystem,
CryptoTokenPublicKeyData cryptoTokenData)
Constructs an ECPublicKey object under the given crypto system associated with the given crypto token. |
Method Summary | ||
---|---|---|
|
boolean |
equals(Object obj)
Indicates whether some other object is "equal to" this one. |
|
String |
getAlgorithm()
Returns the name of the algorithm associated with this key ("EC"). |
|
CryptoSystem |
getCryptoSystem()
Returns the CryptoSystem used by this public key. |
|
CryptoTokenPublicKeyData |
getCryptoTokenData()
Returns the public key data associated with the crypto token. |
|
ECCryptoSystem |
getECCryptoSystem()
Returns a reference to the EC crypto system being used with this instance of the private key class. |
|
ECCryptoToken |
getECCryptoToken()
Returns a reference to the EC crypto token associated with the key. |
|
byte[] |
getPublicKeyData()
Returns a copy of the public key data which is is encoded as an ANSI X9.62 ECPoint object. |
|
byte[] |
getPublicKeyData(boolean compress)
Returns a copy of the public key data, which is encoded as an ANSI X9.62 ECPoint object, with the option to compress the data. |
|
int |
hashCode()
Returns a hash code value for the object. |
|
static boolean |
isCompressed(ECCryptoSystem cryptoSystem,
byte[] publicKeyData)
Returns true if the publicKeyData object represents a compressed
EC public key. |
|
void |
verify()
Performs certain integrity checks on the public key parameters. |
Methods inherited from class java.lang.Object |
---|
getClass, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ECPublicKey(ECCryptoSystem cryptoSystem, byte[] data) throws InvalidKeyException, CryptoTokenException, CryptoUnsupportedOperationException
ECPublicKey
object, representing an Elliptic Curve public key, under the given crypto system
using the specified data as the public key's mathematical representation.
cryptoSystem
- An ECCryptoSystem
object that contains parameters for the ECC computations.data
- A byte array containing the keying material that is to be used for all public key operations.
Note that this data is encoded as an ANSI X9.62 ECPoint object.
InvalidKeyException
- Thrown if the key data is 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.public ECPublicKey(ECCryptoSystem cryptoSystem, CryptoTokenPublicKeyData cryptoTokenData)
ECPublicKey
object under the given crypto system associated with the given crypto token.
cryptoSystem
- An ECCryptoSystem
object that contains parameters for the EC computations.cryptoTokenData
- The cryptographic data on the token.Method Detail |
---|
public String getAlgorithm()
This method will always return the String "EC".
getAlgorithm
in interface Key
public ECCryptoSystem getECCryptoSystem()
getECCryptoSystem
in interface ECKey
public CryptoSystem getCryptoSystem()
PublicKey
CryptoSystem
used by this public key.
getCryptoSystem
in interface PublicKey
public void verify() throws InvalidKeyException
PublicKey
verify
in interface PublicKey
InvalidKeyException
- Thrown if the specified key is invalid or
malformed.public byte[] getPublicKeyData() throws CryptoTokenException, CryptoUnsupportedOperationException
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.public byte[] getPublicKeyData(boolean compress) throws CryptoTokenException, CryptoUnsupportedOperationException
compress
- If true, the data will be compressed. If false, the data
will not be compressed.
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.public static boolean isCompressed(ECCryptoSystem cryptoSystem, byte[] publicKeyData) throws CryptoTokenException, CryptoUnsupportedOperationException
publicKeyData
object represents a compressed
EC public key. The publicKeyData
should be encoded as an ANSI X9.62 ECPoint object.
cryptoSystem
- The EC crypto system associated with the key.publicKeyData
- A byte array containing the public key.
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.public ECCryptoToken getECCryptoToken()
public CryptoTokenPublicKeyData getCryptoTokenData()
public int hashCode()
Object
java.util.Hashtable
.
The general contract of hashCode
is:
hashCode
method on each of
the two objects must produce the same integer result.
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.)
hashCode
in class Object
Object.equals(java.lang.Object)
,
Hashtable
public boolean equals(Object obj)
Object
The equals
method implements an equivalence relation:
x
,
x.equals(x)
should return true
.
x
and
y
, x.equals(y)
should return
true
if and only if y.equals(x)
returns
true
.
x
,
y
, and z
, if x.equals(y)
returns true
and y.equals(z)
returns
true
, then x.equals(z)
should return
true
.
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.
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
).
equals
in class Object
obj
- the reference object with which to compare.
true
if this object is the same as the obj
argument; false
otherwise.Boolean.hashCode()
,
Hashtable
|
|||||||||
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