http://www.sun.com.cn/tech-research/tdcproduct/jade_ch.html

解决方案 »

  1.   

    嘿嘿,我好像回答过这样的问题。可以用这样的方法加密解密:任何一个.class的加载和解释都是通过java.lang.classloader的一个默认实例完成的,你可以在你要发布的.class文件头部加上自己的信息(Binary),然后重载classloader,过滤掉你的信息,然后解释执行就可以了。这样的话,一般的反编译程序是无法反编译的,因为里面有无法识别的信息。这种方法有人成功过,我没试过,你可以试试看,若成功的话,给我说一声!
      

  2.   

    你重载的classloader也是可以反编译的,然后据此去掉.class文件的头部信息不就解了吗?
      

  3.   

    谁还有对*.class 不能被反编译的方法
      

  4.   

    i am sorry!i have a simple question!what is 反编译?thanks
      

  5.   

    i am sorry!i have a simple question!what is 反编译?thanks
      

  6.   

    to javaboy:说的也是,呵呵,那么是不是你要开发一个独特的反编译工具专门反编译我的程序??再说,我为什么非要在文件头部写我的信息??我只是举个例子而已,我用一些规律在文件中随机写入一些信息,在classloader中用同样的方法过滤,你就是反编译了classloader,也没办法去除我的信息,是不是?我说过有人成功过,著名的anfy java我反编译过,就发现有不可识别信息,估计就是用这种办法,不信试试看!
      

  7.   

    最简单的一种方法是将所有class文件打包成jar文件,
    然后截掉最后10几个字符存在到数据库中,等用户加载时再
    写上,
    加载完后又截掉,
    如果去掉了最后10几个字符,用解压工具就解不开了。
    我试过,成了。
      

  8.   

    to binriyue:能否看看你的程序?呵呵,只是问一问,不行就算了。email:[email protected]
      

  9.   

    我是想知道classloader是怎么覆盖的
      

  10.   

    To binryue:能否帮我传一个例子过来.谢谢!Email:[email protected]