AES算法256位密钥

最近,负责公司的数据加密模块。采用的算法是AES的CBC模式,密钥长度为256位。

想来,也没啥难的。Java的接口那么多,AES的算法接口也肯定有!想来没啥难的,但是却耗费了我两天时间才解决这个问题。

JDK和MyEclipse(包括Eclipse)自带的Jar包是不支持256位密钥长度的。如果初始化密钥的时候,长度设置为32字节(256位),就会抛出下面异常。

Illegal key size

在网上搜了很久,说JDK自带jar包不支持256位AES加密,需要到官网上下载下面两个jar包:

替换的jar包

很多网友说将JAVA_HOME/jre/lib/security下的这两个jar包替换掉;我试过了,但是还是报“Illegal key size”的错误。此外,很多网友也同样这样做了,还是不行。这个问题困扰了我两天。后来,我恍然大悟:我是在MyEclipse10下进行的代码编写,它自己导入了一些jar包(JRE System Libary)。我将jce.jar的路径拷贝下来,转入该路径——果然找到了security这个文件夹——果断,直接将那两个让人DT的jar包直接覆盖掉!!Ok!代码通过了!不过,若你导入的是jdk的jar包,就需要替换JAVA_HOME下的那两个文件。

Jdk6下载地址:

http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html

Jdk7下载地址:

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值