Class AesCipherService

java.lang.Object
All Implemented Interfaces:
CipherService

CipherService using the AES cipher algorithm for all encryption, decryption, and key operations.

The AES algorithm can support key sizes of 128, 192 and 256 bits*. This implementation defaults to 128 bits.

Note that this class retains changes the parent class's default CBC modeto GCM of operation instead of the typical JDK default of ECB. ECB should not be used in security-sensitive environments because ECB does not allow for initialization vectors, which are considered necessary for strong encryption. See the parent class's JavaDoc and the JcaCipherService JavaDoc for more on why the JDK default should not be used and is not used in this implementation.

* Generating and using AES key sizes greater than 128 require installation of the Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy files.

Since:
1.0