999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Java軟件保護(hù)技術(shù)的應(yīng)用與不足探析

2013-08-15 00:44:35天津工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與軟件學(xué)院李夢濤
電子世界 2013年6期

天津工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與軟件學(xué)院 李夢濤

1.Java軟件面臨的風(fēng)險

在Java的編譯過程中不將變量和方法等符號的引用轉(zhuǎn)換為數(shù)值引用,也不確定程序執(zhí)行過程中的內(nèi)存狀態(tài),只是將這些符號的引用信息保留在類文件中,由解釋器在運(yùn)行過程中創(chuàng)建內(nèi)存布局,然后再通過查找表來確定一個變量或方法所在的地址。Java源代碼不像C/C++源代碼一樣被編譯成二進(jìn)制機(jī)器碼,編譯Java源代碼會生成中間字節(jié)碼,是一種與平臺無關(guān)的源代碼的表示方式。字節(jié)碼在加載后可以被解釋或編譯,這就產(chǎn)生了高級編程語言到底層機(jī)器代碼之間的兩步變換。是這一中間步驟使得反編譯Java字節(jié)碼得到的源代碼近乎完美。字節(jié)碼攜帶了在源文件中可以找到的所有重要信息。盡管注釋和格式丟失了,但所有的方法、變量和編程邏輯都完好的保留下來,由于字節(jié)碼不表示最底層機(jī)器語言,因此代碼的格式非常類似于源代碼。

Java類文件不是真正的二進(jìn)制文件,而是一種有格式的中間代碼,這就給反編譯Java類文件提供了可能。反編譯得出的代碼具有很高的質(zhì)量,基本上可以完全反映編寫者的思路,這樣一來,軟件開發(fā)商和軟件開發(fā)人員投入大量精力和艱苦努力編寫的源代碼就很容易被黑客竊取,軟件中包含的重要算法也會泄露出去。因此Java應(yīng)用程序也就毫無保密性可言,Java軟件在知識產(chǎn)權(quán)的保護(hù)上面臨著很大的安全風(fēng)險。

2.Java軟件保護(hù)技術(shù)研究

目前的Java軟件的保護(hù)方法大多是基于單機(jī)應(yīng)用的研究,傳統(tǒng)的Java軟件保護(hù)方法主要有本地化技術(shù)、遠(yuǎn)程接口訪問技術(shù)、軟件數(shù)字水印技術(shù)以及混淆技術(shù),其中軟件數(shù)字水印技術(shù)和混淆技術(shù)是目前研究、應(yīng)用較多,受到廣泛關(guān)注的技術(shù)。

2.1 本地化技術(shù)

Java本地化,是指通過將Java應(yīng)用程序編譯成本地應(yīng)用程序來達(dá)到增加反編譯的難度,實(shí)現(xiàn)軟件保護(hù)的方法。實(shí)現(xiàn)步驟如下:首先編寫Java源代碼,然后通過Java編譯器將Java源代碼編譯成Java類文件,最后使用本地編譯工具將Java類文件編譯成二進(jìn)制的本機(jī)應(yīng)用程序。本地化技術(shù)雖然能夠很好的保護(hù)Java類文件,使其達(dá)到與傳統(tǒng)的用C/C++等語言開發(fā)的軟件一樣的安全強(qiáng)度,但也存在一些問題:本地化技術(shù)能夠?yàn)檩^簡單的單戶機(jī)應(yīng)用軟件提供較高水平的保護(hù),其反編譯的難度與傳統(tǒng)的C/C++開發(fā)的軟件相同,但還無法對復(fù)雜的應(yīng)用軟件提供全面的保護(hù),也無法保護(hù)B/S結(jié)構(gòu)的應(yīng)用軟件,此外,要準(zhǔn)確的診斷和定位本機(jī)編譯產(chǎn)生的Java應(yīng)用程序中出現(xiàn)的問題也是十分困難。雖然目前發(fā)展還很不成熟,但卻是Java領(lǐng)域一項(xiàng)廣受關(guān)注的技術(shù)。實(shí)踐和理論己經(jīng)證明,對于某些應(yīng)用軟件和使用環(huán)境,本地化技術(shù)不失為一種優(yōu)秀的解決方案。

2.2 遠(yuǎn)程接口訪問技術(shù)

