最近发现了锵锵系列软件(http://www.cnqqstudio.com/),发现竟然是java做得。
研究了一下,发现虽然通过程序安装后的类包,可以很容易看出他精简了jre,也可以很容易看出,他使用了什么技术,什么组件做出来的这种软件。
但是却有一个地方不得其解,那就是他的反编译能力比较强,所以想知道java程序是如何做到这点的,请高手说一下。
本人研究了一个星期,还是没有头绪
研究了一下,发现虽然通过程序安装后的类包,可以很容易看出他精简了jre,也可以很容易看出,他使用了什么技术,什么组件做出来的这种软件。
但是却有一个地方不得其解,那就是他的反编译能力比较强,所以想知道java程序是如何做到这点的,请高手说一下。
本人研究了一个星期,还是没有头绪
其实你就是怕别人反编译你的class文件,对不?
可以这么做:
1、使用某种算法,对class文件加密
2、编写自己的类加载器,在类加载器中对class文件解密,然后加载这个类
参考:在GOOGLE搜索 类加载器 加密解密
即便代码混淆了。但是仍然可以反编译
有没有除此之外的方法呢?