package com.ruoyi.common.utils.sign;
|
|
import javax.crypto.Cipher;
|
import javax.crypto.NoSuchPaddingException;
|
import javax.crypto.spec.IvParameterSpec;
|
import javax.crypto.spec.SecretKeySpec;
|
import java.security.NoSuchAlgorithmException;
|
import java.util.Base64;
|
|
public class AesUtil {
|
|
private static final String KEY = "QfOpO2026@SecretKey#Aes256!00001";
|
private static final String IV = "1234567890123456";
|
|
public static String decrypt(String cipherText) {
|
String data = "";
|
Cipher cipher = null;
|
try {
|
cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
|
SecretKeySpec keySpec = new SecretKeySpec(KEY.getBytes(), "AES");
|
IvParameterSpec ivSpec = new IvParameterSpec(IV.getBytes());
|
cipher.init(Cipher.DECRYPT_MODE, keySpec, ivSpec);
|
byte[] original = cipher.doFinal(Base64.getDecoder().decode(cipherText));
|
data = new String(original);
|
} catch (Exception e) {
|
String m=e.getMessage();
|
}
|
return data;
|
}
|
|
public static String encrypt(String data) {
|
String text = "";
|
try {
|
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
|
cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(KEY.getBytes(), "AES"), new IvParameterSpec(IV.getBytes()));
|
byte[] encryptedBytes = cipher.doFinal(data.getBytes());
|
text = Base64.getEncoder().encodeToString(encryptedBytes);
|
} catch (Exception e) {
|
String m = e.getMessage();
|
}
|
return text;
|
}
|
}
|