在使用诸如dex2jar和JD-GUI之类的工具之后,我从APK获取了Java类。正如大家都知道的那样,Java字节码可以转换回Java类,所以大多数情况下它都是通过一些工具(如ProGuard用于Android的情况下)进行优化和混淆处理,以使其可以与其他人保密。所以我得到的是混淆的代码,我想使它无错误,可读性强,易于理解,这样我就可以进一步修改它(仅供我个人使用,我并不意味着违反任何版权)。因此,任何帮助,即建议,工具和帮助材料使这些混淆代码更接近开发人员编写的代码或使其无误并且易于理解将帮助我很多。目前,我的重点是要扭转使用ProGuard的喜欢,当我试图在我自己的项目的逆向工程混淆技术,结果发现:Android如何在通过逆向工程后读取混淆的Java代码
int
资源值可以用ID来改变通过它与产生R
文件匹配逆向工程。if
/else
条件大多转换为while(true)
和一些continue
s和break
s。- 内部类主要是分手到单独的文件
因此,任何其他技术和辅料用于上述方式可以描述如何正确地扭转他们的将是非常有益的。
我试过这个软件,我选择文件,当按deobfuscate它并没有生成任何新的类文件,所以我认为改变被重写到相同的类文件,当我打开这个类文件在JD-GUI中查看Java源代码时,它显示相同的源代码以前不是单行更改 –