aesutil.java_AESUtil详解

public class AESUtil {

/**

* 密钥算法

*/

private static final String ALGORITHM = "AES";

/**

* 加解密算法/工作模式/填充方式

*/

private static final String ALGORITHM_MODE_PADDING = "AES/ECB/PKCS5Padding";

/**

* 生成key

*/

private static SecretKeySpec key = new SecretKeySpec("3d6ecd1d264b7224686af2c0a73f8d9c".getBytes(), ALGORITHM);

/**

* AES加密

*

* @param data

* @return

* @throws Exception

*/

public static String encryptData(String data) throws Exception {

// 创建密码器

Cipher cipher = Cipher.getInstance(ALGORITHM_MODE_PADDING);

// 初始化

cipher.init(Cipher.ENCRYPT_MODE, key);

return new String(Base64.encode(cipher.doFinal(data.getBytes())));

}

static SecretKey secretKey;

/**

* AES解密

*

* @param data 待解密的数据

* @param keyMd5 解密的key

* @return

* @throws Exception

*/

public static String decryptData(String data,String keyMd5) throws Exception {

Cipher cipher = Cipher.getInstance(ALGORITHM_MODE_PADDING);

secretKey = new SecretKeySpec(keyMd5.getBytes("utf-8"), "AES");

cipher.init(Cipher.DECRYPT_MODE, secretKey);//使用解密模式初始化 密钥

java.util.Base64.Decoder base64 = java.util.Base64.getDecoder();

byte[] decrypt = cipher.doFinal(base64.decode(data));

return new String(decrypt, "utf-8");

}

public static void main(String[] args) throws Exception {

String data = "73nx/039xYO9CcQE7b9dexbQ1WciyPr2hRYXVnTJ1jRnCsNQxnG/2m18IQtEDeJ99XFvvz1UPdOYf0G10d3oBHKQGJp0BHTfbDOF+ATFST3kJEyQzcaB/0cRtBxHH/6Den7sElBujMsPKNbRdYgelm8zN+YfZ+aK6FPoM4jvRhQmcD6AoyEBOeaxjvvL0K3AK29qGFd6qzJDXOVnCcoNich+K/9QyXRjS/V6h/0vNi4Z6U/31ev8kJneWN3b8w+Wrmc8I1ckUhEXChvgguR1K8p/0oXB38lBUZvNlq6AygGqWpOPT31cstxf0Af341DKA47EhutJ+8SZGlk/RQcs7u+lWo9IRXTwUqnCWADY/zv057Py6M6v/yeQy5nJpdHaSuV6l4t6Hgvk924XsC4UDZDoR+VsTNcZWNcdGHev295Z6+acuvAMl2py23t+Crovcxa62xEJ0noZIn57X0CzfNtLjoKf7KueA9lBslKz/hXmqRvX8dDdDn3NFLAWVLYcVplVEIXJtqiDBN7xMntbHTWYzBTiT9+K83yUssn5ZRe3lst4HiUOuy85AqJ8AHNQ+jxbLv1pqmDFVPYVlvWlDNCj70wL8Quk0lnJxb1mybolcIWAe5uGHuRZrRA1duVhFmTjrGLVT9faMRizZjTjSY9zO/gasYQKG/8I/YfoFtOkjIN2gMIO78TOe/+JnXDwvFTuoj3mMPWTqWvNzILysN8wGdB85vGawkjMbPqlNee+uigwXkSzJsv2+BwZEzuOPB6EREwQ7O0Hv116p+0G7Emgv5yHrypuZmjZXfNFgpAgbRLp9WEQ0f/6356oUpXeLrT4QRoAIliSZYON7sw9YRz2NRpq/LheyegnodI8LWa0C1K9jdfULg3G0AXf+1NRVUXueqxNSsptAX1WjsTFVJ/PS4mvtZ+yY0DVOUAhWjvHx2AqZjPTeuoXoH3KPQgUgSlGAhtNKIMAWpMM+Kik2mEc8EnTgYqQZzPhH3oY6CiqeSV5Ey0HBUI5Iey9IFKgTLpfE4m4ENA4tMbxzGDR7w==";

String keyMd5 = "3d6ecd1d264b7d04686af2c0173f8d9c";

System.out.println(decryptData(data,keyMd5));

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值