to:trumplet(检查)谢谢!开源是对于程序员来说的!加密是对于用户来说的!再说这也是归学习用!你有好的方法吗?

解决方案 »

  1.   

    一、JADE的安装。在我提供的那个页面的最下面有一行字:2. Download Setup.class 请下载这个Setup.class类文件然后,在命令提示符下面,使用java Setup.class运行,会出现一个图性化安装界面。安装到x:\xxx\jade下面然后在ClassPath里面设置x:\xxx\jade\lib
    二、JADE的使用。
    在命令提示符下面,使用命令java Jade +g(使用GUI图性化界面)输入你的产品根目录(防止所有类的目录,好比是你resin\doc\web-inf\classes一样)
    再添加所有的主要类(用来引用其他类的主要类,好比是所有的servlet)
    点[继续]
    会问你java和javax等类是否不进行处理,不要管它,继续点[继续]
    接下来,会让你选择类文件内容搅乱的方式,推荐使用全部,点[继续]在检查过类依赖性后,就会进入最最重要的环节,
    在下方的搅乱将要框内,一定要把改类名这个勾勾去掉(因为,如果你的主类文件不止一个,类名字被改动了,整个就乱掉了,所以,不推荐修改类的名字)
    然后,在Naming space for obfuscation name那个文本框里输入你想要做替换的字母列表,可以输入01或者输入oO
    点[继续]
    填写一个你希望输出的目录,在随便给配置文件起一个名字(日志文件),再点继续就ok了
      

  2.   

    README for JADE 1.0 Beta
    Thank you for using Jade 1.0 beta evaluation. 
    Jade, Java anti-decompiler, is designed by TDC, Sun Microsystems corp. It is used to protect your intelligent right of your Java product. 0. Getting Start 
    0.1 How to install Jade
    Jade is a self extracted package. You can only input the correct password "suntdc" and the target directory you want to install Jade. 
    Jade can only installed with JDK1.1.X and above. Please setup your JDK environment at first, then run "java Setup". 
    This excution will generate the following directory structure. 
    Your Jade root dir/ 
    ----------- | 
    ----------- +---------bin
    ----------- | ---------|
    ----------- | ---------+-----jade 
    ----------- |--------- | 
    ------ | ---------+-----clsedit 
    ----------- |--------- 
    -------+---------lib 
    -------| ------ - | 
    -------| -------- +-----Jade.class 
    ----------- | -------- |
    ----------- |--------- +.......
    ----------- | 
    ----------- +---------docs
    ----------- ----------- | 
    ----------- ----------- +-----userguide-JADE.html 
    ----------- ----------- |
    ----------- ----------- +....... 
    0.1 Config Jade 
    Jade has a bin subdirectory, you can add /bin to your path environment and run "jade......" or you can add /lib to your CLASSPATH evironment variable and run "java Jade .....", Both are ok. 
    Anything about how to run Jade please see the user guide or run Jade without any input parameters. 1. Resources required. 
    1.1 Hardware 
    Jade is pure Java program, it can be run anywhere. 
    1.2 JDK 
    Jade command mode can be run with JDK 1.1.x and above, while Jade GUI uses some Swing API (javax.swing.*). Jade GUI can run with JDK1.2 or JDK1.1.x + Swing(javax.swing.*). 2. Download Setup.class
      

  3.   

    下载地址:http://cn.sun.com/download/jade/readme.html
      

  4.   

    1.什么是混淆器? 
       由于Java程序运行时是动态连接的,因此编译成的目标文件中包含有符号表,使得Java程序很容易被反编译,混淆器可以打乱class文件中的符号信息,使反向工程变得非常困难。
       2.现有的混淆器有什么问题? 
       现有的混淆器都是对编译好的class文件进行混淆,这样就需要编译和混淆两个步骤。并不是所有的符号都需要混淆,如果你开发的是一个类库,或者某些类需要
       3.Java混淆编译器是如何工作的? 
       Java混淆编译器是在Sun JDK中提供的Java编译器(javac)的基础上完成的,修改了代码生成过程,对编译器生成的中间代码进行混淆,最后再生成class文件,这样编译和混淆只需要一个步骤就可以完成。另外可以在源程序中插入符号保留指令来控制哪些符号需要保留,不需要单独的配置。
       4.如何安装和运行JOC? 
       下载joc.jar (http://www.apusic.com/product/cpsy.htm),运行java -jar,joc.jar就可以启动Java混淆编译器,joc的命令行参数和javac完全相同,但增加 了一个新的参数-Xobfuscate,它的用法如下: 
           -Xobfuscate:<level> 
    其中<level>指定混淆级别,可以是以下几种级别: 
           -Xobfuscate:none        不进行混淆 
           -Xobfuscate:private     对所有private访问级别的元素进行混淆 
           -Xobfuscate:package     对所有private或package private元素进行混 淆 
           -Xobfuscate:protected   对所有private, package private, protected元素进行混淆 
           -Xobfuscate:public      对所有的元素都进行混淆 
           -Xobfuscate:all         相当于-Xobfuscate:public 如果使用-Xobfuscate不带级别参数,则相当于-Xobfuscate:package
       5.如何使用符号保留指令? 
       除了在命令行用-Xobfuscate参数控制符号混淆级别外,还可以在源代码中使用符号保留指令来控制那些符号需要保留,符号保留指令是一个Java文档注释指令,可以插入在类和类成员的文档注释中,例如: 
           /** 
            * This class should preserve. 
            * @preserve 
            */ 
           public class Foo { 
               /** 
                * You can specify which field should be preserved. 
                * @preserve 
                */ 
               private int x; 
               /** 
                * This field is not preserved. 
                */ 
               private int y;   
               /** 
                * You can also preserve methods. 
                * @preserve 
                */ 
               public void hello() {} 
               /** 
                * This method is not preserved. 
                */ 
               private void collect() {} 
           } 
    如果没有@preserve指令,则根据混淆级别及成员的访问级别来确定符号是否保留。     
    对于类的符号保留指令可以附带一个保留级别参数,来控制类成员的符号保留,包 
    括: 
           @preserve            仅对类名进行保留,类成员的保留根据-Xobfuscate命令行参数决定 
           @preserve public     保留所有public成员 
           @preserve protected  保留所有public和protected成员 
           @preserve package    保留所有public, protected, package private成 员 
           @preserve private    保留所有成员 
           @preserve all        相当于@preserve private 
       6.JOC有哪些限制? 
       不支持分别编译,必须对所有的源文件进行混淆编译。-----同学习,共提高-----
     
      

  5.   

    TO:qingshan_001(青山) 请问JOC怎么用呀!我用java -jar joc.jar -Xobfuscate:all Test.java后发现文件生成是IlIlIllIlllIIIlI.class请问这个文件怎么运行?还有怎么才能用JOC直接编译所有的文件?JAVAC不是只能编译一个文件吗?
      

  6.   

    TO: qgl_fw() 请问一下JADE怎么用呀!我根据你的方法操作到在检查过类依赖性后,就会进入最最重要的环节,
    后就出提示了说主类错误路径错误的提示!但是我不用默认选择后是可以过!但是文件又没有被加密过!请问详细操作过程!!!我见过加密后生成的文件有的都是000ooo000这样的!怎么才能加密到这样而且还可以运行呀?