javax.crypto
public class SealedObject extends Object implements Serializable
When the sealed object is ready to be unsealed (and deserialized) the caller may use either
Since: 1.4
Field Summary | |
---|---|
protected byte[] | encodedParams The encoded algorithm parameters. |
Constructor Summary | |
---|---|
SealedObject(Serializable object, Cipher cipher)
Create a new sealed object from a {@link java.io.Serializable}
object and a cipher.
| |
protected | SealedObject(SealedObject so)
Create a new sealed object from another sealed object.
|
Method Summary | |
---|---|
String | getAlgorithm()
Get the name of the algorithm used to seal this object.
|
Object | getObject(Cipher cipher)
Unseal and deserialize this sealed object with a specified (already
initialized) cipher.
|
Object | getObject(Key key)
Unseal and deserialize this sealed object with the specified key.
|
Object | getObject(Key key, String provider)
Unseal and deserialize this sealed object with the specified key,
using a cipher from the named provider.
|
Parameters: object The object to seal. cipher The cipher to encrypt with.
Throws: java.io.IOException If serializing the object fails. javax.crypto.IllegalBlockSizeException If the cipher has no padding and the size of the serialized representation of the object is not a multiple of the cipher's block size.
Parameters: so The other sealed object.
Returns: The algorithm's name.
Parameters: cipher The cipher to decrypt with.
Returns: The original object.
Throws: java.io.IOException If reading fails. java.lang.ClassNotFoundException If deserialization fails. javax.crypto.IllegalBlockSizeException If the cipher has no padding and the encrypted data is not a multiple of the cipher's block size. javax.crypto.BadPaddingException If the padding bytes are incorrect.
Parameters: key The key to decrypt with.
Returns: The original object.
Throws: java.io.IOException If reading fails. java.lang.ClassNotFoundException If deserialization fails. java.security.InvalidKeyException If the supplied key cannot be used to unseal this object. java.security.NoSuchAlgorithmException If the algorithm used to originally seal this object is not available.
Parameters: key The key to decrypt with. provider The name of the provider to use.
Returns: The original object.
Throws: java.io.IOException If reading fails. java.lang.ClassNotFoundException If deserialization fails. java.security.InvalidKeyException If the supplied key cannot be used to unseal this object. java.security.NoSuchAlgorithmException If the algorithm used to originally seal this object is not available from the named provider. java.security.NoSuchProviderException If the named provider does not exist.