AES加密报错: Illegal key size解决方案
错误信息:
java.security.InvalidKeyException: Illegal key size
原因:
因为美国法律限制,JAVA默认支持AES 128 Bit 的key, 如果你计划使用 192 Bit 或者 256 Bit key, java complier 会抛出 Illegal key size Exception
解决方案有两种:
设置设置key的长度为16个字母和数字的字符串(128 Bit/8=16字符)就不报错了。
替换jdk jar包
Jar下载:
JDK6 解决Jar下载地址:https://pan.baidu.com/s/1eRYPGf4 密码: y9bd
JDK7 解决Jar下载地址: https://pan.baidu.com/s/1gfenrcn 密码: 5n4y
JDK8 解决Jar下载地址:https://pan.baidu.com/s/1cwErKE 密码: 2u6m
Jar替换步骤:
把里面的两个jar包:local_policy.jar 和 US_export_policy.jar 替换掉原来 Jdk 安装目录 $\Java\jre{6|7|8}\lib\security 下的两个jar 包接可以了。
链接:https://www.jianshu.com/p/b97c2b8d49f4
本文详细解析了在使用AES加密过程中遇到的Illegalkeysize异常原因,主要由于JAVA默认只支持128Bit的key。针对使用192Bit或256Bit key的需求,提供了两种解决方案:一是调整key长度为16字符;二是替换JDK中的security jar包,包括具体下载地址及步骤。
733

被折叠的 条评论
为什么被折叠?



