1. 程式人生 > >6個常用Java 原始碼 保護工具(混淆、加密、底層)

6個常用Java 原始碼 保護工具(混淆、加密、底層)

ProGuard

Java原始碼保護工具ProGuard的3.6與4.1版 
下載地址:http://download.csdn.net/source/386505
(20080318_6)Java原始碼保護工具ProGuard的3.6與4.1版【ProGuard.rar】 大小:912 KB (934,458 位元組)解壓後是字尾為jar的可執行java壓縮檔案對3.6版本實現了部分漢化。4.1版本是未改動原版。

以下轉載:
5個常用Java 程式碼混淆器 助你保護你的程式碼
http://news.csdn.net/a/20090731/212891.html 
關鍵詞:Java  | 感謝ydj9931的提供 | 

【CSDN 7月23日訊息】從事Java程式設計的人都知道,可以通過逆向工程反編譯得到Java程式的原始碼,這種反編譯工具之一就是JAD。因此,為保護我們的勞動 成果,儘可能給反編譯人員製造障礙,我們可以使用Java Obfuscator(Java混淆器)保護Java的類檔案。

Java Obfuscator的原理就是將位元組碼轉換為一個邏輯上的對等物,這種轉換後的版本極難拆散。即使有人試圖去反編譯,過程將極其艱難複雜,並很難繞過轉換後模糊晦澀的編碼。主要的過程如下:

用一個常規編譯器(比如JDK)編譯Java原始碼執行混淆器,在受保護的環境下生成編譯類檔案。最後生成的會是一個不同的輸出文件,也許副檔名也會不同。

這個被重新命名為.class file的檔案在功能上與原位元組碼是對等的,由於虛擬機器仍然可以對其進行解譯,因此對效能不會產生影響。

以下是一些可用來混淆(obfuscate)Java位元組碼的工具:

Zelix KlassMaster

Cinnabar Canner

Jmangle Java類粉碎機

RetroGuard

JODE

相關推薦

6常用Java 原始碼 保護工具混淆加密底層

ProGuard Java原始碼保護工具ProGuard的3.6與4.1版  下載地址:http://download.csdn.net/source/386505 (20080318_6)Java原始碼保護工具ProGuard的3.6與4.1版【ProGuard.rar】 大小:912 KB (934,4

分享6java基礎+進階精簡資料視訊+原始碼+就業專案+面試報裝

  每天都有初學者詢問該如何學習,如何快速學習,因精力有限不能一一回復請見諒,現系統整理一套java初學者最佳的學習方法、路線、大綱及視訊資料,並對一些過期的知識點進行剔除!如Struts2,hibernate等舊框架!完全不需要在新手期進行學習,因為外面公司基本不再使用!希望

Docker常用的編排管理工具批量管理

supervisor compose docker 前言:我們都知道docker的好處,總而言之就是多快好省。那我們要能夠玩轉docker就得知道配合docker使用的兩種工具-------Supervisor和Compose.我來分別介紹這兩種工具和如何使用。

Java學習筆記43打印流IO流工具類簡單介紹

println comm 學習筆記 dir puts str lose tof line 打印流: 有兩個類:PrintStream,PrintWriter類,兩個類的方法一致,區別在於構造器 PrintStream:構造方法:接收File類型,接收字符串文件名,接收字節輸

golang開發常用開源項目工具持續更新中

golang開源項目 golang工具 本人在日常golang項目開發中,用到了一些第三方開源庫,大多都是優秀的開源項目,源碼值得認真閱讀研究。在此記錄用到的一些庫:解析配置文件go-ini https://github.com/go-ini/inigolang開發常用開源項目工具(持續更新中)

關於DLL調試的兩工具dependency walker和dumpbin.exe

