private static String paramKey = "1234567890123456";
public static String encrypt(String key, String value) {
try {
IvParameterSpec iv = new IvParameterSpec(paramKey.getBytes("UTF-8"));
SecretKeySpec skeySpec = new SecretKeySpec(key.getBytes("UTF-8"),
"AES");
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5PADDING");
cipher.init(Cipher.ENCRYPT_MODE, skeySpec, iv);
byte[] encrypted = cipher.doFinal(value.getBytes());
return Base64.encodeBase64String(encrypted);
} catch (Exception ex) {
ex.printStackTrace();
}
return null;
}
public static String decrypt(String key, String encrypted) {
try {
IvParameterSpec iv = new IvParameterSpec(paramKey.getBytes("UTF-8"));
SecretKeySpec skeySpec = new SecretKeySpec(key.getBytes("UTF-8"),
"AES");
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5PADDING");
cipher.init(Cipher.DECRYPT_MODE, skeySpec, iv);
byte[] original = cipher.doFinal(Base64.decodeBase64(encrypted));
return new String(original);
} catch (Exception ex) {
ex.printStackTrace();
}
return null;
}
public static void main(String[] args) {
String key = "9876543210123456"; // 256 bit key
System.out.println(encrypt(key, "djkhflasdjdf"));
System.out.println(decrypt(key, "iUoMmTT9n/NEA5mXhgDnn0/SM8fvpMTKyJcFQU=="));
}
}
No comments:
Post a Comment