【开发笔记】Java 中 AES 加密时报错:Illegal key size or default parameters
程序员文章站
2022-07-07 18:55:29
...
Java中使用AES对称加密后,请求报错:
Caused by: java.lang.RuntimeException: java.security.InvalidKeyException: Illegal key size or default parameters
at com.btzh.util.AESUtil.encrypt(AESUtil.java:18)
at com.btzh.service.impl.SiThirdSystemServiceImpl.mapSystemParams(SiThirdSystemServiceImpl.java:32)
at com.btzh.resource.SiThirdSystemResource.mapSystemParams(SiThirdSystemResource.java:41)
... 43 common frames omitted
Caused by: 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)
at com.btzh.util.AESUtil.encrypt(AESUtil.java:15)
原因是美国的出口限制,Sun通过权限文件(local_policy.jar、US_export_policy.jar)做了相应限制。**长度最大128,对于需要更大长度的场景则会抛出上面异常。
解决办法是下载Oracle官方网站上的无政策限制权限文件,下载链接:
jdk8:https://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
下载后将%JAVA_HOME%\jre\lib\security
中的local_policy.jar
和US_export_policy.jar
替换为下载包中的的local_policy.jar
和US_export_policy.jar
。
上一篇: java.security.InvalidKeyException: Illegal key size or default parameters 加密报错的解决办法
下一篇: 记录AES 256算法遇到 Illegal key size or default parameters错的解决办法
推荐阅读
-
aes加密时的Illegal key size or default parameters
-
java.security.InvalidKeyException: Illegal key size or default parameters 加密报错的解决办法
-
【开发笔记】Java 中 AES 加密时报错:Illegal key size or default parameters
-
aes加密时的Illegal key size or default parameters
-
AES加密时报java.security.InvalidKeyException: Illegal key size or default parameters异常
-
AES加密时报java.security.InvalidKeyException: Illegal key size or default parameters异常