在加密解密时遇到这个问题:java.security.InvalidKeyException:illegal Key Size

在加密解密时遇到这个问题:java.security.InvalidKeyException:illegal Key Size

这是因为用到了jdk sercurity, 而jdk sercurity 使用的jar包 $JAVA_HOME/jre/lib/security/local_policy.jar 和 $JAVA_HOME/jre/lib/security/US_export_policy.jar中有对技术出口的限制,加密只有128bit,而没有限制的则有256bit.

解决方案:
在官方网站下载JCE无限制权限策略文件
JDK7的下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html
也可以下载附件中的文件。

下载后解压,可以看到local_policy.jar和US_export_policy.jar以及readme.txt。如果安装了JRE, 将两个jar文件放到%JRE_HOME% \lib\security目录下覆盖原来的文件,如果安装了JDK,将两个jar文件放到%JDK_HOME%\jre\lib\security目录 下覆盖原来文件。

猜你喜欢

转载自slgshishen.iteye.com/blog/2209216