計算機軟件反向工程(Reverse engineering)也稱為計算機軟件還原工程,是指通過對他人軟件的目標程序(比如可執行程序)進行“逆向分析、研究”工作,以推導出他人的軟件產品所使用的思路、原理、結構、算法、處理過程、運行方法等設計要素,
某些特定情況下可能推導出源代碼。反編譯作為自己開發軟件時的參考,或者直接用於自己的軟件產品中。
擴展資料
反編譯是壹個復雜的過程,反編譯軟件有:
1、SWF相關的反編譯程序
Action Script Viewer
第壹個也是最強大的商業SWF反編譯工具,同類產品中,它的AS代碼反編譯效果最好,SWF轉Fla工程重建成功率最高。
2、Android相關的反編譯程序
SMALI/BAKSMAL?
SMALI/BAKSMALI是壹個強大的apk文件編輯工具,用於Dalvik虛擬機(Google公司自己設計用於Android平臺的虛擬機)來反編譯和回編譯classes.dex。其語法是壹種寬松式的Jasmin/dedexer語法,而且它實現了.dex格式所有功能(註解,調試信息,線路信息等)。
3、Python相關的反編譯程序
uncompyle2?
uncompyle2可以直接轉化為十分完美的python源碼,並可以將反編譯後的源碼再次生成字節碼文件。
百度百科-反向編譯