If you are performing 256-bit AES encryption in Java, it is likely that you must be very familiar with this exception. Nothing to panic though. This exception is not your fault and you are not doing anything wrong. This exception is thrown because of a restriction imposed by default JDK. On a default JDK installation, AES is limited to 128 bit key size. In order to perform 256-bit AES encryption, you will need to download and install Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files. Here are the steps to fix java.security.InvalidKeyException: Illegal key size exception:
1. Go to Oracle’s website and search for ‘Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files’.
2. Depending upon the Java version installed on your machine, download the zip file and extract it on your drive.
3. From the extracted folder, copy local_policy.jar and US_export_policy.jar files.
4. Go to your_java_installation_directory/jre/lib/security and paste the copied files. These files will already be there, you just need to copy and replace.
5. Refresh your project and you will not encounter this exception anymore.(fingers crossed) 🙂