· 6 years ago · Feb 24, 2019, 05:12 PM
1private val ALGORITHM = "AES"
2private val TRANSFORMATION = "AES/CBC/PKCS7Padding"
3
4fun ByteArray.toEncryptedHash(key: String): String {
5
6 var outputBytes = ByteArray(0)
7 try {
8 val secretKey = SecretKeySpec(key.toByteArray(), ALGORITHM)
9 val cipher = Cipher.getInstance(TRANSFORMATION)
10 val ivParameterSpec = IvParameterSpec("1234567891234567".toByteArray())
11 cipher.init(Cipher.ENCRYPT_MODE, secretKey, ivParameterSpec)
12
13 outputBytes = cipher.doFinal(this)
14
15 } catch (ex: IOException) {
16 //throw CryptoException("Error encrypting/decrypting file", ex)
17 }
18
19
20 return Base64.encodeToString(outputBytes, 0)
21}
22
23fun String.toDecryptedByteArray(key: String): ByteArray {
24
25 var outputBytes = ByteArray(0)
26
27 try {
28 val secretKey = SecretKeySpec(key.toByteArray(), ALGORITHM)
29 val cipher = Cipher.getInstance(TRANSFORMATION)
30 cipher.init(Cipher.DECRYPT_MODE, secretKey)
31
32 val inputByte = Base64.decode(this.toByteArray(), 0)
33
34 outputBytes = cipher.doFinal(inputByte)
35
36 } catch (ex: IOException) {
37 //throw CryptoException("Error encrypting/decrypting file", ex)
38 }
39
40 return outputBytes
41}
42
43class MainActivity : AppCompatActivity() {
44
45 override fun onCreate(savedInstanceState: Bundle?) {
46 super.onCreate(savedInstanceState)
47 setContentView(R.layout.activity_main)
48
49 Log.d("ENCRYPT TEST", "DSDASSADAS DAS ADSD".toByteArray().toEncryptedHash("ZGFzZGFzZGZhZ2Y="))
50
51 }
52}
53
54const payload = "DSDASSADAS DAS ADSD";
55
56const encrypted = CryptoJS.AES.encrypt(
57 CryptoJS.enc.Utf8.parse(payload),
58 "ZGFzZGFzZGZhZ2Y=",
59 {
60 keySize: 128,
61 iv: CryptoJS.enc.Utf8.parse('1234567891234567'),
62 mode: CryptoJS.mode.CBC,
63 padding: CryptoJS.pad.Pkcs7
64 }
65);
66console.log(encrypted.toString())
67pm.globals.set("userEncrypted", encrypted.toString());