java项目遇到的 java.security.InvalidKeyException:illegal Key Size 报错解决方案
2016-02-19 21:02
651 查看
在使用JCE加密时,我们有时候会遇到这样的Exception:
java.security.InvalidKeyException:illegal Key Size
要解决这个报错,首先,我们需要知道其原因
这是因为用到了jdk sercurity, 而jdk sercurity 使用的jar包 $JAVA_HOME/lib/security/local_policy.jar 和 $JAVA_HOME/jre6_64/lib/security/US_export_policy.jar中有对技术出口的限制【”万恶“的美帝啊】,加密只有128bit,而没有限制的则有256bit.
那么既然人家已经限制了我们 ,我们怎么办呢 ,甲骨文还是很贴心的,在官网给我们提供了解决方案,接下来就是重头戏了!!!
解决方案
首先你要明确自己的jdk版本 是1.6 还是 1.7 亦或者 1.8
我是1.8,这里用1.8举例 , 其他都是一样的
解决步骤:
1、前往甲骨文官网下载 JCE无限制权限策略文件
也可以直接在网上搜索下面图中文件名
![](https://oscdn.geek-share.com/Uploads/Images/Content/201602/19/52677fc01f9833675f479d7dba38d299)
【注意:文件名如上图所示 下载的版本一定要和当前你用的jdk一致
图中由左至右依次为 jdk1.6 jdk1.8 jdk1.7 的JCE无限制权限策略文件】
懒得找的朋友可以在我的csdn资源里下载,这里附上链接
点击进入下载页面
2、下载下来后
对文件进行解压发现其中有两个jar包,将其复制
![](https://img-blog.csdn.net/20160219204952934?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkF<br/>4000<br/>CMA==/dissolve/70/gravity/SouthEast)
3、前往你当前使用jdk的安装目录
复制并覆盖%JAVA_HOME%/jre/lib/security下的local_policy.jar 和 US_export_policy.jar
【注意:覆盖之前最好将原来的local_policy.jar 和 US_export_policy.jar 备份,原因大家都懂】
4、最后一步啦
重新启动你的tomcat,如果不出意外,你会惊喜的发现,刚刚的报错没有啦!!!!
java.security.InvalidKeyException:illegal Key Size
要解决这个报错,首先,我们需要知道其原因
这是因为用到了jdk sercurity, 而jdk sercurity 使用的jar包 $JAVA_HOME/lib/security/local_policy.jar 和 $JAVA_HOME/jre6_64/lib/security/US_export_policy.jar中有对技术出口的限制【”万恶“的美帝啊】,加密只有128bit,而没有限制的则有256bit.
那么既然人家已经限制了我们 ,我们怎么办呢 ,甲骨文还是很贴心的,在官网给我们提供了解决方案,接下来就是重头戏了!!!
解决方案
首先你要明确自己的jdk版本 是1.6 还是 1.7 亦或者 1.8
我是1.8,这里用1.8举例 , 其他都是一样的
解决步骤:
1、前往甲骨文官网下载 JCE无限制权限策略文件
也可以直接在网上搜索下面图中文件名
【注意:文件名如上图所示 下载的版本一定要和当前你用的jdk一致
图中由左至右依次为 jdk1.6 jdk1.8 jdk1.7 的JCE无限制权限策略文件】
懒得找的朋友可以在我的csdn资源里下载,这里附上链接
点击进入下载页面
2、下载下来后
对文件进行解压发现其中有两个jar包,将其复制
3、前往你当前使用jdk的安装目录
复制并覆盖%JAVA_HOME%/jre/lib/security下的local_policy.jar 和 US_export_policy.jar
【注意:覆盖之前最好将原来的local_policy.jar 和 US_export_policy.jar 备份,原因大家都懂】
4、最后一步啦
重新启动你的tomcat,如果不出意外,你会惊喜的发现,刚刚的报错没有啦!!!!
相关文章推荐
- 巩固下java基础,接口与抽象类的区别
- java和c#程序,试试语法
- [Java 基础]数据类型
- spring容器加载完毕做一件事情(利用ContextRefreshedEvent事件)
- Eclipse的使用及Java程序的标识符和关键字
- java实现二分检索树
- Eclipse使用
- 初探12306售票算法(二)-java代码实践
- java文件操作+流的使用
- java:堆栈,队列,枚举,链表
- spring InitializingBean init-method postConstruct 执行顺序
- java排序(选择排序+插入排序+冒泡排序+递归)
- java数组(一维数组,二维数组)
- java面向对象小总结
- Java实现KMP算法
- Eclipse 配置SSH 详解
- 最终有SpringMvc与Struts2的对照啦
- java核心技术学习笔记(一)
- Java中print、printf、println的区别
- java的Frame和JFrame中的paint方法区别