當前位置:首頁 » 編程軟體 » 反反編譯

反反編譯

發布時間: 2022-01-19 12:31:08

① 什麼叫反編譯

編譯是一種將高級語言翻譯成計算機可是別的低級語言。
反之就是反編譯。
不光只java,可以編譯的高級語言都可以被反編譯。

② 如何反編譯一個MOD

第一部分 下載forge源碼+建立MOD開發環境。
(1)下載forge源碼
注意下載src鏈接的版本,不要搞錯。比如,forge-1.7.10-10.13.2.1230-src.zip(以src.zip結尾)

注意到有很多下載地址,每一行是一個版本,選擇適合自己的版本。
右邊Downloads列有幾個鏈接,其含義如下:
(a)Changelog——更改日誌。
(b)Installer——jar格式的安裝包,使用與所有平台(Win/Linux/Mac)
(c)installer-win——專屬於Windows的安裝包。
(d)javadoc——自動生成的java文檔。
(e)src—forge源代碼。
(f)universal——單純的jar庫,非安裝包。
(g)userdev——面向開放者。
(2)下載之後加壓縮到某個文件夾
只留下五個東西:gradle和src文件夾,build.gradle,gradlew和gradlew.bat。
其它的東西沒有用,可以刪除。
打開 Windows命令行,cd定位到剛才的文件。
運行:gradlew.bat setupDecompWorkspace --refresh-dependencies
等待forge反編譯完成。


第二部分,BON進行反混淆。
BON全名bearded-octo-nemesis,是由immibis開放的一個MOD反混淆工具。(immibis可是MOD屆大名鼎鼎的人,比如redlogic,Liquid XP,Advanced Machines等都是非常好用的模組)。
新建一個BON文件夾。
(1)下載userdev版本的forge。還是剛才上面那個地址,只不過這次下載userdev版本。
把下載到的文件放到BON文件夾。
(2)找到forge反編譯之後的文件。
這個文件在C:Users{username}目錄下的
.gradlecachesminecraft etminecraftforgeforge1.7.10-{forgeversion}
比如咱們這個例子就是,1.7.10-10.13.2.1230。把這個文件夾復制一份到BON文件夾。
(3)下載BON
下載到一個BON.jar文件,放到上面的文件夾內。
(4)運行。
雙擊BON.jar之後運行。

Forge userdev.jar:選擇(1)下載的文件。
FG cache folder:選擇(1)復制出來的文件夾。
然後在輸入文件位置選擇你想反混淆的代碼,再選擇要保持的輸出。
操作(operation)注意選擇:反混淆模組。
點擊Go按鈕,等待完成。
反混淆之後的代碼一般以deobf結尾。
比如StevesFactoryManagerA93.jar,反混淆之後就是StevesFactoryManagerA93.deobf.jar。
這時候就可以用jd-gui無障礙的查看代碼了。


第三步 反編譯成源代碼
如果覺得用jd-gui查看不方便的話,可以考慮用fernflower進行反編譯。
fernflower是MCP官方用來發編譯minecraft代碼的神器,雖然沒有jd-gui操作簡便,但是它反編譯代碼的質量非常高。又是官方搭配minecraft使用,是用來反編譯代碼的不二之選。
如何獲得fernflower?
fernflower的官方代碼池,然而需要編譯不方便使用。
這里提供另外兩個方法:
(1)伴隨MCP發布的版本。
去mcp官方網址下載,目前適用於1.7.10的是9.08版。
解壓縮之後,runtime/bin目錄下面,復制出來。
(2)forge提供的版本
去上面提到的.gradle/caches/minecraft目錄下,有一個fernflower-fixed.jar文件。
目前尚不知道,mcp和forge版本的有啥差別。
復制到一個位置之後,打開命令行
java -jar fernflower.jar [要反編譯的包] [保存位置]
反編譯之後的代碼,就可以用記事本直接查看。

③ 反編譯是違法的嗎

反編譯是違法的,反編譯是指計算機軟體反向工程( Revers e engineering )也稱為計算機軟體還原工程,是指通過對他人軟體的目標程序(可執行程序)進行「逆向分析、研究」工作,以推導出他人的軟體產品所使用的思路、原理、結構、演算法、處理過程、運行方法等設計要素,某些特定情況下可能推導出源代碼。反編譯作為自己開發軟體時的參考,或者直接用於自己的軟體產品中。

根據《共和國著作權法》規定有下列侵權行為的,應當根據情況,承擔停止侵害、消除影響、賠禮道歉、賠償損失等民事責任:

