1.Sql方式
HEX(AES_ENCRYPT(REVERSE('111'),'222'))
REVERSE(AES_DECRYPT(UNHEX('333'),'222'))
2.程序方式
import java.math.BigInteger;
import java.util.Arrays;
public class EncrUtil {
private static final int RADIX = 16;
private static final String SEED = "111222333444555666777888";
public static final String encrypt(String password) {
if (password == null) return "";
if (password.length() == 0) return "";
BigInteger bi_passwd = new BigInteger(password.getBytes());
BigInteger bi_r0 = new BigInteger(SEED);
BigInteger bi_r1 = bi_r0.xor(bi_passwd);
return bi_r1.toString(RADIX);
}
public static final String decrypt(String encrypted) {
if (encrypted == null) return "";
if (encrypted.length() == 0) return "";
BigInteger bi_confuse = new BigInteger(SEED);
try {
BigInteger bi_r1 = new BigInteger(encrypted, RADIX);
BigInteger bi_r0 = bi_r1.xor(bi_confuse);
return new String(bi_r0.toByteArray());
} catch (Exception e) {
return "";
} }