I was collecting data and building a database from a mobile game on Android. Here's an after/before image.

enter image description here

If I do CTRL + A and copy paste on the left side, all information gets copied to clipboard is this: DB‘AÛÀÜtÿ$Lº‡VI¦

However I can select different parts of the text and copy them over successfully.

Bý'ShÔ˜1:ðÚ‚OZý\¯}ßbÇhÀÜy’Fkž×z,G/”õã)Ÿ@NïìVo}}hðh[2E‰åÏ|+Þ)Å”N÷MÐXñüWåqî—‘ÿŽWŽ¬„«=±rô^ø°ûÜúÍ^ÔÏì¡HB¿³“nºá¢m +¹<ƒK–g[&¼·2³ùSüÞ[5à›ú0FQ±Ä‡ƒƒ¨Þ¸ã75Š|¸‘Ê~“e5ò-ôfú¹KrèŹßf«ýH/9eøcÏ6(à3¹‚¿9è(“°† ²0—™â›@̃rͲ¡›e©¹H ÀäUz=‚™}@Ž¡Ò€3›PfmfôÄ›#ào¡vA“]ãâBiÖaµB)&¶ÖWìŽèl;r=ÜÁ¸uXvª¤üçÊrfjƇJ ăˆ¶ØV¸ÑF”߬…„<àÌ<%~sðFõ

My question is, what kind of encryption is this and is there any way to reverse it so that I can get the old version (on the right) again?

Thank you!

Edit 1:

File link from Electronic Arts servers if anyone wants to try: http://eaassets-a.akamaihd.net/fifa/u/f/fm18/prod2/d/mGBE3BGcbd

Edit 2:

File on the left is around 3.6 MB meanwhile file on the right is 2.06 MB.

Edit 3:

"enable_hexadecimal_encoding": true, caused this instead of one on the left:

enter image description here

  • Why do you suspect that it is encrypted rather than just serialized? – forest Apr 22 '18 at 7:08

Well, it may be encoded in binary instead of text. In that case, the data would still be there. But if the files are roughly the same size, than that most likely won't be the case.

If it is indeed encrypted and they used something standard such as AES-128, than there is no way to reverse it just using the file. Your only hope would be to extract the key from the app, which is very hard to do on mobile platforms simply because the proper tools don't really exist.

It is hard, if not completely impossible to determine what encryption is used just from the data and without the key.

| improve this answer | |
  • Is there any way to go back from Binary to Text? I'm quite bad at this topic, any help is appreciated. Edit: Weird file is 3.6 mb old files used to be around 2 mb – Tuğberk Kaan Duman Apr 21 '18 at 16:48
  • @TuğberkKaanDuman As I edited, it is most likely not binary. Anyway, if it was, the difference is, that instead of saving something like "money=200", which is 9 characters, they would save 200 as number (not characters). Therefore, you would have to know, where the number is to edit it or in any way reverse it. – Peter Harmann Apr 21 '18 at 16:50
  • You could do some work to reverse-engineer the format, by comparing to know values from the app... but it would probably take a while and there’s nothing keeping the developer from just changing the format every version. – nbering Apr 21 '18 at 23:31
  • @nbering I think it's some kind of encrypted SQLite. Thank you for your help too! – Tuğberk Kaan Duman Apr 22 '18 at 11:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.