本文目录一览:
- 1、java写的软件不能破解吗
- 2、Java破解器
- 3、怎么破解JAVA游戏
- 4、JAVA软件如何破解?
- 5、JAVA应用怎么破解?
java写的软件不能破解吗
java写的软件都是可以破解的,只是写的时候加密的复杂程度越复杂,越不好破解
Java破解器
java反编译器JAD.exe.
能将任何java的类文件反编译成.java文件,就可以看java软件的源代码了
反编译单个JAVA语言的CLASS文件,在命令行输入:
jad example.class回车.
然后在你当前目录会生成一个example.jad的文件!把它的后缀改为java就可以阅读了!(你可以忽
略.class后缀)选项 -s后缀允许你更改输出文件的后缀.
jad -sjava example.class
这条命令生成文件”example.java”.当你同时使用选项-o和-sjava时要小心了,因为Jad会意外
的覆盖掉你的源文件.
jad使用JAVA的CLASS文件名作为默认的输出文件名.举个例子,如果CLASS文件”example.class”
包含了JAVA的CLASS”test”那么jad会优先生成”test.jad”.如果你想要指定一自己的输出文
件名,请使用重定向:
jad -p example.class myexm.java
选项-d允许你指定输出文件到另外一个文件夹,这个文件夹将默认创建在当前目录.举个例子:
jad -o -dtest -sjava *.class
(或者jad -o -d test -s java *.class,两者是一样的)
这条命令反编译所有.class文件在当前目录并且放置所有输出文件在目录”test”以.java为后
缀名.
如果你想反编译整个java类树,用如下命令:
jad -o -r -sjava -dsrc tree/**/*.class
这条命令反编译所有.class文件位于”tree”以及子目录并且建立输出文件在’’src”目录的相
对子目录中依照类的包名.举个例子,如果文件”tree/a/b/c.class”包含类”c”来自
包”a.b”,那么数车文件的名字是’’src/a/b/c.java”.
怎么破解JAVA游戏
用HALO 可以破解大多数用短信收费的JAVA游戏```
操作很简单```用HALO 打开想要XX 的JAVA游戏
工具-配置-对JAVA进行破解 选上
再依次按下 F5 F6 F7就可以了
破解后的游戏保存在HALO 目录下的GAME 目录里
JAVA软件如何破解?
这个问题太笼统了。一般来说软件破解最起码需要先反编译软甲代码,然后好到漏洞,进行破解!
JAVA应用怎么破解?
一.破解工具预备
要破解JAVA软件,必须要反编译用JAVA编写的类文件。由于网上大虾们的支持,许多反编译软件被研制出来
其中,我经常使用的是:
1. cavaj Java Decompile 1.11
2.Java源代码反编译专家(该软件支持目录编译)
3.JAD
这三个软件各有优缺点:前二个软件是GUI界面,使用起来很方便。尤其是"Java源代码反编译专家",支持
目录编译,用起来很得心应手;第三个软件JAD功能最强,由于是字符界面,但是相对初学者比较难一点。
二.破解步骤
1.首先分析批处理文件,找到第一个调用的CLASS。
在分析iavaZIP20软件的iavaZIP2.bat,我把最重要的一句COPY到下行:
com.sfs.app.iavazip20.iavaZIP20 %1 %2 %3 %4 %5 %6 %7 %8 %9
可以知道,在com\sfs\app\iavazip20的目录下的iavaZIP20.CLASS就是被调用的第一个CLASS.
2.反编译第一个CLASS,分析MAIN方法,寻找版本控制的代码段
我用“cavaj Java Decompile 1.11”编译iavaZIP20.class文件,很快就可以得到该软件的JAVA代码,
main方法的全部代码如下:
public static void main(String args[])
{
iavaZIP20 iavazip20 = new iavaZIP20(args);
if(iavazip20.isEXPired())
{
System.out.println("iavaZIP20 trial time has expired. Please purchase and enter licence key.");
for(_cls13 _lcls13 = new _cls13(iavazip20, true); _lcls13.expirationFrame.isShowing();)
{
try
{
Thread.sleep(1000L);
}
catch(InterruptedException _ex) { }
}
if(_cls66.isSerialRegcode(((_cls1) (iavazip20)).res.getProperty("user.id")))
{
iavazip20._fld6.remove(iavazip20._fld4);
iavazip20._fld6.add("Right", iavazip20._fld4 = iavazip20._fld0 = new _cls13(iavazip20));
iavazip20._fld6.validate();
} else
{
iavazip20.dispose();
System.exit(0);
}
}
iavazip20.show();
}
很明显,iavazip20.isExpired()就是版本控制的代码。
3.分析版本控制的语句,找到破解的方法
由于isExpired()的方法的代码如下:
public boolean isExpired()
{
return !_cls66.isSerialRegcode(super.res.getProperty("user.id", "0")) Long.parseLong(super.res.getProperty("magic")) magicTime System.currentTimeMillis();
}
看了com\sfs\app\iavazip20的所有文件,由于该文件夹中的文件都是从1-66之间的整数问文件名,“class”为扩展名的类文件,分析“!_cls66.isSerialRegcode”的方法是破解的要害类应该就是66.class文件