導航:首頁 > 源碼編譯 > 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編譯混淆器相關的資料

熱點內容
pdf少年時 瀏覽:948
兩個同名文件夾同步 瀏覽:625
拍照文件夾哪個好用 瀏覽:84
文件夾和書包 瀏覽:505
解壓歸檔拿登記證 瀏覽:218
去體驗解壓房 瀏覽:608
單片機一鍵中斷響應 瀏覽:641
唐浩明pdf 瀏覽:839
程序員土木 瀏覽:71
android如何與web伺服器交互 瀏覽:604
蘋果小風扇app怎麼下 瀏覽:951
杭州it程序員對身體好不好 瀏覽:534
高新區編程加盟找哪家 瀏覽:27
伺服器什麼樣的好賣 瀏覽:147
單片機原理及應用第二版例題答案 瀏覽:967
base64encoderjava 瀏覽:489
linux視頻轉換 瀏覽:701
linux與unixshell編程指南 瀏覽:138
vb6反編譯程序錯誤 瀏覽:126
伺服器弄掛有什麼影響 瀏覽:307