Intellij idea把工具類打Jar包,並混淆jar包之初體驗(二)

Intellij idea把工具類打Jar包,並混淆jar包之初體驗(一)

代碼混淆神器 Allatori

準備工作

此次案例使用官方 Demo,不使用任何插件
環境:windows 10

 

1.Allatori簡介

Allatori 是第二代 Java 混淆器,可爲您的知識產權提供全方位的保護。

儘管大多數第二代混淆器都提供了值得保護的級別,但我們已經在Allatori中開發了許多附加功能,以使對代碼進行逆向工程幾乎不可能。

Allatori 不僅會混淆,還會最大程度地減少應用程序的大小並提高速度,同時您和您的團隊以外的任何人都無法讀取您的代碼。作爲每個現代 Java 混淆器,Allatori 具有完整的水印功能,從而有可能爲您的軟件提供適當的許可!

如果有必要保護您的軟件,並且要減少軟件的大小和縮短處理時間,則可以使用 Allatori 混淆器。

 - - 摘自ALLATORI JAVA混淆器官網

2.下載

1.官網最新 Allatori-7.1-Demo.zip 下載
2.CSDN下載(包含反編譯工具 jd-gui.exe)

3.內容簡介

1.解壓下載的壓縮包 Allatori-7.1-Demo.zip
然後進入目錄 xx/Allatori-7.1-Demo\tutorial\step01\files

2.目錄如下內容

 

Allatori-7.1-Demo\tutorial\step01\files

  • Clean.bat:清除 log.xml 以及生成混淆的文件
  • config.xml:混淆的配置文件
  • mousegestures-1.2.jar、test.jar:被混淆的 jar 包
  • MouseGesturesOriginal.bat:混淆前 jar 的測試命令
  • MouseGesturesObfuscated.bat:混淆後 jar 的測試命令
  • RunAllatori.bat:執行生成混淆 jar 的命令

3.config.xml 詳解

混淆的成功與否在於次配置的對與錯。官方默認對除了 public 修飾的類、方法、區域放開,其餘的都會混淆處理

<config>
    <input>
        <jar in="test.jar" out="obf-test.jar"/>
        <jar in="mousegestures-1.2.jar" out="obf-mousegestures-1.2.jar"/>
    </input>

    <keep-names>
        <class access="protected+">
            <field access="protected+"/>
            <method access="protected+"/>
        </class>
    </keep-names>

    <property name="log-file" value="log.xml"/>
</config>

<jar in="你的 jar 包名稱.jar" out="混淆後的 jar 包名稱.jar"/>

4.使用

  1. 把需要混淆的 jar 包放到剛纔的目錄下
  2. 修改 config.xml的 jar 部分,寫上被混淆 jar 的名字和混淆後 jar 的名字
  3. 雙擊 RunAllatori.bat,會生成一個新 jar

5.測試

1.如果雙擊 MouseGesturesOriginal.bat 和 MouseGesturesObfuscated.bat 的結果一樣,說明混淆成功。
2.使用反編譯工具 jd-gui.exe 查看混淆後的 jar 包,會發現除了public 修飾的方法都被混淆

注意:常量的值不會被混淆,處理方案是,放到方法中即可實現混淆
如果有哪些不對的地方煩請指認,先行感謝

 

發佈了88 篇原創文章 · 獲贊 82 · 訪問量 21萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章