java中使用AES加密(加解密算法/工作模式/填充方式:AES/ECB/PKCS5Padding)

 

import javax.crypto.Cipher;  
import javax.crypto.spec.SecretKeySpec;

public class AESUtils {
    
    /**
     * 密钥算法
     */  
    private static final String ALGORITHM = "AES";
    
    /**
     * 加解密算法/工作模式/填充方式
     */  
    private static final String ALGORITHM_STR = "AES/ECB/PKCS5Padding";
    
    private SecretKeySpec key;
    
    public AESUtils(String k) {
        key = new SecretKeySpec(k.getBytes(), ALGORITHM);
    }
    
    public String encrypt(byte[] data) throws Exception{
        Cipher cipher = Cipher.getInstance(ALGORITHM_STR);
        cipher.init(Cipher.ENCRYPT_MODE, key);
        return new String(cipher.doFinal(data), "utf-8");
    }
    
    public String decrypt(byte[] data) throws Exception{
        Cipher cipher = Cipher.getInstance(ALGORITHM_STR);
        cipher.init(Cipher.DECRYPT_MODE, key);
        return new String(cipher.doFinal(data), "utf-8");
    }
    
}

 

你可能感兴趣的:(java中使用AES加密(加解密算法/工作模式/填充方式:AES/ECB/PKCS5Padding))