I am developing an iPhone application and I am afraid that it will be decompiled and the source code visible and understandable. In order to minimize this chance, I have this question: Is it easy to reverse engineer the binaries from an iPhone application? If so, do you recommend any software to obfuscate and encrypt the code?.
-
Trust me, you're code isn't that valuable. It's the UI design and functionality (easily copied) that makes your app "special", plus whatever "name" you manage to develop and how well you support your product (not so easily copied). – Hot Licks Jun 01 '14 at 11:14
-
This answer includes a longer list of other answers to this oft-asked question: http://stackoverflow.com/a/9183066/97337 (they are in the context of ensuring that only your app can contact your server, but are generally applicable to all obfuscation techniques) – Rob Napier Jun 01 '14 at 13:31
1 Answers
Is it easy to reverse engineer the binaries from an iPhone application?
The process of reverse engineering a program is always the same. You'll never end up with the original source code, but given enough effort you can get very close. One of the most tough RE protections known so far is the obfuscation of the Skype binaries (before Microsoft acquired Skype). But even Skype got RE to a degree that many of its secrets were understood.
If so, do you recommend any software to obfuscate and encrypt the code?
No. If you're facing a determined RE there's nothing that can prevent RE of your program. After all the CPU has to execute your program (otherwise it would be without value) and for that to be possible the program must be in unencrypted form.
Security by obscurity does not work. It never did, it never will.

- 159,371
- 13
- 185
- 298