反向编译

更新时间:2023-12-24 15:51

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

定义

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

类型

反编译:机器码(汇编语言) → 高级编程语言

但是通常不能把可执行文件变成高级语言源代码

相关软件

编译是一个复杂的过程,反编译软件有:

VB相关的反编译程序

VBExplorer、VB反编译精灵和VBRezQ.

JAVA相关的反编译程序

JAD(Joint Application Development):(jad和jadEclipse已较长时间没有维护);

JD(Java Decompiler)

C++相关的反编译程序

eXeScope

Delphi相关的反编译程序

DEDE

c#:相关的反编译程序

Reflector

易语言相关的反编译程序

E-Code Explorer.exe(易格式可执行文件分析器)

SWF相关的反编译程序

Action Script Viewer

第一个也是最强大的商业SWF反编译工具,同类产品中,它的AS代码反编译效果最好,SWF转Fla工程重建成功率最高。

Android相关的反编译程序

SMALI/BAKSMALI

SMALI/BAKSMALI是一个强大的apk文件编辑工具,用于Dalvik虚拟机(Google公司自己设计用于Android平台的虚拟机)来反编译和回编译classes.dex。其语法是一种宽松式的Jasmin/dedexer语法,而且它实现了.dex格式所有功能(注解,调试信息,线路信息等)。

Python相关的反编译程序

uncompyle2

uncompyle2可以直接转化为十分完美的python源码,并可以将反编译后的源码再次生成字节码文件!

闪客精灵

(解析SWF,还原SWF文件为FLA文件)

希望能有更多语言的反编译程序和程序的效率、效果增添到此词条中,谢谢大家!

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}