Titanium Framework
• But the assets are encrypted… NO PROBLEM,
DO YOU EVEN REVERSE ENGINEERING,
BRO?!?
• The crypto is described in the JNI function
‘Java_org_appcelerator_titanium_TiVerify_filterD
ataInRange’ in ‘libtiverify.so’
byte[]
filterDataInRange(byte[]
bytes,
int
offset,
int
count)
{
SecretKeySpec
key
=
new
SecretKeySpec(bytes,
bytes.length
-‐
0x10,
0x10,
"AES");
Cipher
cipher
=
Cipher.getInstance("AES");
cipher.init(Cipher.DECRYPT_MODE,
key);
return
cipher.doFinal(bytes,
offset,
count);
}