· 7 years ago · Apr 24, 2018, 08:32 AM
1import javax.crypto.Cipher;
2import javax.crypto.SecretKey;
3import javax.crypto.SecretKeyFactory;
4import javax.xml.bind.DatatypeConverter;
5import javax.crypto.spec.DESKeySpec;
6
7
8def data = prev.getResponseData();
9String challenge = javax.xml.bind.DatatypeConverter.printHexBinary(data);
10final String strPassPhrase = "C6864E7696C686";
11
12String param = challenge;
13System.out.println("Text : " + param);
14
15SecretKeyFactory factory = SecretKeyFactory.getInstance("DES");
16SecretKey key = factory.generateSecret(new DESKeySpec(strPassPhrase.getBytes()));
17Cipher cipher = Cipher.getInstance("DES");
18
19cipher.init(Cipher.ENCRYPT_MODE, key);
20String str = DatatypeConverter.printBase64Binary(cipher.doFinal(param.getBytes()));
21System.out.println("Text Encryted : " + str);
22cipher.init(Cipher.DECRYPT_MODE, key);
23String str2 = new String(cipher.doFinal(DatatypeConverter.parseBase64Binary(str)));
24System.out.println("Text Decryted : " + str2);
25
26java.security.InvalidKeyException: Wrong key size