Class KeyRep
- java.lang.Object
 -  
- java.security.KeyRep
 
 
- All Implemented Interfaces:
 Serializable
public class KeyRep extends Object implements Serializable
Standardized representation for serialized Key objects.
Note that a serialized Key may contain sensitive information which should not be exposed in untrusted environments. See the Security Appendix of the Serialization Specification for more information.
- Since:
 - 1.5
 - See Also:
 - 
Key,KeyFactory,SecretKeySpec,X509EncodedKeySpec,PKCS8EncodedKeySpec, Serialized Form 
Nested Class Summary
| Modifier and Type | Class | Description | 
|---|---|---|
static class  |  KeyRep.Type |    Key type.  |  
Constructor Summary
| Constructor | Description | 
|---|---|
KeyRep(KeyRep.Type type,
      String algorithm,
      String format,
      byte[] encoded) |    Construct the alternate Key class.  |  
Method Summary
| Modifier and Type | Method | Description | 
|---|---|---|
protected Object |  readResolve() |    Resolve the Key object.  |  
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait  Constructor Detail
KeyRep
public KeyRep(KeyRep.Type type,
              String algorithm,
              String format,
              byte[] encoded) Construct the alternate Key class.
- Parameters:
 - 
type- either one of Type.SECRET, Type.PUBLIC, or Type.PRIVATE - 
algorithm- the algorithm returned fromKey.getAlgorithm() - 
format- the encoding format returned fromKey.getFormat() - 
encoded- the encoded bytes returned fromKey.getEncoded() - Throws:
 - 
NullPointerException- if type isnull, if algorithm isnull, if format isnull, or if encoded isnull 
Method Detail
readResolve
protected Object readResolve()
                      throws ObjectStreamException Resolve the Key object.
This method supports three Type/format combinations:
- Type.SECRET/"RAW" - returns a SecretKeySpec object constructed using encoded key bytes and algorithm
 - Type.PUBLIC/"X.509" - gets a KeyFactory instance for the key algorithm, constructs an X509EncodedKeySpec with the encoded key bytes, and generates a public key from the spec
 - Type.PRIVATE/"PKCS#8" - gets a KeyFactory instance for the key algorithm, constructs a PKCS8EncodedKeySpec with the encoded key bytes, and generates a private key from the spec
 
- Returns:
 - the resolved Key object
 - Throws:
 - 
ObjectStreamException- if the Type/format combination is unrecognized, if the algorithm, key format, or encoded key bytes are unrecognized/invalid, of if the resolution of the key fails for any reason