1. 程式人生 > >程式碼混淆神器 Allatori

程式碼混淆神器 Allatori

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 修飾的方法都被混淆

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