重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
但因为它的整个运算逻辑关系链是完整的,与混淆前的代码关系链是完全一致的,所以非要“破解”,只能说摸清它的逻辑关系链,人为去做的话,烧脑又复杂。
创新互联公司科技有限公司专业互联网基础服务商,为您提供绵阳服务器托管,高防主机,成都IDC机房托管,成都主机托管等互联网服务。
一般情况下Java应用的开发者为了保护代码不被别人抄袭,在生成class文件的时候都java文件进行了混淆,这种class文件用反编译工具得到的结果很难看懂,并且不能进行编译。从研究的角度,浅析如何读懂这种反编译过来的文件。
proguard/mapping.txt 文件。在每次用 ProGuard 发布应用的时候, 都会在项目目录下的 proguard 目录中创建新的 mapping 文件。该文件记录了 每个类对应混淆后的类以及方法。
转换成本地代码 将程序转换成本地代码也是一种防止反编译的有效方法。因为本地代码往往难以被反编译。开发人员可以选择将整个应用程序转换成本地代码,也可以选择关键模块转换。
1、首先你的电脑上面必须安装java jdk ,默认安装就好, jdk分32位和64位,要下和你电脑系统一致的 然后配置java环境变量,网上有方法,容易找 然后下载eclipse软件,guan 网就有,上面两步完成的话eclipse解压就能用。
2、即运行。UltraEdit或EditPlus只是编辑软件,需要把编辑好的代码保存后,再编译,然后再运行。
3、你安装好JDK以后,还要配置环境变量。这个过程你可以去网上搜,有很多。如果你是用记事本写的源代码的话,要另存为一个后缀名为Java的文件,(比如该文件为Test.java)放在某个盘里。
上面说了,这种方式其实并不是真正加密代码,其实代码还是能够被人反编译(有人可能说,使用proguard中的optimize选项,可以从字节流层面更改代码,甚至可以让JD这些反编译软件可以无法得到内容。
无法防止。.class文件的标准是公开的,无法防止别人反编译你的代码。你顶多可以用代码扰乱工具扰乱你的代码,这样反编译的代码就难以阅读。比如可以试试用proguard来扰乱(“加密”)和反扰乱(“解密”)你的代码。
java本就是开源的,你加密感觉怪怪的。想防止反编译,最简单的方法就是你可以向Jar注入无效代码。比如建一个类,建一个没有意义的方法private class Invalid{ },然后输出为jar。