分布式結(jié)構(gòu)是現(xiàn)代軟件開發(fā)中廣泛采用的一種體系結(jié)構(gòu),通常將軟件分為客戶端和服務(wù)器端,核心的功能模塊和業(yè)務(wù)流程都部署在服務(wù)器端為客戶端提供服務(wù),客戶端負(fù)責(zé)采集數(shù)據(jù)、提交服務(wù)請求和與服務(wù)器端通信,這種體系結(jié)構(gòu)的采用可以提高系統(tǒng)的可移植性和互操作性,大幅度降低軟件的開發(fā)成本。遠(yuǎn)程接口訪問技術(shù)能有效地保護(hù)關(guān)鍵的Java類文件,從而達(dá)到軟件保護(hù)的目的。但是這種方式也存在著明顯的局限性和很大的安全隱患:遠(yuǎn)程接口訪問技術(shù)實(shí)際上是將保護(hù)的焦點(diǎn)從關(guān)鍵的類文件轉(zhuǎn)移到了應(yīng)用服務(wù)器上。在這種體系結(jié)構(gòu)下,制定完善的安全機(jī)制來保護(hù)端口至關(guān)重要,因?yàn)槿绻麘?yīng)用服務(wù)器被攻破,那么所有部署在服務(wù)器上的服務(wù)模塊和類文件就完全暴露在攻擊者面前,后果不堪設(shè)想。

2.3 軟件數(shù)字水印技術(shù)

軟件數(shù)字水印是眾多數(shù)字水印的一種,它的主要保護(hù)對象是計(jì)算機(jī)代碼,包括源代碼和機(jī)器碼。使得它們免于或者減少遭受非法復(fù)制和非法篡改的危險,由于計(jì)算機(jī)代碼是不能容忍任何錯誤的,因此一些傳統(tǒng)的利用可允許錯誤范圍內(nèi)修改計(jì)算機(jī)程序從而嵌入水印的方法將不適用于計(jì)算機(jī)軟件。軟件數(shù)字水印技術(shù)也存在一些不足,比如:需要插入額外的代碼,需要仔細(xì)地編寫函數(shù)及其調(diào)用,否則容易被有經(jīng)驗(yàn)的反編譯者識破,從而擦除水印。另外,靜態(tài)軟件數(shù)字水印算法的健壯性相對較差,而動態(tài)軟件數(shù)字水印算法雖然具有很好的健壯性,但是它只能保護(hù)整個應(yīng)用程序,而不能保護(hù)某一部分特定的代碼,同時,動態(tài)軟件數(shù)字水印的檢測方式令它的某些應(yīng)用受到限制。目前的水印算法在提供可靠的版權(quán)證明方面或多或少都有一些的尚不完善的地方,因此尋找能提供完全可靠版權(quán)保護(hù)的軟件數(shù)字水印算法成為一個重要的課題。軟件數(shù)字水印的用途主要有以下幾個方面:作為侵犯知識產(chǎn)權(quán)的證據(jù);發(fā)現(xiàn)被剽竊的程序;追蹤非法拷貝的源頭。

2.4 混淆技術(shù)

代碼混淆技術(shù)是目前比較成熟和流行的一種軟件保護(hù)技術(shù)。代碼混淆技術(shù)是對類文件進(jìn)行代碼語義、程序流程和邏輯結(jié)構(gòu)的重新組織,代碼混淆并不能增加反編譯的難度,使用反編譯器仍然可以對混淆后的類文件進(jìn)行反編譯,得到代碼,但此時的代碼是經(jīng)混淆后的代碼,可讀性已經(jīng)大大降低,難以從代碼中發(fā)現(xiàn)源代碼的編寫思路和關(guān)鍵算法,從而達(dá)到保護(hù)軟件的目的。混淆是一個相對安全的過程,可以完整地保留應(yīng)用程序的功能。但某些情況下,混淆程序所執(zhí)行的變換也可能會影響程序的正常運(yùn)行。如:動態(tài)類加載的問題、反射問題、串行化問題和違反命名慣例的問題,這些問題雖然較少出現(xiàn),但卻會影響程序的正常執(zhí)行,另外,混淆技術(shù)的應(yīng)用使得維護(hù)應(yīng)用程序和排除故障變得更加困難,有時甚至是不可能的。Java異常事件處理是隔離有缺陷代碼的一種有效方式,而查看堆棧跟蹤一般可以告訴用戶何處出錯以及出什么錯。為源代碼文件名和行編號保留調(diào)試信息,保證運(yùn)行時可以報告出錯代碼的準(zhǔn)確位置。混淆程序可能會禁止這一特性并使調(diào)試變得困難,因?yàn)殚_發(fā)人員只能看到被混淆的類名稱而不是真正的類名稱和行編號。

