由于安全源策略,从Java 1.8.0_151和1.8.0_152开始,为JVM启用 无限制强度管辖策略 有了一种新的更简单的方法。如果不启用此功能,则不能使用AES-256。
解决办法:
1.windows----找到如下文件夹,记事本打开
默认没修改过的文件内有下面一行代码,找打它并去掉#,去除后如下图,默认情况下使用的是limited,打开注释后使用时unlimited,启用无限制策略源文件
#crypto.policy=unlimited
如果是更早的jdk版本,没有policy 文件夹,而是只有local_policy.jar,US_export_policy.jar两个jar包。那么去jdk官网下载JCE无限制权限策略文件
jdk 5及以前的版本: https://www.oracle.com/java/technologies/java-archive-downloads-java-plat-downloads.html#jce_policy-1.5.0-oth-JPR
jdk6: http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html 或者 https://www.oracle.com/java/technologies/jce-6-download.html
JDK7的下载地址: https://www.oracle.com/java/technologies/javase-jce7-downloads.html
JDK8的下载地址: https://www.oracle.com/java/technologies/javase-jce8-downloads.html
2:Linux
jdk1.8_1.51,jdk1.8_1.52 方法如上
或者下载更高版本,jdk1.8_161及以上的版本已经默认采用无限制策源