java AES 解密報錯
java.security.InvalidKeyException: Illegal key size or default parameters
at javax.crypto.Cipher.checkCryptoPerm(Cipher.java:1026)
at javax.crypto.Cipher.implInit(Cipher.java:801)
at javax.crypto.Cipher.chooseProvider(Cipher.java:864)
at javax.crypto.Cipher.init(Cipher.java:1249)
at javax.crypto.Cipher.init(Cipher.java:1186)
定位是 AES-ECB解密JCE無限制權限策問題
Java版本
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (IcedTea 3.12.0) (Alpine 8.212.04-r0)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)
進入容器查看Java路徑
echo $JAVA_HOME
找到policy路徑
docker替換jar包
# jre替換local_policy.jar和US_export_policy.jar JCE無限制權限策
COPY UnlimitedJCEPolicyJDK8/local_policy.jar /usr/lib/jvm/java-1.8-openjdk/jre/lib/security/policy/limited/local_policy.jar
COPY UnlimitedJCEPolicyJDK8/US_export_policy.jar /usr/lib/jvm/java-1.8-openjdk/jre/lib/security/policy/limited/US_export_policy.jar
COPY UnlimitedJCEPolicyJDK8/local_policy.jar /usr/lib/jvm/java-1.8-openjdk/jre/lib/security/policy/unlimited/local_policy.jar
COPY UnlimitedJCEPolicyJDK8/US_export_policy.jar /usr/lib/jvm/java-1.8-openjdk/jre/lib/security/policy/unlimited/US_export_policy.jar
資源下載
JCE Unlimited Strength Jurisdiction Policy Files for JDK/JRE 8 Download (oracle.com)
參考文章
Docker openjdk java AES 解密報錯_無政策限制權限文件jdk8-CSDN博客