E edgar_ortiz Active Member Licensed User Longtime User Aug 21, 2013 #1 Is there any way to avoid it?
Erel B4X founder Staff member Licensed User Longtime User Aug 21, 2013 #2 You should obfuscate your code and make sure that any important string is set as a process global variable. Upvote 0
You should obfuscate your code and make sure that any important string is set as a process global variable.
Informatix Expert Licensed User Longtime User Aug 21, 2013 #3 edgar_ortiz said: Is there any way to avoid it? Click to expand... The obfuscation makes your code less readable, but it doesn't prevent the reverse engineering. With or without obfuscation, the decompiled code can be recompiled without problem and runs fine (most of the time because decompilers are not perfect). Upvote 0
edgar_ortiz said: Is there any way to avoid it? Click to expand... The obfuscation makes your code less readable, but it doesn't prevent the reverse engineering. With or without obfuscation, the decompiled code can be recompiled without problem and runs fine (most of the time because decompilers are not perfect).
eps Expert Licensed User Longtime User Aug 21, 2013 #4 Avoid how? It's always possible to reverse engineer anything, but this is dependent on the time vs. reward taken to reverse engineer. It's the old 80:20 rule. Decompiling and recompiling is not the same as reverse engineering! Upvote 0
Avoid how? It's always possible to reverse engineer anything, but this is dependent on the time vs. reward taken to reverse engineer. It's the old 80:20 rule. Decompiling and recompiling is not the same as reverse engineering!
Informatix Expert Licensed User Longtime User Aug 21, 2013 #5 eps said: Decompiling and recompiling is not the same as reverse engineering! Click to expand... From Wikipedia: [...]In the second case, there is no source code available for the software, and any efforts towards discovering one possible source code for the software are regarded as reverse engineering. This second usage of the term is the one most people are familiar with.[...] It's the definition that edgar_ortiz has probably in mind. So decompiling the software is required to reverse engineer it. And what edgar_ortiz probably fears is that someone removes a protection in his program or discovers something hidden. Decompiling is very quick (a few seconds) and understanding how the program works is not really difficult when you have the source code and you're used to Java. Removing a protection, for example, wouldn't take more than a couple of hours in the worst case. To complicate things and really slow down the process, you may place some of your code in a .so library (an external library written in C). Upvote 0
eps said: Decompiling and recompiling is not the same as reverse engineering! Click to expand... From Wikipedia: [...]In the second case, there is no source code available for the software, and any efforts towards discovering one possible source code for the software are regarded as reverse engineering. This second usage of the term is the one most people are familiar with.[...] It's the definition that edgar_ortiz has probably in mind. So decompiling the software is required to reverse engineer it. And what edgar_ortiz probably fears is that someone removes a protection in his program or discovers something hidden. Decompiling is very quick (a few seconds) and understanding how the program works is not really difficult when you have the source code and you're used to Java. Removing a protection, for example, wouldn't take more than a couple of hours in the worst case. To complicate things and really slow down the process, you may place some of your code in a .so library (an external library written in C).