关于Android:Android – 如何防止黑客攻击或逆向工程,比proguard更好?

Android - How to give protection against hacking or reverse engineering, better than proguard?

本问题已经有最佳答案,请猛点这里访问。

我知道有逆向工程的apktool,dex2jar作为jar文件提取。 我也听说过proguard,它优化了代码,使其难以理解。 但是,是否有足够的能力来防范逆向工程? 据我所知,即使在使用proguard之后,资源文件仍然可以更改(我不确定)。 还有其他更好的技术吗? 有没有办法,如果有人尝试使用apktool,代码和资源都会被破坏?


But is proguard enough to give protection against reverse engineering?

只有你可以定义"足够"。

As far as I understand, resource files can still be altered even after using proguard

即使在使用ProGuard(包括资源)之后,任何内容都可以更改。

Is there any other better techniques?

在数学上不可能停止逆向工程。 毕竟,如果CPU可以读取指令并对其进行处理,则CPU可以读取指令并对其进行反编译。

ProGuard,DexGuard(一种加密资源的增强型ProGuard),在C / C ++中使用比Java更多的逻辑,这样可以帮助减慢逆向工程,但是它们无法阻止它。 因此,再次,只有你可以定义"足够"。

Is there a way so that if someone tries with apktool, the codes as well as the resources both will be corrupted?

嗯,恕我直言,ProGuard不会"破坏"apktool输出的代码。 但是,如果您认为ProGuard足以保护您的代码,那么DexGuard应该"足够"以保护您的资源。 DexGuard是一个商业产品,但我看的最后一个。

如果您担心逆向工程,请不要编写客户端软件。