jdk1.8 aes-256 加解密报错 java.security.InvalidKeyException: Illegal key size

从1.8.0_151和1.8.0_152版本开始,Java默认的安全策略限制了AES-256的使用。要启用无限制强度的加密策略,可以通过编辑Windows系统中的policy文件或在Linux环境中调整设置。对于早期的JDK版本,需要下载并替换JCE无限制权限策略文件。此更改对于实现高级别的数据安全性至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于安全源策略,从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及以上的版本已经默认采用无限制策源

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值