導航:首頁 > 源碼編譯 > java編譯混淆器

java編譯混淆器

發布時間:2022-02-14 22:36:51

㈠ 什麼是java混淆編譯

由於Java程序運行時是動態連接的,因此編譯成的目標文件中包含有符號表, 使得Java程序很輕易被反編譯,混淆器可以打亂class文件中的符號信息,使反向工程變得非常困難。

㈡ javacompile混淆器怎麼混淆後的class文件還是可以被反編譯出來呢求高手指點....

混淆的作用並不是使class文件不能被反編譯
混淆的作用是使反編譯的代碼更難讓人閱讀,比如一些計算金錢的敏感邏輯里有如下的代碼(新金額=舊金額*某個倍率):
double newMoney=oldMoney*rate;
如果這樣的代碼直接編譯成class文件,別人反編譯這個class文件就能很清楚的看到金錢的計算關系,混淆後代碼可能就變成這樣的了:
double a=b*c;
這樣的代碼別人即使反編譯了,也是很難看懂其中的邏輯關系的

㈢ Java混淆器

名稱 性質
DashO最貴, 一般都是大公司採用。

ZKM 可試用,最多同時混淆五個檔案,商業版不便宜。

JBuilder 購買 JBuilder 時會內附

JAX 可試用,商業版價格中等

RetroGuard OpenSource

㈣ JAVA 有對源代碼進行混淆的混淆器么

不需要對源代碼混淆。class有這種功能的,在J2ME中混淆是必須的,結果跟你說的一樣,不過原理不是你那麼走的,混淆以後的class反編譯也會讓人看不懂,全部變成了a,b,c,d這樣的名字。

㈤ 有沒有 Java 代碼混淆工具,不是混淆 jar 包,是混淆代碼

Java代碼混淆就像男女在一起分不出來一樣,這樣男女就變成Java的使用者----偉大的Java程序員

㈥ (java混淆器)java混淆器ProGuard的圖形界面怎麼配置參數

proguard 配置簡介
參數: -include {filename} 從給定的文件中讀取配置參數 -basedirectory {directoryname} 指定基礎目錄為以後相對的檔案名稱 -injars {class_path} 指定要處理的應用程序jar,war,ear和目錄 -outjars {class_path} 指定處理完後要輸出的jar,war,ear和目錄的名稱 -libraryjars {classpath} 指定要處理的應用程序jar,war,ear和目錄所需要的程序庫文件 - 指定不去忽略非公共的庫類。 - 指定不去忽略包可見的庫類的成員。 保留選項 -keep {Modifier} {class_specification} 保護指定的類文件和類的成員 -keepclassmembers {modifier} {class_specification} 保護指定類的成員,如果此類受到保護他們會保護的更好 -keepclasseswithmembers {class_specification} 保護指定的類和類的成員,但條件是所有指定的類和類成員是要存在。 -keepnames {class_specification} 保護指定的類和類的成員的名稱(如果他們不會壓縮步驟中刪除) -keepclassmembernames {class_specification} 保護指定的類的成員的名稱(如果他們不會壓縮步驟中刪除) -keepclasseswithmembernames {class_specification} 保護指定的類和類的成員的名稱,如果所有指定的類成員出席(在壓縮步驟之後) -printseeds {filename} 列出類和類的成員-keep選項的清單,標准輸出到給定的文件 壓縮 -dontshrink 不壓縮輸入的類文件 -printusage {filename} -whyareyoukeeping {class_specification} 優化 -dontoptimize 不優化輸入的類文件 -assumenosideeffects {class_specification} 優化時假設指定的方法,沒有任何副作用 -allowaccessmodification 優化時允許訪問並修改有修飾符的類和類的成員 混淆 -dontobfuscate 不混淆輸入的類文件 -printmapping {filename} -applymapping {filename} 重用映射增加混淆 -obfuscationdictionary {filename} 使用給定文件中的關鍵字作為要混淆方法的名稱 -overloadaggressively 混淆時應用侵入式重載 -useuniqueclassmembernames 確定統一的混淆類的成員名稱來增加混淆 -flattenpackagehierarchy {package_name} 重新包裝所有重命名的包並放在給定的單一包中 -repackageclass {package_name} 重新包裝所有重命名的類文件中放在給定的單一包中 -dontusemixedcaseclassnames 混淆時不會產生形形色色的類名 -keepattributes {attribute_name,...} 保護給定的可選屬性,例如LineNumberTable, LocalVariableTable, SourceFile, Deprecated, Synthetic, Signature, and InnerClasses. -renamesourcefileattribute {string} 設置源文件中給定的字元串常量

㈦ java反編譯器是什麼,干什麼用的;混淆器是什麼,有什麼用

反編譯器就是將.class文件變回原來的java源程序文件
不會沖突

混淆器可以打亂class文件中的符號信息,使反向工程變得非常困難。

㈧ java混淆器是做什麼的

樓上只說了其一,沒說其二: 混淆器的還有一個作用那就是對代碼進行壓縮,比如一個j2me程序打完包是400KB,使用混淆器混淆後就被壓縮成100KB的文件,這對於手機這種內存空間比較寶貴的設備來說顯得尤為必須。

㈨ 編寫java混淆工具要多長時間

看復雜度及演算法

這樣的東西都有現成的,自己來實現挺雞肋的。

㈩ Java有哪些有效的代碼混淆工具

ProGuard 是一個免費的 Java類文件的壓縮,優化,混餚器。它刪除沒有用的類,欄位,方法與屬性。使位元組碼最大程度地優化,使用簡短且無意義的名字來重命名類、欄位和方法 。eclipse已經把Proguard集成在一起了。

閱讀全文

與java編譯混淆器相關的資料

熱點內容
傳奇開5個區要什麼樣的伺服器 瀏覽:574
加密貨幣周末交易量 瀏覽:81
ubantu伺服器怎麼開機 瀏覽:13
演算法系統學習網站 瀏覽:143
js運行時載入和編譯時載入 瀏覽:323
伺服器上刪除的文件怎麼恢復 瀏覽:908
長歌行pdf 瀏覽:447
馬爾可夫演算法的基本原理 瀏覽:469
海康伺服器怎麼進入raid配置 瀏覽:189
網站伺服器卡頓什麼原因 瀏覽:89
linux定時任務腳本 瀏覽:825
什麼app能看美國電視劇 瀏覽:507
木工ug編程圖檔 瀏覽:690
稅制pdf 瀏覽:437
pdf拆分成多個pdf 瀏覽:370
抖音app無法安裝怎麼解決 瀏覽:14
數控機床與編程課後答案鄭堤 瀏覽:972
通達信編程詳解 瀏覽:798
低波動性加密貨幣 瀏覽:962
pdftoexcel在線 瀏覽:763