Name
KeyFactory
Synopsis
This class
translates asymmetric cryptographic keys between the two
representations used by the Java Security API.
java.security.Key is the opaque,
algorithm-independent representation of a key used by most of the
Security API. java.security.spec.KeySpec is a
marker interface implemented by transparent, algorithm-specific
representations of keys. KeyFactory is used with
public and private keys; see
javax.crypto.SecretKeyFactory if you are working
with symmetric or secret keys.
To
convert a Key to a KeySpec or
vice versa, create a KeyFactory by calling one of
the static getInstance( ) factory methods
specifying the name of the key algorithm (e.g., DSA or RSA) and
optionally specifying the name or Provider object
for the desired provider. Then, use generatePublic(
) or generatePrivate( ) to create a
PublicKey or PrivateKey object
from a corresponding KeySpec. Or use
getKeySpec( ) to obtain a
KeySpec for a given Key.
Because there can be more than one KeySpec
implementation used by a particular cryptographic algorithm, you must
also specify the Class of the
KeySpec you desire.
If you do not need to transport keys portably between applications
and/or systems, you can use a KeyStore to store
and retrieve keys and certificates, avoiding
KeySpec and KeyFactory
altogether.
public class KeyFactory { // Protected Constructors protected KeyFactory(KeyFactorySpi keyFacSpi, Provider provider, String algorithm); // Public Class Methods public static KeyFactory getInstance ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access