53 lines
1.6 KiB
Java
53 lines
1.6 KiB
Java
package com.yutou.tools.utils;
|
|
|
|
import javax.crypto.Cipher;
|
|
import javax.crypto.KeyGenerator;
|
|
import javax.crypto.spec.SecretKeySpec;
|
|
import java.nio.charset.StandardCharsets;
|
|
import java.util.Base64;
|
|
|
|
public class AESTools {
|
|
private static final String key="fJjSoOM7tDIQN0Ne";
|
|
private static final String model="AES/ECB/PKCS5Padding";
|
|
|
|
/**
|
|
* 加密
|
|
* @param value 原文
|
|
* @return 密文
|
|
*/
|
|
public static String encrypt(String value){
|
|
try {
|
|
KeyGenerator generator=KeyGenerator.getInstance("AES");
|
|
generator.init(128);
|
|
Cipher cipher=Cipher.getInstance(model);
|
|
cipher.init(Cipher.ENCRYPT_MODE,new SecretKeySpec(key.getBytes(),"AES"));
|
|
byte[] bytes=cipher.doFinal(value.getBytes(StandardCharsets.UTF_8));
|
|
return new String(Base64.getEncoder().encode(bytes));
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* 解密
|
|
* @param value 密文
|
|
* @return 原文
|
|
*/
|
|
public static String decrypt(String value){
|
|
try {
|
|
KeyGenerator generator=KeyGenerator.getInstance("AES");
|
|
generator.init(128);
|
|
Cipher cipher=Cipher.getInstance(model);
|
|
cipher.init(Cipher.DECRYPT_MODE,new SecretKeySpec(key.getBytes(),"AES"));
|
|
byte[] encodeBytes=Base64.getDecoder().decode(value);
|
|
byte[] bytes=cipher.doFinal(encodeBytes);
|
|
return new String(bytes);
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return null;
|
|
}
|
|
|
|
}
|