导航:首页 > 源码编译 > 反编译原理有哪些

反编译原理有哪些

发布时间:2022-02-28 16:31:42

❶ 如何把JAR包里的.class文件转化成.java文件。求反编译原理,不要工具。谢谢,我没分......

字节码要转回java源文件是不太可能的
你可以去看一下啊有关字节码的书
对于class的文件 你可以用javap这个指令来看一下他的结构的

❷ classloader的原理 有哪些类加载器 为什么要用自定义类加载器

原理之类的,你自己上网看资料吧,不是一两句话说得清的。

至于为什么用自定义类加载器,个人总结了一下可能有下面几点吧,可能不全,也请大家补充:

  1. 加密:众所周知,java代码很容易被反编译,如果你需要把自己的代码进行加密,可以先将编译后的代码用某种加密算法加密,然后实现自己的类加载器,负责将这段加密后的代码还原。

  2. 从非标准的来源加载代码:例如你的部分字节码是放在数据库中甚至是网络上的,就可以自己写个类加载器,从指定的来源加载类。

  3. 动态创建:为了性能等等可能的理由,根据实际情况动态创建代码并执行。

  4. 其他(这个理由非常给力吧^_^)

❸ 请问什么是反编译,原理是怎么样的

反编译
高级语言源程序经过
编译
变成可执行文件,反编译就是逆
过程

但是通常不能把可执行文件变成高级语言
源代码
,只能转换成
编程

计算机软件反向工程(Reversepengineering)也称为计算机软件还原工程,是指通过对他人
软件
的目标程序(可执行程序)进行“逆向分析、研究”工作,以推导出他人的
软件产品
所使用的
思路

原理

结构

算法
、处理过程、运行方法等设计
要素
,作为自己开发软件时的参考,或者直接用于自己的软件产品中。

❹ qtp的录制原理是什么

利用开发语言的反编译原理,将控件的方法和属性预先封装。如此,在录制的时候,只要打开相应的插件,QTP就能够准确识别控件类型及其对应的属性等内容(特殊控件除外)。

❺ 请问什么是反编译,原理是怎么样的

反编译
高级语言源程序经过 编译 变成可执行文件,反编译就是逆过程。

但是通常不能把可执行文件变成高级语言源代码,只能转换成汇编程序。

