|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.security.KeyFactory
public class KeyFactory
Key factories are used to convert keys (opaque cryptographic keys of type
Key
) into key specifications (transparent representations of the
underlying key material).
Key factories are bi-directional. They allow a key class to be converted
into a key specification (key material) and back again. For example DSA
public keys can be specified as DSAPublicKeySpec
or
X509EncodedKeySpec
. A key factory translates these key
specifications.
Key
,
KeySpec
,
DSAPublicKeySpec
,
X509EncodedKeySpec
Constructor Summary | |
---|---|
protected |
KeyFactory(KeyFactorySpi keyFacSpi,
Provider provider,
String algorithm)
Constructs a new instance of KeyFactory with the specified
parameters. |
Method Summary | ||
---|---|---|
PrivateKey |
generatePrivate(KeySpec keySpec)
Generates a private key from the provided key specification. |
|
PublicKey |
generatePublic(KeySpec keySpec)
Generates a public key from the provided key specification. |
|
String |
getAlgorithm()
Returns the name of the algorithm used. |
|
static KeyFactory |
getInstance(String algorithm)
Returns a new instance of KeyFactory representing the
specified key factory. |
|
static KeyFactory |
getInstance(String algorithm,
Provider provider)
Returns a new instance of KeyFactory representing the
specified key factory from the designated Provider . |
|
static KeyFactory |
getInstance(String algorithm,
String provider)
Returns a new instance of KeyFactory representing the
specified key factory from the specified provider. |
|
|
getKeySpec(Key key,
Class<T> keySpec)
Returns a key specification for the given key. |
|
Provider |
getProvider()
Returns the Provider of this instance. |
|
Key |
translateKey(Key key)
Translates the key from an unknown or untrusted provider into a key from this key factory. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
protected KeyFactory(KeyFactorySpi keyFacSpi, Provider provider, String algorithm)
KeyFactory
with the specified
parameters.
keyFacSpi
- the key factory to use.provider
- the provider to use.algorithm
- the name of the key algorithm to use.Method Detail |
---|
public static KeyFactory getInstance(String algorithm) throws NoSuchAlgorithmException
KeyFactory
representing the
specified key factory.
algorithm
- the name of algorithm to use.
NoSuchAlgorithmException
- if the algorithm is not implemented by any
provider.
IllegalArgumentException
- if algorithm
is
null
or is an empty string.public static KeyFactory getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
KeyFactory
representing the
specified key factory from the specified provider.
algorithm
- the name of algorithm to use.provider
- the name of the provider to use.
NoSuchAlgorithmException
- if the algorithm is not implemented by the
named provider.
NoSuchProviderException
- if the named provider was not found.
IllegalArgumentException
- if either algorithm
or
provider
is null
or empty.public static KeyFactory getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException
KeyFactory
representing the
specified key factory from the designated Provider
.
algorithm
- the name of algorithm to use.provider
- the Provider
to use.
NoSuchAlgorithmException
- if the algorithm is not implemented by
Provider
.
IllegalArgumentException
- if either algorithm
or
provider
is null
, or if
algorithm
is an empty string.Provider
public final Provider getProvider()
Provider
of this instance.
Provider
of this instance.public final String getAlgorithm()
public final PublicKey generatePublic(KeySpec keySpec) throws InvalidKeySpecException
keySpec
- the key specification.
InvalidKeySpecException
- if the key specification is invalid.public final PrivateKey generatePrivate(KeySpec keySpec) throws InvalidKeySpecException
keySpec
- the key specification.
InvalidKeySpecException
- if the key specification is invalid.public final <T extends KeySpec> T getKeySpec(Key key, Class<T> keySpec) throws InvalidKeySpecException
keySpec
identifies the specification class to return the key material in.
key
- the key to use.keySpec
- the specification class to use.
InvalidKeySpecException
- the requested key specification is inappropriate for this key or
the key is unrecognized.public final Key translateKey(Key key) throws InvalidKeyException
key
- the key to translate from.
InvalidKeyException
- if the key cannot be processed by this key factory.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |