au.net.aba.crypto.provider
Class DESKeyFactory

java.lang.Object
  |
  +--javax.crypto.SecretKeyFactorySpi
        |
        +--au.net.aba.crypto.provider.DESKeyFactory

public class DESKeyFactory
extends SecretKeyFactorySpi

This class is used to convert DES keys into a format usable by the ABA provider. The supported KeySpec classes are DESKeySpec and SecretKeySpec. In the case of the SecretKeySpec the key data must be at least 8 bytes long and there must be no encoding on the key data. The supported Key class is DESKey.

This class should not be instantiated directly, instead use the java.security.KeyFactory interface.

See Also:
java.security.KeyFactory

Field Summary
static java.lang.String ident
           
 
Constructor Summary
DESKeyFactory()
           
 
Method Summary
protected  SecretKey engineGenerateSecret(java.security.spec.KeySpec keySpec)
          Generates a DES SecretKey object from the provided key specification (key material).
protected  java.security.spec.KeySpec engineGetKeySpec(SecretKey key, java.lang.Class keySpec)
          Returns a specification (key material) of the given key object in the requested format.
protected  SecretKey engineTranslateKey(SecretKey key)
          Translates a DES key object, whose provider may be unknown or potentially untrusted, into a corresponding key object of this key factory.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ident

public static final java.lang.String ident
Constructor Detail

DESKeyFactory

public DESKeyFactory()
Method Detail

engineGenerateSecret

protected SecretKey engineGenerateSecret(java.security.spec.KeySpec keySpec)
                                  throws java.security.spec.InvalidKeySpecException
Generates a DES SecretKey object from the provided key specification (key material). This class supports the DESKeySpec KeySpec and SecretKeySpec classes.
Throws:
java.security.spec.InvalidKeySpecException - The provided KeySpec was not a DESKeySpec or SecretKeySpec instance.
Overrides:
engineGenerateSecret in class SecretKeyFactorySpi

engineGetKeySpec

protected java.security.spec.KeySpec engineGetKeySpec(SecretKey key,
                                                      java.lang.Class keySpec)
                                               throws java.security.spec.InvalidKeySpecException
Returns a specification (key material) of the given key object in the requested format.

Currently supports conversion from ABA's DES keys to SecretKeySpec or DESKeySpec instances.

Parameters:
key - the key
keySpec - the requested format in which the key material shall be returned
Throws:
java.security.spec.InvalidKeySpecException - if the requested key specification is inappropriate for the given key, or the given key cannot be dealt with (e.g., the given key has an unrecognised format).
Overrides:
engineGetKeySpec in class SecretKeyFactorySpi

engineTranslateKey

protected SecretKey engineTranslateKey(SecretKey key)
                                throws java.security.InvalidKeyException
Translates a DES key object, whose provider may be unknown or potentially untrusted, into a corresponding key object of this key factory.
Parameters:
key - - the key whose provider is unknown or untrusted
Throws:
java.security.InvalidKeyException - if the given key cannot be processed by this key factory.
Overrides:
engineTranslateKey in class SecretKeyFactorySpi