複製鏈接
請複製以下鏈接發送給好友

反向編譯

鎖定
計算機軟件反向工程(Reverse engineering)也稱為計算機軟件還原工程,是指通過對他人軟件的目標程序(比如可執行程序)進行“逆向分析、研究”工作,以推導出他人的軟件產品所使用的思路、原理、結構、算法、處理過程、運行方法等設計要素,某些特定情況下可能推導出源代碼。反編譯作為自己開發軟件時的參考,或者直接用於自己的軟件產品中。
中文名
反向編譯
別    名
計算機軟件還原工程
概    述
計算機軟件反向工程
定    義
高級語言源程序經過編譯變成
類    型
反編譯:機器碼(彙編語言)
關聯軟件
VBExplorer,JD(Java Decompiler)等

目錄

反向編譯定義

高級語言源程序經過編譯變成可執行文件,反編譯就是逆過程。

反向編譯類型

反編譯:機器碼(彙編語言) → 高級編程語言
但是通常不能把可執行文件變成高級語言源代碼

反向編譯相關軟件

編譯是一個複雜的過程,反編譯軟件有:
VB相關的反編譯程序
VBExplorer、VB反編譯精靈和VBRezQ.
JAVA相關的反編譯程序
JAD(Joint Application Development):(jad和jadEclipse已較長時間沒有維護);
JD(Java Decompiler)
C++相關的反編譯程序
Delphi相關的反編譯程序
DEDE
c#:相關的反編譯程序
Reflector
易語言相關的反編譯程序
E-Code Explorer.exe(易格式可執行文件分析器)
SWF相關的反編譯程序
Action Script Viewer
第一個也是最強大的商業SWF反編譯工具,同類產品中,它的AS代碼反編譯效果最好,SWF轉Fla工程重建成功率最高。
Android相關的反編譯程序
SMALI/BAKSMAL [1]  I
SMALI/BAKSMALI是一個強大的apk文件編輯工具,用於Dalvik虛擬機(Google公司自己設計用於Android平台的虛擬機)來反編譯和回編譯classes.dex。其語法是一種寬鬆式的Jasmin/dedexer語法,而且它實現了.dex格式所有功能(註解,調試信息,線路信息等)。
Python相關的反編譯程序
uncompyle2 [2] 
uncompyle2可以直接轉化為十分完美的python源碼,並可以將反編譯後的源碼再次生成字節碼文件!
閃客精靈
(解析SWF,還原SWF文件為FLA文件)
希望能有更多語言的反編譯程序和程序的效率、效果增添到此詞條中,謝謝大家!
參考資料