javax.crypto
Class SecretKeyFactorySpi

java.lang.Object
  extended by javax.crypto.SecretKeyFactorySpi

public abstract class SecretKeyFactorySpi
extends Object

The Service Provider Interface (SPI) for the SecretKeyFactory class.

Providers wishing to implement a secret key factory must subclass this and provide an appropriate implementation for all the abstract methods below, and provide an appropriate entry in the master Provider class (the service name for secret key factories is "SecretKeyFactory").

Since:
1.4
See Also:
SecretKeyFactory

Constructor Summary
SecretKeyFactorySpi()
          Create a new secret key factory SPI.
 
Method Summary
protected abstract  SecretKey engineGenerateSecret(KeySpec keySpec)
          Translate a java.security.KeySpec into a SecretKey.
protected abstract  KeySpec engineGetKeySpec(SecretKey key, Class keySpec)
          Translate a SecretKey into a java.security.KeySpec.
protected abstract  SecretKey engineTranslateKey(SecretKey key)
          Translate a secret key into a different representation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SecretKeyFactorySpi

public SecretKeyFactorySpi()
Create a new secret key factory SPI.

Method Detail

engineGenerateSecret

protected abstract SecretKey engineGenerateSecret(KeySpec keySpec)
                                           throws InvalidKeySpecException
Translate a java.security.KeySpec into a SecretKey.

Parameters:
keySpec - The key specification.
Returns:
The secret key.
Throws:
InvalidKeySpecException - If the key specification cannot be translated into a secret key.

engineGetKeySpec

protected abstract KeySpec engineGetKeySpec(SecretKey key,
                                            Class keySpec)
                                     throws InvalidKeySpecException
Translate a SecretKey into a java.security.KeySpec.

Parameters:
key - The secret key.
keySpec - The desired key specification class.
Returns:
The key specification.
Throws:
InvalidKeySpecException - If the secret key cannot be translated into the desired key specification.

engineTranslateKey

protected abstract SecretKey engineTranslateKey(SecretKey key)
                                         throws InvalidKeyException
Translate a secret key into a different representation.

Parameters:
key - The secret key to translate.
Returns:
The translated key.
Throws:
InvalidKeyException - If the specified secret key cannot be translated.