Java企业微信开发_Exception_02_java.security.InvalidKeyException: Illegal key size

今天换了重新装了一个jdk,然后运行昨天还好好的企业微信工程,结果启动的时候就给我报了这么个错:

java.security.InvalidKeyException: Illegal key size

异常解读:

        不合法的密钥长度。原因是jdk安装时自带的JCE策略文件时受限的, 需要将其替换为 JCE无限制权限策略文件。

背景:

       由于美国政策的原因,强加密技术是不允许出口给某些国家,所以sun只能在jdk里面实现一些加密,甚至加密强度比较弱,比如AES的密钥只允许128位,为了解锁限制只能下载其他的实现类去替换jdk默认的security provider    (源自:https://www.oschina.net/question/1268304_2158131  里的回答)

解决方法:

(1)下载策略文件

       下载地址:JCE6 官网(http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html

                     JCE7 官网(http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.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目录下覆盖原来文件

    

 

posted @ 2017-08-22 15:14  shirayner  阅读(3813)  评论(0编辑  收藏  举报