你頂多可以用代碼擾亂工具擾亂你的代碼,這樣反編譯的代碼就難以閱讀。比如可以試試用proguard來(lái)擾亂(“加密”)和反擾亂(“解密”)你的代碼。
10年的汝南網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。全網(wǎng)整合營(yíng)銷推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整汝南建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)建站從事“汝南網(wǎng)站設(shè)計(jì)”,“汝南網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
java本就是開源的,你加密感覺(jué)怪怪的。想防止反編譯,最簡(jiǎn)單的方法就是你可以向Jar注入無(wú)效代碼。比如建一個(gè)類,建一個(gè)沒(méi)有意義的方法private class Invalid{ },然后輸出為jar。
針對(duì)反編譯,推薦使用CBS賽博鎖,通過(guò)把安全容器內(nèi)嵌到操作系統(tǒng)中,對(duì)容器內(nèi)的應(yīng)用和數(shù)據(jù)進(jìn)行加鎖,程序和數(shù)據(jù)在容器內(nèi)運(yùn)行,實(shí)現(xiàn)最后一米數(shù)據(jù)安全,防止核心數(shù)據(jù)被泄露,防止服務(wù)器終端中病毒,防止反編譯,反破解。
以下從技術(shù)角度就常見的保護(hù)措施 和常用工具來(lái)看看如何有效保護(hù)java代碼: 將java包裝成exe特點(diǎn):將jar包裝成可執(zhí)行文件,便于使用,但對(duì)java程序沒(méi)有任何保護(hù)。不要以為生成了exe就和普通可執(zhí)行文件效果一樣了。
1、樓上只說(shuō)了其一,沒(méi)說(shuō)其二: 混淆器的還有一個(gè)作用那就是對(duì)代碼進(jìn)行壓縮,比如一個(gè)j2me程序打完包是400KB,使用混淆器混淆后就被壓縮成100KB的文件,這對(duì)于手機(jī)這種內(nèi)存空間比較寶貴的設(shè)備來(lái)說(shuō)顯得尤為必須。
2、不需要對(duì)源代碼混淆。class有這種功能的,在J2ME中混淆是必須的,結(jié)果跟你說(shuō)的一樣,不過(guò)原理不是你那么走的,混淆以后的class反編譯也會(huì)讓人看不懂,全部變成了a,b,c,d這樣的名字。
3、其中 vvv-unofb.jar 是未混淆的 jar 文件,vvv.jar 是混淆后生成的 jar 文件,vvv.rgs 是配置文件,vvv.log 是日志文件。缺省的配置文件名稱為 script.rgs,缺省的日志文件名稱為 retroguard.log。
4、代碼混淆 代碼混淆是對(duì)Class文件進(jìn)行重新組織和處理,使得處理后的代碼與處理前代碼完成相同的功能(語(yǔ)義)。
5、最直接的效果是js源文件的變下了,下載源文件的速度大大縮短,相當(dāng)于加載速度更快了。還有一個(gè)隱形好處是別人不能破解你的js代碼,因?yàn)榧用芑煜膉s代碼十分難懂。用nodejs也可以對(duì)js加密混淆,但要用cmd命令操作。
6、java混淆器特點(diǎn):使用一種或多種處理方式將class文件、java源代碼進(jìn)行混淆處理后生成新的class,使混淆后的代碼不易被反編譯,而反編譯后的代碼難以閱 讀和理解。這類混淆器工具很多,而且也很有成效。
所以理論上,混淆后的代碼無(wú)法解密。但因?yàn)樗恼麄€(gè)運(yùn)算邏輯關(guān)系鏈?zhǔn)峭暾?,與混淆前的代碼關(guān)系鏈?zhǔn)峭耆恢碌?,所以非要“破解”,只能說(shuō)摸清它的邏輯關(guān)系鏈,人為去做的話,燒腦又復(fù)雜。
得到 classes.dex文件;直接用機(jī)器上的解壓軟件 打開 .apk 文件,解壓出 classes.dex 文件。
一般情況下Java應(yīng)用的開發(fā)者為了保護(hù)代碼不被別人抄襲,在生成class文件的時(shí)候都java文件進(jìn)行了混淆,這種class文件用反編譯工具得到的結(jié)果很難看懂,并且不能進(jìn)行編譯。從研究的角度,淺析如何讀懂這種反編譯過(guò)來(lái)的文件。
當(dāng)前名稱:java代碼加密混淆 java加密方法
文章分享:http://www.rwnh.cn/article30/dcpseso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、搜索引擎優(yōu)化、外貿(mào)網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)、App開發(fā)、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)