Java使用Hutool实现AES、DES加密解密
时间: 2024-02-07 20:01:49 浏览: 130
使用Hutool实现AES、DES加密解密非常简单,只需要引入Hutool库,然后调用它提供的API即可。
以下是使用Hutool实现AES加密解密的示例代码:
```java
import cn.hutool.core.codec.Base64;
import cn.hutool.crypto.SecureUtil;
import cn.hutool.crypto.symmetric.AES;
public class AesUtil {
private static final byte[] AES_KEY = "1234567890123456".getBytes();
public static String encrypt(String content) {
AES aes = SecureUtil.aes(AES_KEY);
byte[] encrypt = aes.encrypt(content);
return Base64.encode(encrypt);
}
public static String decrypt(String content) {
AES aes = SecureUtil.aes(AES_KEY);
byte[] decrypt = aes.decrypt(Base64.decode(content));
return new String(decrypt);
}
}
```
在上面的代码中,我们首先定义了一个AES_KEY作为AES加密密钥,然后通过SecureUtil.aes(AES_KEY)创建了一个AES对象。接着,我们分别定义了encrypt和decrypt方法,分别用于加密和解密。
在加密方法中,我们首先调用aes.encrypt(content)对内容进行加密,然后使用Base64进行编码,最终返回加密后的字符串。
在解密方法中,我们首先调用Base64.decode(content)将加密后的字符串进行解码,然后调用aes.decrypt对解码后的内容进行解密,最终返回解密后的字符串。
以下是使用Hutool实现DES加密解密的示例代码:
```java
import cn.hutool.core.codec.Base64;
import cn.hutool.crypto.SecureUtil;
import cn.hutool.crypto.symmetric.DES;
public class DesUtil {
private static final byte[] DES_KEY = "12345678".getBytes();
public static String encrypt(String content) {
DES des = SecureUtil.des(DES_KEY);
byte[] encrypt = des.encrypt(content);
return Base64.encode(encrypt);
}
public static String decrypt(String content) {
DES des = SecureUtil.des(DES_KEY);
byte[] decrypt = des.decrypt(Base64.decode(content));
return new String(decrypt);
}
}
```
在上面的代码中,我们同样定义了一个DES_KEY作为DES加密密钥,然后通过SecureUtil.des(DES_KEY)创建了一个DES对象。接着,我们分别定义了encrypt和decrypt方法,分别用于加密和解密。
在加密方法中,我们首先调用des.encrypt(content)对内容进行加密,然后使用Base64进行编码,最终返回加密后的字符串。
在解密方法中,我们首先调用Base64.decode(content)将加密后的字符串进行解码,然后调用des.decrypt对解码后的内容进行解密,最终返回解密后的字符串。
阅读全文