java專案的jar包加密(防止反編譯)
最近給公司寫了一個專案,需要給其他公司用,為了不讓別人看到原始碼,將專案打成了jar包,但是jar包用反編譯工具還是能很輕鬆的看到原始碼。所以想到了加密jar包,用的是ProGuard,下載地址:https://sourceforge.net/projects/proguard/files/。
其實jar包加密只是增加了反編譯時間,理論上還是能破解的,但是有總比沒有好。廢話少說,開始吧。
軟體下載解壓後,到bin目錄下找到proguardgui.bat檔案,雙擊開啟。
出現如下圖的軟體介面:
點選Input/Output,右邊出現兩個按鈕。Add input是你打包好的jar包,Add output是你將要生成的jar包。
新增之後如下圖,底下的android.jar是專案用到的額外的jar包,如果有也請新增進入。
好了,一路NEXT,然後點選process,出錯了
然後點選儲存配置,檔案字尾名是.pro。
用記事本開啟配置檔案,我的是test.pro。刪除紅色圈出的部分,並新增橘色部分內容,這部分是直接呼叫jar包的類和方法,要寫全類名,{*;}表示該類中所有的方法都可以呼叫,不想讓別人看到的類就不要寫在裡面,然後儲存。
點選ProGuard,匯入配置檔案,一路Next,然後點選生成,把生成的jar導到專案中,和之前的一樣的效果
用jd-gui反編譯工具開啟jar包,都是a,b,c字母代替了