· 4 years ago · Oct 16, 2020, 01:48 PM
1import java.io.UnsupportedEncodingException;
2import java.security.MessageDigest;
3import java.security.NoSuchAlgorithmException;
4import java.util.Arrays;
5import java.util.Base64;
6
7import javax.crypto.Cipher;
8import javax.crypto.spec.SecretKeySpec;
9
10public class teste {
11
12 private static SecretKeySpec secretKey;
13 private static byte[] key;
14
15 public static void main(String[] args) {
16
17 final String secretKey = "70AA63A...929C01A7";
18 String cartaoString = "j/pNO3NELLFzSCQmMD2AVMTKBe6dUeHF2eSYdykpaLw=";
19
20 // byte[] decodedBytes = Base64.getDecoder().decode(secretKey);
21 // String decodedString = new String(decodedBytes);
22 // System.out.println(decodedString);
23
24 String decryptedString = decrypt(cartaoString, secretKey) ;
25
26 System.out.println(cartaoString);
27 System.out.println(decryptedString);
28
29 }
30
31
32 public static String decrypt(String strToDecrypt, String secret)
33 {
34 try
35 {
36 setKey(secret);
37 Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5PADDING");
38 cipher.init(Cipher.DECRYPT_MODE, secretKey);
39 return new String(cipher.doFinal(Base64.getDecoder().decode(strToDecrypt)));
40 }
41 catch (Exception e)
42 {
43 System.out.println("Error while decrypting: " + e.toString());
44 }
45 return null;
46 }
47
48 public static void setKey(String myKey)
49 {
50 MessageDigest sha = null;
51 try {
52 key = myKey.getBytes("UTF-8");
53 sha = MessageDigest.getInstance("SHA-1");
54 key = sha.digest(key);
55 key = Arrays.copyOf(key, 16);
56 secretKey = new SecretKeySpec(key, "AES");
57 }
58 catch (NoSuchAlgorithmException e) {
59 e.printStackTrace();
60 }
61 catch (UnsupportedEncodingException e) {
62 e.printStackTrace();
63 }
64 }
65
66}
67