因业务需要,对生产应用系统进行扩容后,当启动应用(tomcat)时,其日志(catalina.out)却输出 java.security.InvalidKeyException: Illegal key size 这样的错误
开发在自测和测试在测试环境上测试时都没有遇到这个问题,而在生产上却出现了这个错误,不过生产上的这个服务器是刚部署的
后来就是各种查资料,原因是JDK不兼容,不过奇怪的是都是同样的JDK版本,刚部署的服务器却又问题,也可能是后来替换了得吧

处理办法: 在官方网站下载JCE无限制权限策略文件
JDK7的下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html
JDK8的下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
如果安装了JRE,将两个jar文件放到%JRE_HOME%\lib\security目录下覆盖原来的文件
如果安装了JDK,还要将两个jar文件也放到%JDK_HOME%\jre\lib\security目录下覆盖原来文件

替换JDKlocal_policy.jarUS_export_policy.jar两个文件,然后重启应用即可

1
2
3
4
5
6
7
8
9
10
11
12
[root@localhost ~]# ls /usr/local/jdk/jre/lib/security/ -lrtc
total 144
-rw-r--r-- 1 10 143 0 Aug 16 22:13 trusted.libraries
-rw-r--r-- 1 10 143 98 Aug 16 22:13 javaws.policy
-rw-r--r-- 1 10 143 2593 Aug 16 22:13 java.policy
-rw-r--r-- 1 10 143 158 Aug 16 22:13 javafx.policy
-rw-r--r-- 1 10 143 4054 Aug 16 22:13 blacklist
-rw-r--r-- 1 10 143 18033 Aug 16 22:13 java.security
-rw-r--r-- 1 10 143 98626 Aug 16 22:13 cacerts
-rw-r--r-- 1 root root 2500 Aug 17 20:54 local_policy.jar #替换这文件
-rw-r--r-- 1 root root 2487 Aug 17 20:54 US_export_policy.jar #替换这文件
[root@localhost ~]#

附件:
local_policy.jar
US_export_policy.jar

参考:http://www.cnblogs.com/gdayq/p/5919252.html


本文出自”Jack Wang Blog”:http://www.yfshare.vip/2017/08/22/程序启动报Illegal-key-size错误/