需要第三方jar包:bcprov.jar:百度云下载地址
1.方法介绍
分别是加解密的方法。主要参数是三个:
1.需要加密的字符串
2.加密钥匙。经测试,只能16位或者32位。
3.IV。即偏移量。只能16位。
2.工具类缺陷
1.没有做容错处理,对加密钥匙,不是16位或者32位,应该以“0” 填充或删除。
3.修改如下
1.编码形式使用:BASE64。 也可自己替换成HEX编码,该类含有HEX的工具类。
4.工具类如下
import java.security.Security;
import java.util.Locale;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import org.bouncycastle.util.encoders.Base64;
/**
* AES加密解密字符串工具类
* 概述:AES高级加密标准,是对称密钥加密中最流行的算法之一;
* 工作模式包括:ECB、CBC、CTR、OFB、CFB;
* 使用范围:该工具类仅支持CBC模式下的:
* 填充:PKCS7PADDING
* 数据块:128位
* 密码(key)