java.lang.Object
java.security.KeyRep
- All Implemented Interfaces:
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
-
Constructor Summary
ConstructorDescriptionKeyRep(KeyRep.Type type, String algorithm, String format, byte[] encoded)
Construct the alternate Key class. -
Method Summary
-
Constructor Details
-
KeyRep
Construct the alternate Key class.- Parameters:
type
- either one of Type.SECRET, Type.PUBLIC, or Type.PRIVATEalgorithm
- 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 Details
-
readResolve
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
-