· 9 years ago · Nov 07, 2016, 06:42 AM
1public static String main(String args,int state) throws Exception {
2
3 String codedtext_decodedtext=null;
4
5 if (state==1)
6 {
7 codedtext_decodedtext = new TripleDes()._encrypt(args, "Fanava@Wrapper!1395");
8 }
9 else if(state==2)
10 {
11 codedtext_decodedtext = new TripleDes()._decrypt(args, "FanavaWrapper1395");
12 }
13
14 return codedtext_decodedtext;
15
16 }
17
18 private String _encrypt(String message, String secretKey) throws Exception {
19
20 MessageDigest md = MessageDigest.getInstance("MD5");
21 byte[] digestOfPassword = md.digest(secretKey.getBytes("utf-8"));
22 byte[] keyBytes = Arrays.copyOf(digestOfPassword, 16);
23
24 SecretKey key = new SecretKeySpec(keyBytes, "DESede/ECB/PKCS7Padding");
25 Cipher cipher = Cipher.getInstance("DESede/ECB/PKCS7Padding");
26 cipher.init(Cipher.ENCRYPT_MODE, key);
27 byte[] plainTextBytes = message.getBytes("utf-8");
28
29
30 byte[] buf = cipher.doFinal(plainTextBytes);
31 byte [] base64Bytes = Base64.encodeBase64(buf);
32 String base64EncryptedString = new String(base64Bytes);
33
34 return base64EncryptedString;
35 }
36 private String _decrypt(String encryptedText, String secretKey) throws Exception {
37
38 byte[] message = Base64.decodeBase64(encryptedText.getBytes("utf-8"));
39
40 MessageDigest md = MessageDigest.getInstance("MD5");
41 byte[] digestOfPassword = md.digest(secretKey.getBytes("utf-8"));
42 byte[] keyBytes = Arrays.copyOf(digestOfPassword, 16);
43 SecretKey key = new SecretKeySpec(keyBytes, "DESede/ECB/PKCS7Padding");
44
45 Cipher decipher = Cipher.getInstance("DESede/ECB/PKCS7Padding");
46 decipher.init(Cipher.DECRYPT_MODE, key);
47
48 byte[] plainText = decipher.doFinal(message);
49
50 return new String(plainText, "UTF-8");
51 }
52}