3.結(jié)束語

目前己經(jīng)有很多針對Java軟件的保護(hù)方法,在一定程度上起到了保護(hù)Java軟件的作用,但是這些方法都有各自的局限性和不足。Java軟件的知識產(chǎn)權(quán)保護(hù)問題也遭遇了非常大的挑戰(zhàn),許多廠商和個人投入大量人力物力開發(fā)的軟件被侵權(quán),一些重要的算法和創(chuàng)新思想被抄襲。因此,研究針對Java軟件的保護(hù)方法已經(jīng)迫在眉睫。

[1]申茜,辛?xí)暂x.JAVA軟件面臨的風(fēng)險及其保護(hù)[J].電腦知識與技術(shù)(學(xué)術(shù)交流),2007(23).

[2]胡燕京,張健,王海義,劉軼群.軟件保護(hù)研究及其在Java軟件保護(hù)中的應(yīng)用[J].現(xiàn)代電子技術(shù),2007(15).

[3]楊勇義.基于Android平臺的軟件保護(hù)技術(shù)研究[D].北京郵電大學(xué),2012.

[4]霍建雷.用于Java軟件保護(hù)的代碼混淆技術(shù)研究與實(shí)現(xiàn)[D].西北大學(xué),2009.

主站蜘蛛池模板: 国产色偷丝袜婷婷无码麻豆制服| 日本一区二区三区精品国产| 久久女人网| 国产成人精品午夜视频'| 熟女成人国产精品视频| 精品亚洲欧美中文字幕在线看| 亚洲二区视频| 国产精鲁鲁网在线视频| 婷婷六月综合网| 国产理论最新国产精品视频| 园内精品自拍视频在线播放| 激情在线网| 一级毛片免费观看不卡视频| 国产精品免费福利久久播放| 三上悠亚精品二区在线观看| 亚洲va视频| 亚洲国产黄色| 特黄日韩免费一区二区三区| 九九这里只有精品视频| 色婷婷色丁香| 中文字幕乱妇无码AV在线 | 精品久久蜜桃| 综合色88| 第九色区aⅴ天堂久久香| 欧美不卡视频在线| 伊人中文网| 国产成人调教在线视频| 国产无码在线调教| 91精品专区| 国产一二三区在线| 亚洲成网777777国产精品| 自拍亚洲欧美精品| 9966国产精品视频| 亚洲天堂视频在线观看| 不卡无码h在线观看| 高清无码一本到东京热| 日本午夜在线视频| 99国产精品一区二区| 小蝌蚪亚洲精品国产| 婷婷伊人久久| 日韩毛片基地| 中文字幕无线码一区| jizz在线免费播放| 综合社区亚洲熟妇p| 久久中文字幕2021精品| a免费毛片在线播放| 亚洲天堂区| 国产丝袜91| 亚洲成aⅴ人片在线影院八| 99久久亚洲综合精品TS| 高清无码不卡视频| 免费人成视网站在线不卡| 91年精品国产福利线观看久久| 亚洲欧洲一区二区三区| 日本福利视频网站| 亚洲第一区精品日韩在线播放| 狼友视频一区二区三区| 天天躁狠狠躁| 亚洲成人一区二区三区| 欧美成人精品高清在线下载| 久久国语对白| 国产精品xxx| 亚洲三级色| 日韩 欧美 国产 精品 综合| 99久久精品国产自免费| 五月婷婷亚洲综合| 尤物精品视频一区二区三区| 曰韩人妻一区二区三区| 99精品影院| 99re热精品视频国产免费| 欧美日本不卡| 国产99视频在线| 五月天丁香婷婷综合久久| 国产精欧美一区二区三区| 免费观看亚洲人成网站| 国产高清自拍视频| 欧美天堂在线| 任我操在线视频| 国产成人夜色91| 一区二区午夜| 无码国产伊人| 色综合久久无码网|