(一)未經軟體著作權人許可,發表或者登記其軟體的;

(二)將他人軟體作為自己的軟體發表或者登記的;

(三)未經合作者許可,將與他人合作開發的軟體作為自己單獨完成的軟體發表或者登記的;

(四)在他人軟體上署名或者更改他人軟體上的署名的;

(五)未經軟體著作權人許可,修改、翻譯其軟體的;

(六)其他侵犯軟體著作權的行為。

④ 反編譯什麼意思,具體該怎麼用

反編譯:高級語言源程序經過編譯變成可執行文件,反編譯就是逆過程。計算機軟體逆向工程,又稱計算機軟體恢復工程,是指對其他軟體的目標程序(如可執行程序)進行「逆向分析和研究」,從而推導出設計思想、原理、結構、演算法、處理過程、操作方法等要素,等被其他軟體產品使用,在某些特定情況下可能會衍生出源代碼。反編譯可以作為開發軟體時的參考,也可以直接用於軟體產品中。

(4)反反編譯擴展閱讀:

如果編譯過程中發現源程序有錯誤,編譯程序應報告錯誤的性質和錯誤的發生的地點,並且將錯誤所造成的影響限制在盡可能小的范圍內,使得源程序的其餘部分能繼續被編譯下去,有些編譯程序還能自動糾正錯誤,這些工作由錯誤處理程序完成。需要注意的是,一般上編譯器只做語法檢查和最簡單的語義檢查,而不檢查程序的邏輯。

⑤ 反編譯工具能反編譯出注釋嗎

編譯的時候注釋會變成一個空格.你能把空格反編譯成什麼?

⑥ 什麼是反編譯工具反編譯工具有什麼用

簡單來說,就是把一個已有的程序轉化為編程的命令行。至於使用反編譯的原因么……有的是為了研究一個程序以達到吸取別人的編程思路和經驗。當然也有的是為了盜版。或者是為了竊取別人的軟體。

⑦ 反編譯是什麼意思

高級語言源程序經過
編譯
變成可執行文件,反編譯就是逆過程。
但是通常不能把可執行文件變成高級語言源代碼,只能轉換成匯編程序。

⑧ 什麼叫反安裝和反編譯

以上回答都正確
專業一點的說法

反安裝就是刪除、卸載,安裝的英文是install反安裝的英文是unistall,英文中un前綴是「反」的意思,所以翻譯成中文叫做反安裝。

反編譯
計算機軟體反向工程(Reversepengineering)也稱為計算機軟體還原工程,是指通過對他人軟體的目標程序(可執行程序)進行「逆向分析、研究」工作,以推導出他人的軟體產品所使用的思路、原理、結構、演算法、處理過程、運行方法等設計要素,作為自己開發軟體時的參考,或者直接用於自己的軟體產品中。

⑨ 反編譯是什麼意思

計算機軟體反向工程(Reverse engineering)也稱為計算機軟體還原工程,是指通過對他人軟體的目標程序(比如可執行程序)進行「逆向分析、研究」工作,以推導出他人的軟體產品所使用的思路、原理、結構、演算法、處理過程、運行方法等設計要素,

某些特定情況下可能推導出源代碼。反編譯作為自己開發軟體時的參考,或者直接用於自己的軟體產品中。

(9)反反編譯擴展閱讀

反編譯是一個復雜的過程,反編譯軟體有:

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源碼,並可以將反編譯後的源碼再次生成位元組碼文件。

參考資料來源:網路-反向編譯

⑩ 網頁(html)的反編譯,然後能夠看到完整的html代碼

靜態的可以 其他的不行

熱點內容
吃雞配置太低怎麼調高畫質 發布:2024-11-15 19:58:19 瀏覽:734
王者怎麼設置來電屏蔽安卓 發布:2024-11-15 19:56:08 瀏覽:449
伺服器如何搭建多個ip 發布:2024-11-15 19:42:10 瀏覽:102
價錢低高配置的有哪些車 發布:2024-11-15 19:34:53 瀏覽:380
androidgps定位開發 發布:2024-11-15 19:34:52 瀏覽:334
如何掃碼添加伺服器地址 發布:2024-11-15 19:31:48 瀏覽:278
sql語句復制資料庫 發布:2024-11-15 19:28:02 瀏覽:837
演算法的薪資 發布:2024-11-15 19:15:22 瀏覽:322
ubuntu可以重新編譯嗎 發布:2024-11-15 19:09:10 瀏覽:649
access資料庫表的創建 發布:2024-11-15 18:51:18 瀏覽:141