從事Android App開發的都知道,一旦應用被破解,什麼原始碼、資原始檔等都可能洩露,重要點有so檔案的支付類、金融類應用等安全更是容易受到威脅!就Java語言程式設計,可以通過逆向工程反編譯得到Java程式的原始碼,這種反編譯工具有jad 、dex2jar 、jdec 、Dedexer 等。因此,為保護我們的勞動成果,儘可能給反編譯人員製造障礙,我們可以用一些程式碼混淆器混淆程式碼,保護Java的類檔案。然後,在混淆的基礎上再做一層深層保護——加密。這個方法現在也比較流行,目前,有這方面技術的,有愛加密。對Android應用安全性有要求的都應該去了解下http://www.ijiami.cn/

       下面,介紹下幾個可用來混淆Java位元組碼的工具:

        1、Zelix KlassMaster

        Zelix KlassMaster是一款用Java寫的實用工具,能讀取和修改Java類檔案,可以執行在任何支援1.1.6版Java虛擬機器的平臺上。

       下載:http://www.zdnetindia.com/downloads/info/898255.html

        2、Cinnabar Canner

        Canner通過建立一個原生Windows可執行檔案(EXE檔案)保護你的程式碼不被逆向工程反編譯,這個可執行檔案包含了你的應用程式類和資源的全部加密版本,只有在被JVM呼叫到記憶體中時才處於非加密狀態。

        網站:http://www.cinnabarsystems.com/canner.html

        下載:http://www.cinnabarsystems.com/download.html

        3、Jmangle Java類粉碎機

       Jmangle是用來阻止反編譯Java程式,降低盜版的軟體,開發者可用其粉碎類檔案中的符號。

        網站:http://www.elegant-software.com/software/jmangle/

       下載:http://www.elegant-software.com/software/jmangle/download.html

       4、RetroGuard

        JavaGuard是一款通用的位元組碼混淆器,用來無縫融入你的日常構建和測試過程中,使得你辛苦編寫寶貴的Java程式碼更加安全。

        網站:http://java-source.net/open-source/obfuscators/javaguard

        5、JODE

       JODE是一款含Java×××和優化器的java包。

       網站:http://java-source.net/open-source/obfuscators/jode

        最後要說的是,你也可使用其他幾款類似的實用工具,這些工具運用許多不同的方法達到了相同的目標。他們也有共同之處,就是允許通過不同的過程轉換生成.exe檔案,將.class和.jar檔案模糊化。