Allatori是一款java混淆器程序加殼工具,它可以更全的保護用戶的知識產(chǎn)權(quán),有多種保護方式,如名混淆,流混淆,調(diào)試信息混淆,字符串混淆功能,可以用war和ear操作,下面有附使用教程,歡迎免費下載。
Allatori軟件特色
混淆是當(dāng)今構(gòu)建過程的重要組成部分。了解其重要性,我們特別注意和小心處理了這個問題。Allatori團隊取得了巨大的成果 - 我們已經(jīng)設(shè)法提供市場上最全面的功能,以最有效地保護您的知識產(chǎn)權(quán)。
Allatori Obfuscator具有保護Java軟件所需的所有功能,并且不斷增強和改進,以應(yīng)對作為尖端Java混淆器系統(tǒng)的挑戰(zhàn)。我們結(jié)合了所有經(jīng)典的混淆技術(shù)以及只能在Allatori中找到的創(chuàng)新。
功能介紹
一、 混淆器介紹
1、混淆出現(xiàn)的背景
Java是一種跨平臺的、解釋型語言,Java源代碼編譯成中間“字節(jié)碼”存儲于class文件中。由于跨平臺的需要,Java字節(jié)碼中包括了很多源代碼信息,如變量名、方法名,并且通過這些名稱來訪問變量和方法,這些符號帶有許多語義信息,很容易被反編譯成Java源代碼。為了防止這種現(xiàn)象,我們可以使用Java混淆器對Java字節(jié)碼進行混淆!
2、混淆器的優(yōu)勢
混淆就是對發(fā)布出去的程序進行重新組織和處理,使得處理后的代碼與處理前代碼完成相同的功能,而混淆后的代碼很難被反編譯,即使反編譯成功也很難得出程序的真正語義。被混淆過的程序代碼,仍然遵照原來的檔案格式和指令集,執(zhí)行結(jié)果也與混淆前一樣,只是混淆器將代碼中的所有變量、函數(shù)、類的名稱變?yōu)楹喍痰挠⑽淖帜复枺谌狈ο鄳?yīng)的函數(shù)名和程序注釋的況下,即使被反編譯,也將難以閱讀。同時混淆是不可逆的,在混淆的過程中一些不影響正常運行的信息將永久丟失,這些信息的丟失使程序變得更加難以理解。
混淆器的作用不僅僅是保護代碼,它也有精簡編譯后程序大小的作用。由于以上介紹的縮短變量和函數(shù)名以及丟失部分信息的原因, 編譯后jar文件體積大約能減少25% ,這對當(dāng)前費用較貴的無線網(wǎng)絡(luò)傳輸是有一定意義的。
Allatori怎么用
使用方法
1、文件結(jié)構(gòu)
解壓后的目錄
混淆時依賴的jar包
下面是官方帶的例子,里面有配置文件(config.xml)、運行混淆的命令文件(RunAllatori.bat)、清除產(chǎn)生的新文件的命令文件(Clean.bat)、將要被混淆的jar文件(test.jar、mousegestures-1.2.jar)
示例圖
2、文件詳細說明
圖中各個文件的內(nèi)容可以從下圖中看到:
1、Clean.bat
就是刪除生成的被混淆的文件和log文件
Clean.bat文件內(nèi)容
2、RunAllatori
調(diào)用Java命令運行allatori.jar文件,并且加載config.xml配置文件
RunAllatori文件內(nèi)容
3、 config.xml
配置文件,是混淆過程中最重要的文件,需要用戶根據(jù)實際情況來配置
Config.xml文件內(nèi)容
4、 配置文件
config標(biāo)簽:這個是配置的根標(biāo)簽。
Jars標(biāo)簽:用來設(shè)置將要被混淆的jar(war,ear)文件。應(yīng)該至少包含一個嵌套的jar標(biāo)簽和dir標(biāo)簽來設(shè)置輸入和輸出文件。我們的例子中可以看到包含了兩個jar標(biāo)簽
Jar標(biāo)簽:有兩個屬性—in、out,分別表示將要被混淆的jar文件和混淆后輸出的文件
Keep-names標(biāo)簽:用來設(shè)置那些在混淆過程中不需要被重命名的類、方法、變量。如果被混淆的應(yīng)用是個公共庫,那么應(yīng)該保留所有的公共接口名字不被重命令;如果是個獨立的應(yīng)用程序,那么將至少保留主類的名字不被重命名;當(dāng)使用到反射的時候,也要保持類名和方法名字不被重命名
Property標(biāo)簽:用來設(shè)置不同的混淆特性的,它有兩個必備的屬性:name和value。Name可以設(shè)置為----log文件、字符串加密、控制混淆流程、重命名方式等
2、 混淆效果
混淆前
混淆前的代碼
混淆后的反編譯效果:
混淆后反編譯效果
四、在項目中實際應(yīng)用
我們拿定位服務(wù)器來進行演示。
1、導(dǎo)出應(yīng)用為war包
選擇war file
選擇保存的路徑
點擊Finish
2、準(zhǔn)備lib包和編寫配置文件
準(zhǔn)備的文件
Lib目錄里面是gmlc運行所需要的jar包
配置文件
運行文件
3、運行開始命令
雙擊RunAllatori.bat文件
運行窗口
運行完成后會生成兩個文件:gmlc.allobf.war、log.xml文件
混淆完成后
Log.xml文件內(nèi)容:
通過log.xml文件可以查看哪些類、方法、變量被混淆后重命名成什么樣的名字
而gmlc.allobf.war就是混淆后的工件了,可以直接發(fā)布部署到tomcat的webapps目錄下,啟動tomcat就可以訪問了(當(dāng)然啟動之前修改一下名字,改為gmlc.war)
- PC官方版
- 安卓官方手機版
- IOS官方手機版