jar包加密

不小心把公司的jar包給解密了。。。很尷尬,研究一下。。。
轉載自 JVM層對jar包字節碼加密

幾個思路

大致想到以下幾種方式:

  1. 混淆器,將jar包混淆後反編譯出來的東西看起來就很眼花,但如果耐心一點也是可以看出來的。eg:Jocky (一款混淆代碼的工具,)
  2. 對jar包進行加密,然後在Java層重寫類加載器對其進行解密,以達到對jar包的加密保護。包括用對稱加密算法和非對稱加密算法。不管用什麼算法,在Java層面的類加載器實現的話,其實也作用不大,因爲類加載器本身被反編譯出來後就基本暴露無遺了。 我司是用的這種方法。。。
  3. 可以修改java編譯後的class文件的某些屬性,以讓反編譯軟件分析不了,但它也不可靠,只要按照class格式深入分析下也能反編譯出來。
  4. 修改JDK源碼,定製JDK就涉及到JVM的整體改動,而且還要求外部使用,不太可行。
  5. 利用JDK中JVM的某些類似鉤子機制和事件監聽機制,監聽加載class事件,使用本地方式完成class的解密。C/C++被編譯後想要反編譯就很麻煩了,另外還能加殼。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章