JAVA中AES加密方法实例分析

时间:2021-12-22 07:02:07

本文实例讲述了JAVA中AES加密方法。分享给大家供大家参考。具体如下:

java代码:

?
1
2
3
4
5
6
KeyGenerator kg = KeyGenerator.getInstance("AES"); //获取密匙生成器
kg.init(256); //初始化
//DES算法必须是56位
//DESede算法可以是112位或168位
//AES算法可以是128、192、256位
SecretKey key = kg.generateKey(); //生成密匙,可用多种方法来保存密匙

加密:

?
1
2
3
4
5
Cipher cp = Cipher.getInstance("AES"); //创建密码器
cp.init(Cipher.ENCRYPT_MODE, key); //初始化
String str = "我是需要被加密的明文";
byte [] ptext = str.getBytes("UTF8");
byte [] ctext = cp.doFinal(ptext); //加密

解密:

?
1
2
3
4
Cipher cp = Cipher.getInstance("AES"); //创建密码器
cp.init(Cipher.DECRYPT_MODE, key); //初始化
byte [] ptext = cp.doFinal(ctext); //解密
String str = new String(ptext, "UTF8"); //重新显示明文

希望本文所述对大家的java程序设计有所帮助。