AR all 自帶 調用 csdn arp pre ref 右上角 Dependency Walker工具: 該工具用來查看dll依賴庫和依賴庫內的函數。 左上角:模塊依賴樹,表示該dll所依賴的其它dll文件 右上角:導入函數,即與當前根模塊有關系的函數(即根模塊或根模塊

Apk反編譯工具檢視layout 和java原始碼工具

首先要準備反編譯三件套,這個在網上應該會有很多 一: 檢視layout        解壓得到apktol.jar 和 apktool.bat 同時把要反編譯的apk也一起存放在當前目錄下 然後開啟控制檯  cmd 定位到當前目錄下

6常用Excel函式,幫你進一步提升工作效率,職場必備!

我們處理Excel資料報表時候,經常因為對函式的不熟練,導致我們在插入函式時候出現不顯示情況。 那麼我們如何才能避免這些情況呢?不用擔心今天為大家整理了6個我們辦公常用到的Excel函式,學會巧妙使用它們輕鬆幫你進一步提升工作效率,職場必備良品之一! 獲取日期裡面是星期幾 大家都是到在Excel裡面獲取

6常用Excel函數,幫你進一步提升工作效率,職場必備!

取數 同名 之一 ifs 單元 重復 通過 數據報 星期幾 我們處理Excel數據報表時候,經常因為對函數的不熟練,導致我們在插入函數時候出現不顯示情況。 那麽我們如何才能避免這些情況呢?不用擔心今天為大家整理了6個我們辦公常用到的Excel函數,學會巧妙使用它們輕松幫你進

node.js 6常用核心模組介紹

一、HTTP模組 作用:處理網路客戶端的請求 二、URL模組  作用:處理客戶端請求過來的url 三、Query Strings模組 作用:處理客戶端通過get/post請求傳遞過來的引數  四、File System模組 作用:在服務端操作檔案,可能是需要將瀏

Java原始碼解析系列ArrayList原始碼解析

備註:以下都是基於JDK8 原始碼分析 ArrayList簡介        ArrayList 是一個數組佇列,相當於 動態陣列。與Java中的陣列相比,它的容量能動態增長。它繼承於AbstractList,實現了List, RandomAccess, Clonea

Java 原始碼學習系列——Integer

Integer 類在物件中包裝了一個基本型別 int 的值。Integer 型別的物件包含一個 int 型別的欄位。 此外,該類提供了多個方法,能在 int 型別和 String 型別之間互相轉換,還提供了處理 int 型別時非常有用的其他一些常量和方法。 類定義 publ

6關於Java包裝類拆箱和裝箱的判斷題,你能做對幾

雖然 Java 語言是典型的面向物件程式語言,但其中的八種基本資料型別並不支援面向物件程式設計,基本型別的資料不具備“物件”的特性——不攜帶屬性、沒有方法可呼叫。為此,Java為每種基本資料型別分別設計了對應的類,稱之為包裝類(Wrapper Classes)。 裝箱(Box

6開源Java比特幣專案

比特幣是第一種被廣泛認可並獲得眾多支援的數字加密貨幣,如果你考慮在自己的Java系統中增加對比特幣的支援,那麼相信下面這6個使用Java開發的比特幣開源專案會對你所幫助: 1、bitcoinj bitcoinj是一個得到廣泛應用的比特幣協議的java實現,它包

Java開發小工具1生成一個可執行的jar包

一、概述平常工作中難免會遇到些大量重複性沒有什麼技術含量的體力活,這時候,我們通常用程式去寫個小工具來完成,最簡單常見的就是寫個Java  Main方法,執行Main方法就可以完成相應的功能,但這樣的工

6 開源的家庭自動化工具

用這些開源軟體解決方案構建一個更智慧的家庭。 物聯網 不僅是一個時髦詞,在現實中,自 2016 年我們釋出了一篇關於家庭自動化工具的評論文章以來,它也在迅速佔領著我們的生活。在 2017,26.5% 的美國家庭 已經使用了一些智慧家居技術;預計五年內,這一數字還將翻

學以致用——Java原始碼——銷售員工資固定工資+佣金統計程式Sales Commissions

首先,此程式基於2年半前本人寫的程式改寫而成。這次,採用了新方法:使用陣列元素作為計數器(Using the Elements of an Array as Counters),而不是使用很多if...else 判斷。因此,程式碼更清晰、簡潔。而且,之前的方法有點hard-coding的感覺,當

學以致用——Java原始碼——拋硬幣Coin Tossing

十年一晃而過,十年前寫的程式碼,依然可以幫助我前進! package exercises.ch6Methods; import java.util.*; //JHTP Exercise 6.29 (Coin Tossing) //by [email protected] /*

Java開發小工具2生成可雙擊執行的exe檔案

一、概述在Java開發小工具(1)中,我們已經可以生成一個可執行的jar包,這篇博文我們將這個jar包通過工具(exe4j)包裝成一個exe檔案,這樣不用在cmd中執行java -jar XXX了,可以

JAVA 第一小專案 桌球遊戲 桌球小程式練習

今天裝了Eclipse  學習第一個小程式‘’   #載入視窗   #畫視窗 import java.awt.*;import javax.swing.*; public class BallGame extends JFrame{ Image ball = Toolkit.ge