错误提示:JDK出现 java.security.InvalidKeyException: Illegal key size
背景: 由于美国政策的原因,强加密技术是不允许出口给某些国家,所以sun只能在jdk里面实现一些加密,甚至加密强度比较弱,比如AES的密钥只允许128位,为了解锁限制只能下载其他的实现类去替换jdk默认的security provider https://www.oschina.net/question/1268304_2158131 该论坛中有回答
错误解读:不合法的密钥长度。原因是jdk安装时自带的JCE策略文件时受限的, 需要将其替换为 JCE无限制权限策略文件
1、下载安全策略文件进入ORACLE
https://www.oracle.com/technetwork/cn/java/javase/downloads/jce8-download-2133166-zhs.html
找到合适的JDK版本
下载相应版本的JCE无限制权限策略文件,下载后解压,可以看到local_policy.jar和US_export_policy.jar以及readme.txt。
2、替换掉受限的策略文件
如果安装了JRE,将两个jar文件放到%JRE_HOME%\lib\security目录下覆盖原来的文件;
如果安装了JDK,将两个jar文件放到%JDK_HOME%\jre\lib\security目录下覆盖原来文件
3、mac中查看JDK安装目录的可以进入控制台输入该命令:JDK的版本 /usr/libexec/java_home -V 然后使用MV命令进行文件覆盖