javax.crypto
Class SecretKeyFactorySpi
java.lang.Object
|
+--javax.crypto.SecretKeyFactorySpi
- Direct Known Subclasses:
- BlowfishKeyFactory, DESedeKeyFactory, DESKeyFactory, IDEAKeyFactory, PBEKeyFactory, RC4KeyFactory, TwofishKeyFactory
- public abstract class SecretKeyFactorySpi
- extends java.lang.Object
This class defines the Service Provider Interface (SPI) for the
SecretKeyFactory class. All the abstract methods in this class must be
implemented by each cryptographic service provider who wishes to supply the
implementation of a secret-key factory for a particular algorithm.
A provider should document all the key specifications supported by its secret
key factory. For example, the DES secret-key factory supplied by the
"SunJCE" provider supports DESKeySpec as a transparent representation of
DES keys, and that provider's secret-key factory for Triple DES keys supports
DESedeKeySpec as a transparent representation of Triple DES keys.
- See Also:
SecretKey
,
DESKeySpec
,
DESedeKeySpec
Method Summary |
protected abstract SecretKey |
engineGenerateSecret(java.security.spec.KeySpec keySpec)
Generates a SecretKey object from the provided key specification
(key material). |
protected abstract 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 abstract SecretKey |
engineTranslateKey(SecretKey key)
Translates a 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 |
SecretKeyFactorySpi
public SecretKeyFactorySpi()
engineGenerateSecret
protected abstract SecretKey engineGenerateSecret(java.security.spec.KeySpec keySpec)
throws java.security.spec.InvalidKeySpecException
- Generates a SecretKey object from the provided key specification
(key material).
- Parameters:
keySpec
- the specification (key material) of the secret key- Returns:
- the secret key
- Throws:
- java.security.spec.InvalidKeySpecException - if the given key specification
is inappropriate for this key factory to produce a secret key.
engineGetKeySpec
protected abstract 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.
- Parameters:
key
- the keykeySpec
- 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).
engineTranslateKey
protected abstract SecretKey engineTranslateKey(SecretKey key)
throws java.security.InvalidKeyException
- Translates a 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.