public class AESCipherImpl extends java.lang.Object implements URIConverter.Cipher
EMF implementation for the URIConverter.Cipher
interface using
the AES encryption algorithm.
This shows how this class can be used:
Map options = new HashMap(); options.put(Resource.OPTION_CIPHER, new AESCipherImpl("12345")); // "That's amazing! I've got the same combination on my luggage!" resource.save(options); resource.load(options);
Constructor and Description |
---|
AESCipherImpl(java.lang.String password) |
Modifier and Type | Method and Description |
---|---|
java.io.InputStream |
decrypt(java.io.InputStream in)
Decrypts the specified input stream.
|
java.io.OutputStream |
encrypt(java.io.OutputStream outputStream)
Encrypts the specified output stream.
|
void |
finish(java.io.InputStream in)
This method is invoked after the decrypted input stream is used
allowing the Cipher implementation to do any maintenance work required,
such as flushing internal cache.
|
void |
finish(java.io.OutputStream out)
This method is invoked after the encrypted output stream is used
allowing the Cipher implementation to do any maintenance work required,
such as flushing an internal cache.
|
int |
getKeysize() |
void |
setKeysize(int keysize)
Sets the key size to be used when creating the AES key.
|
public AESCipherImpl(java.lang.String password) throws java.lang.Exception
java.lang.Exception
public void setKeysize(int keysize)
Sets the key size to be used when creating the AES key. Using anything larger than 128 may make the data file non-portable.
The key size cannot be changed after this Cipher is used.
public int getKeysize()
public java.io.OutputStream encrypt(java.io.OutputStream outputStream) throws java.lang.Exception
URIConverter.Cipher
encrypt
in interface URIConverter.Cipher
java.lang.Exception
public void finish(java.io.OutputStream out) throws java.lang.Exception
URIConverter.Cipher
finish
in interface URIConverter.Cipher
out
- the encrypted stream returned by URIConverter.Cipher.encrypt(OutputStream)
.java.lang.Exception
public java.io.InputStream decrypt(java.io.InputStream in) throws java.lang.Exception
URIConverter.Cipher
decrypt
in interface URIConverter.Cipher
java.lang.Exception
public void finish(java.io.InputStream in) throws java.lang.Exception
URIConverter.Cipher
finish
in interface URIConverter.Cipher
in
- the stream returned by URIConverter.Cipher.decrypt(InputStream)
.java.lang.Exception