|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectnet.rim.device.api.crypto.SymmetricKeyFactory
public abstract class SymmetricKeyFactory
Contains the functionality for a high level approach to creating symmetric keys.
For more information on the cryptographic algorithms supported by this factory, see Crypto Algorithms.
NOTE: The implementation of this class may return an object that uses functionality provided by Certicom. In such cases, the calling code must have a license with Certicom, and be signed with the RCC code signing key. If the RCC code signature check fails, then a ControlledAccessException is thrown. For more information on the classes that use technology from Certicom, see Crypto Algorithms.
ControlledAccessException| Constructor Summary | ||
|---|---|---|
|
protected |
SymmetricKeyFactory()
Constructs a SymmetricKeyFactory object. |
| Method Summary | ||
|---|---|---|
|
protected abstract SymmetricKey |
create(String algorithm,
byte[] data,
int offset,
int length)
This method is called by getInstance, and performs the
actual creation of the key. |
|
static Enumeration |
getAlgorithms()
Returns an Enumeration of String representing all of the
registered algorithms with this factory. |
|
protected abstract int |
getDefaultKeyLength(String algorithm)
This method is called by getInstance, and retrieves the default
length of a key if the key length is not specified in the algorithm string. |
|
protected abstract String[] |
getFactoryAlgorithms()
Called to determine what SymmetricKey's are supported. |
|
static SymmetricKey |
getInstance(String algorithm)
Constructs and returns a new random SymmetricKey object. |
|
static SymmetricKey |
getInstance(String algorithm,
byte[] data,
int offset)
Constructs and returns a new SymmetricKey object. |
|
static SymmetricKey |
getInstance(String algorithm,
byte[] data,
int offset,
int length)
Constructs and returns a new SymmetricKey object. |
|
static void |
register(SymmetricKeyFactory factory)
Registers the given SymmetricKeyFactory. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
protected SymmetricKeyFactory()
SymmetricKeyFactory object.
This constructor is not used.
| Method Detail |
|---|
public static SymmetricKey getInstance(String algorithm,
byte[] data,
int offset,
int length)
throws NoSuchAlgorithmException
SymmetricKey object.
A SymmetricKeyFactory object is selected based on algorithm.
In case of a conflict between keylength passed into the method and that indicated by algorithm, the length indicated in the string is used.
algorithm - The name of the SymmetricKey to construct, eg "DES", "TripleDES".data - The key data.offset - The start, or initial position, of the key data within the array.length - The length, in bytes, of the amount of key material available to the SymmetricKey.
SymmetricKey object.
NoSuchAlgorithmException - Thrown if the SymmetricKey cannot be
constructed or the specified algorithm is invalid.
public static SymmetricKey getInstance(String algorithm,
byte[] data,
int offset)
throws NoSuchAlgorithmException
SymmetricKey object.
A SymmetricKeyFactory object is selected based on algorithm.
algorithm - The name of the SymmetricKey to construct, eg "DES", "TripleDES".data - The key data.offset - The start, or initial position, of the key data within the
array.
SymmetricKey object.
NoSuchAlgorithmException - Thrown if the SymmetricKey
cannot be constructed or the specified algorithm is invalid.
public static SymmetricKey getInstance(String algorithm)
throws NoSuchAlgorithmException
SymmetricKey object.
A SymmetricKeyFactory object is selected based on algorithm.
algorithm - The name of the SymmetricKey to construct, eg "DES", "TripleDES".
SymmetricKey object.
NoSuchAlgorithmException - Thrown if the SymmetricKey
cannot be constructed or the specified algorithm is invalid.public static void register(SymmetricKeyFactory factory)
SymmetricKeyFactory.
If a previous call registered a SymmetricKeyFactory with the
same algorithm name, then the previous SymmetricKeyFactory
is forgotten.
factory - The factory to be registered.public static Enumeration getAlgorithms()
String representing all of the
registered algorithms with this factory.
protected abstract String[] getFactoryAlgorithms()
SymmetricKey's are supported.
protected abstract SymmetricKey create(String algorithm,
byte[] data,
int offset,
int length)
throws NoSuchAlgorithmException
getInstance, and performs the
actual creation of the key.
algorithm - The algorithm used to encrypt the data.data - The byte array containing the key data.offset - The start, or initial position, of the data within the
array.length - The number of bytes to use for the key.
SymmetricKey object.
NoSuchAlgorithmException - Thrown if the SymmetricKey
cannot be constructed or the specified algorithm is invalid.
protected abstract int getDefaultKeyLength(String algorithm)
throws NoSuchAlgorithmException
getInstance, and retrieves the default
length of a key if the key length is not specified in the algorithm string.
This is more applicable for variable length keys (ie. AES) than fixed length ciphers
like DES.
algorithm - The algorithm used to determine default key length.
NoSuchAlgorithmException - Thrown if the specified algorithm is invalid.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
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.