在最近的项目中发现了Cipher这个类,楼主结合百度与api写了个小例子发现,jdk还提供了加密与解密的功能,Cipher类为加密和解密提供密码功能。它构成了Java Cryptographic Extension(JCE)框架的核心。这些核心操作需要通过Cipher类来实现。废话不说我们看代码示例:
package spider.com.yxt.utils;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
import org.apache.commons.codec.binary.Base64;
public class AES {
//加密
public static String Encrypt(String sSrc, String sKey) throws Exception{
if(sKey == null){
return null;
}
//判断Key 是否为16位
if(sKey.length() != 16){
return null;
}
byte[] raw = sKey.getBytes("utf-8");
SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES");
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, skeySpec);
byte[] encrypted = cipher.doFinal(sSrc.getBytes("utf-8"));
//此处使用BA