计算机软件反向工程(Reversepengineering)也称为计算机软件还原工程,是指通过对他人软件的目标程序(可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素,作为自己开发软件时的参考,或者直接用于自己的软件产品中。

❻ 反编译原理是什么

反编译的流程,就是虚拟一个执行环境,看程序执行了那些指令,翻译成相应的语句一般的流程是先把程序调入到数据段,虚拟运行环境,一般这分配文件头部,从纪录指令程序数据段,载入到虚拟环境中,纪录指令,遇到跳转指令,压入栈,形成树结构(看数据结构),遍历每个节点的指令。形成完整程序。

❼ frontend反编译的原理是什么求大神帮助

以下摘录于Delphibbs中Dr.yysun 的回答,希望对你有帮助用 Java 编程的人, 如果不想公开源程序, 就得与反编译器作斗争,必须使用反编译器,先看看别人将会如何看你的程序,再看看Obfuscators(扰乱器)的效果.JAD 是 Windows 下效果极佳的反编译器 http://www.geocities.com/SiliconValley/Bridge/8617/jad.html 围绕这个引擎, 有很多图形界面, 例如 FrontEnd. (我常用)JODE 是免费的 Java 反编译器和优化器. http://jode.sourceforge.net/ Intr@byte 是个 JBuilder 的外挂工具 (OpenTool), 使得您在 JB 中能打开 *.class http://www.webappcabaret.com/bjb/index.jsp 它也使用 JAD 引擎, 并限制为只反编译器类的定义部分.有些网站可以帮您反编译, 您给个 URL, 它分析出其中有多少个 applet,然后, 再反编译掉. http://www.jreveal.org/ 最后, 您想了解反编译原理, 想自己编个反编译器和扰乱器, 这里有本免费得书 . http://www.riis.com/depile.html 其他到 yahoo 里找吧, 太多了.JJams_King: 扰乱器就是把 bytecode 中的类名,方法名,变量名等变成无意义的符号。例如,以下源程序:package temp;public class HelloWorld { String helloWorld = "Hello World"; String byeWorld = "Bye World"; public static void main(String[] args) { new HelloWorld(true); new HelloWorld(false); } HelloWorld(boolean isHappy) { if (isHappy) { System.out.println(helloWorld); } else { System.out.println(byeWorld); } }}加扰后,再反编译出来是:package a;import java.io.PrintStream;public class a{ String a; String b; a(boolean flag) { a = "Hello World"; b = "Bye World"; if (flag) System.out.println(a); else System.out.println(b); } public static void main(String astring[]) { new a(true); new a(false); }}而更高级的扰乱器,还能加密字符常量和扰乱程序流。加扰后,再反编译后变成这样:package a;import java.io.PrintStream;public class a{ String a; String b; public static boolean c; a(boolean flag) { a = a("q\0041\033/\03162\005,]"); b = a("{\0308W\027V\0231\023"); if (!flag) goto 42 else 26; System.out.println(a); if (!c) goto 52 else 42; System.out.println(b); } public static void main(String astring[]) { new a(1); new a(0); } private static String a(String string) { char ach[]; int i; int j; int k; ach = string.toCharArray(); i = ach.length; j = 0; k = 0; expression 57 expression ach expression j expression 97 expression ach expression j expression 93 expression ach expression j expression 119 expression ach expression j expression 64 expression ach expression j p 2 over 1 push [] ^ pop [] j++; k++; if (i == j) return new String(ach); expression k switchcase 1: goto 21case 2: goto 29case 3: goto 37case 4: goto 45case 5: goto 10default: goto 54 }}你想破译其中的思路可就难了 :)以上资料摘自: http://www.zelix.com/klassmaster/

❽ 反编译原理是什么

反编译的流程,就是虚拟一个执行环境,看程序执行了那些指令,翻译成相应的语句
一般的流程是先把程序调入到数据段,虚拟运行环境,一般这分配文件头部,从纪录指令程序数据段,载入到虚拟环境中,纪录指令,遇到跳转指令,压入栈,形成树结构(看数据结构),遍历每个节点的指令。形成完整程序。

❾ c/c++是如何破解软件的

如果知道软件写的语言最好不过了,对你破解会有很大的促进

然后要破解的话,有些软件是会加壳保密的,这个时候就必须脱壳,不过这个脱壳还是不复杂,毕竟是因为这个没有办法你自己来写脱壳,现成的工具就好,记得aspackdie好像就可以,要的话可以发给你,

我记得自己手动的尝试破解一个软件就用微软的记事本来练习,但是发现到后来不知道自己应该干嘛了,因为很多涉及到基础的编码,汇编语言的知识,到后面能够猜出一些东西,真的要到自己去修改它的时候,发现并没有想象的那么简单

说实话用c/c++破解,我的技术水平是远远不够的,真的想要深入的学习的话,可以先从学习汇编语言和编译原理反编译原理开始学习,可以买一些专业的书籍学习,只是一时好奇建议没有必要,水很深...囧rz

/*************************电泡泡*************************/
Ps:如想进一步交流请直接hi我,或者email [email protected] 望采纳

阅读全文

与反编译原理有哪些相关的资料

热点内容
别告诉我你会记笔记pdf 浏览:157
一套谷歌51浏览器易源码 浏览:374
unix安装命令 浏览:55
cephmonitor源码 浏览:436
单片机的硬件结构重点 浏览:554
地铁逃生用什么服务器最好 浏览:927
租用云服务器怎么样 浏览:437
app上诉通讯录有什么后果 浏览:513
关于加密货币使用分布的图表 浏览:337
王的命令哪个app好看 浏览:769
快乐大本营比脸app叫什么 浏览:681
wt是什么服务器 浏览:128
首页indexphp模板 浏览:343
java7并发编程实战手册pdf 浏览:344
windows打印机编程 浏览:236
怎么用纸做解压小方块 浏览:266
8253的编程方式 浏览:142
云服务器无法连接到当前网络 浏览:469
香港服务器什么时候租用 浏览:600
福州高精密三坐标测量仪编程 浏览:711