複製鏈接
請複製以下鏈接發送給好友

混淆器

鎖定
混淆器是用作保護代碼、精簡編譯後程序大小的編輯工具。
中文名
混淆器
外文名
hun xiao qi
作    用
保護代碼,精簡編譯後程序

目錄

混淆器簡介

Java是一種跨平台的、解釋型語言,Java源代碼編譯成中間“字節碼”存儲於class文件中。由於跨平台的需要,Java字節碼中包括了很多源代碼信息,如變量名、方法名,並且通過這些名稱來訪問變量和方法,這些符號帶有許多語義信息,很容易被反編譯成Java源代碼。為了防止這種現象,我們可以使用Java混淆器對Java字節碼進行混淆。

混淆器意義

混淆就是對發佈出去的程序進行重新組織和處理,使得處理後的代碼與處理前代碼完成相同的功能,而混淆後的代碼很難被反編譯,即使反編譯成功也很難得出程序的真正語義。被混淆過的程序代碼,仍然遵照原來的檔案格式和指令集,執行結果也與混淆前一樣,只是混淆器將代碼中的所有變量、函數、類的名稱變為簡短的英文字母代號,在缺乏相應的函數名和程序註釋的況下,即使被反編譯,也將難以閲讀。同時混淆是不可逆的,在混淆的過程中一些不影響正常運行的信息將永久丟失,這些信息的丟失使程序變得更加難以理解。
由於以上介紹的縮短變量和函數名以及丟失部分信息的原因, 編譯後jar文件體積大約能減少25% ,這對當前費用較貴的無線網絡傳輸是有一定意義的。