com.ibm.crypto.provider
Class RC4SecretKeyFactory

java.lang.Object
  extended by javax.crypto.SecretKeyFactorySpi
      extended by com.ibm.crypto.provider.RC4SecretKeyFactory

public final class RC4SecretKeyFactory
extends SecretKeyFactorySpi

This class implements the RC4 key factory of the IBM Provider.


Constructor Summary
RC4SecretKeyFactory()
          Verify the JCE framework in the constructor.
 
Method Summary
protected  SecretKey engineGenerateSecret(KeySpec keySpec)
          Generates a SecretKey object from the provided key specification (key material).
protected  KeySpec engineGetKeySpec(SecretKey key, Class keySpec)
          Returns a specification (key material) of the given key object in the requested format.
protected  SecretKey engineTranslateKey(SecretKey key)
          Translates a key object, whose provider may be unknown or potentially untrusted, into a corresponding key object of this secret-key factory.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RC4SecretKeyFactory

public RC4SecretKeyFactory()
Verify the JCE framework in the constructor.

Throws:
SecurityException - if fails to verify the JCE framework.
Method Detail

engineGenerateSecret

protected SecretKey engineGenerateSecret(KeySpec keySpec)
                                  throws InvalidKeySpecException
Generates a SecretKey object from the provided key specification (key material).

Specified by:
engineGenerateSecret in class SecretKeyFactorySpi
Parameters:
keySpec - the specification (key material) of the secret key
Returns:
the secret key
Throws:
InvalidKeySpecException - if the given key specification is inappropriate for this secret-key factory to produce a secret key.

engineGetKeySpec

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

Specified by:
engineGetKeySpec in class SecretKeyFactorySpi
Parameters:
key - the key
keySpec - the requested format in which the key material shall be returned
Returns:
the underlying key specification (key material) in the requested format
Throws:
InvalidKeySpecException - if the requested key specification is inappropriate for the given key (e.g., the algorithms associated with key and keySpec do not match, or key references a key on a cryptographic hardware device whereas keySpec is the specification of a software-based key), or the given key cannot be dealt with (e.g., the given key has an algorithm or format not supported by this secret-key factory).

engineTranslateKey

protected SecretKey engineTranslateKey(SecretKey key)
                                throws InvalidKeyException
Translates a key object, whose provider may be unknown or potentially untrusted, into a corresponding key object of this secret-key factory.

Specified by:
engineTranslateKey in class SecretKeyFactorySpi
Parameters:
key - the key whose provider is unknown or untrusted
Returns:
the translated key
Throws:
InvalidKeyException - if the given key cannot be processed by this secret-key factory.