|
|||||||||
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.
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.