· 6 years ago · Jun 29, 2019, 02:14 PM
1$montant = "500";
2$message_crypte = mcrypt_encrypt(MCRYPT_3DES, "N4y1FRDRJ7wn7eJNnWaahCIS", $montant, ,CRYPT_MODE_CFB, "NCNPJDcR");
3$montant = base64_encode($message_crypte);
4
5public class CryptData {
6 private KeySpec keySpec;
7 private SecretKey key;
8 private IvParameterSpec iv;
9
10 public CryptData(String keyString, String ivString) {
11 try {
12 final MessageDigest md = MessageDigest.getInstance("md5");
13
14 final byte[] digestOfPassword = md.digest(Base64
15 .decodeBase64(keyString.getBytes("ISO-8859-1")));
16
17 final byte[] keyBytes = Arrays.copyOf(digestOfPassword, 24);
18 for (int j = 0, k = 16; j < 8;) {
19 keyBytes[k++] = keyBytes[j++];
20 }
21
22 //keySpec = new DESedeKeySpec(keyBytes);
23 keySpec = new DESedeKeySpec(keyString.getBytes());
24
25 key = SecretKeyFactory.getInstance("DESede")
26 .generateSecret(keySpec);
27
28 iv = new IvParameterSpec(ivString.getBytes());
29 } catch (Exception e) {
30 e.printStackTrace();
31 }
32 }
33
34 public String encrypt(String value) {
35 try {
36 Cipher ecipher = Cipher.getInstance("DESede/CFB/NoPadding");
37
38 //"SunJCE");
39 ecipher.init(Cipher.ENCRYPT_MODE, key, iv);
40
41 if (value == null)
42 return null;
43
44 // Encode the string into bytes using utf-8
45 byte[] valeur = value.getBytes("ISO-8859-1");
46 //byte[] utf8 = value.getBytes();
47
48 // Encrypt
49 byte[] enc = ecipher.doFinal(valeur);
50
51 // Encode bytes to base64 to get a string
52 return new String(Base64.encodeBase64(enc), "ISO-8859-1");
53 } catch (Exception e) {
54 e.printStackTrace();
55 }
56 return null;
57 }
58}
59
60Cipher ecipher = Cipher.getInstance("DESede/CFB8/NoPadding");