public
static
String encrypt(String key, String plainText){
String encryptTxt =
""
;
try
{
byte[] salt =
new
byte[8];
MessageDigest md = MessageDigest.getInstance(
"MD5"
);
md.update(key.getBytes());
byte[] digest = md.digest();
for
(int i = 0; i < 8; i++) {
salt[i] = digest[i];
}
PBEKeySpec pbeKeySpec =
new
PBEKeySpec(key.toCharArray());
SecretKeyFactory keyFactory = SecretKeyFactory
.getInstance(
"PBEWithMD5AndDES"
);
SecretKey skey = keyFactory.generateSecret(pbeKeySpec);
PBEParameterSpec paramSpec =
new
PBEParameterSpec(salt, ITERATIONS);
Cipher cipher = Cipher.getInstance(
"PBEWithMD5AndDES"
);
cipher.init(Cipher.ENCRYPT_MODE, skey, paramSpec);
byte[] cipherText = cipher.doFinal(plainText.getBytes());
String saltString =
new
String(Base64.encode(salt));
String ciphertextString =
new
String(Base64.encode(cipherText));
return
saltString + ciphertextString;
}
catch
(Exception e) {
e.printStackTrace();
}
return
""
;
}