• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      軟件保護(hù)方法研究

      2009-07-29 07:11:36馬振飛
      中國新技術(shù)新產(chǎn)品 2009年12期

      馬振飛

      摘要:隨著計(jì)算機(jī)的廣泛應(yīng)用和網(wǎng)絡(luò)的日益普及,計(jì)算機(jī)軟件被盜的現(xiàn)象也越來越多,而且呈現(xiàn)出日漸猖獗之勢。本文從軟件保護(hù)的現(xiàn)狀及軟件保護(hù)的現(xiàn)實(shí)意義入手,通過對軟件保護(hù)技術(shù)的各種方法分析,并且針對各種保護(hù)方法進(jìn)行比較、權(quán)衡、及算法研究,提出了一套較為完整的軟件保護(hù)方案。

      關(guān)鍵詞:軟件保護(hù);技術(shù)保護(hù);保護(hù)方案

      1 引言

      隨著計(jì)算機(jī)技術(shù)的迅猛發(fā)展以及軟件技術(shù)的快速成長,計(jì)算機(jī)軟件技術(shù)不僅對國民經(jīng)濟(jì)建設(shè)、信息安全起著重要作用,而且還是提高科技創(chuàng)新能力,增強(qiáng)技術(shù)競爭實(shí)力的重要組成部分。由于軟件的復(fù)制、拷貝是件很容易的事,所以導(dǎo)致非法復(fù)制、盜版軟件之風(fēng)的泛濫。在這種形勢下,為了防止軟件的非法復(fù)制、盜版,保護(hù)軟件開發(fā)商的利益,研制者和銷售商對自己的軟件進(jìn)行技術(shù)保護(hù)和數(shù)據(jù)加密,以此來保護(hù)計(jì)算機(jī)軟件著作權(quán)人的權(quán)益,鼓勵(lì)計(jì)算機(jī)軟件的開發(fā)與應(yīng)用,促進(jìn)軟件產(chǎn)業(yè)和國民經(jīng)濟(jì)信息化的發(fā)展。

      2 軟件保護(hù)技術(shù)

      從技術(shù)上采取一定的防范措施非常重要,在一定范圍內(nèi)可以防范軟件的非法復(fù)制。下面介紹一下當(dāng)前常見的一些軟件保護(hù)技術(shù):

      2.1 時(shí)間限制保護(hù)技術(shù)

      在使用軟件時(shí)采用時(shí)間進(jìn)行限制,如使用期30天,當(dāng)過了共享軟件的使用期后,就不予運(yùn)行,只有向軟件作者付費(fèi)注冊后才能得到一個(gè)無時(shí)間限制的注冊版本。這種保護(hù)方式的程序很多,它們在安裝時(shí),在系統(tǒng)某處做上標(biāo)記,比如將系統(tǒng)的安裝時(shí)間存放在一個(gè)文件中,每次運(yùn)行都用系統(tǒng)的當(dāng)前時(shí)間和安裝時(shí)間作比較,判斷用戶還能否正常使用。

      2.2 序列號保護(hù)技術(shù)

      當(dāng)用戶從網(wǎng)上下載某個(gè)共享軟件后,如果過了軟件的使用期,必須經(jīng)過注冊才能繼續(xù)使用。注冊過程一般是把用戶的私人信息告訴給軟件公司,軟件公司會(huì)根據(jù)用戶的信息利用預(yù)先寫好的注冊碼程序計(jì)算出一個(gè)序列號,用戶使用序列號按照必要的步驟在軟件中輸入注冊信息和序列號,在經(jīng)過軟件對其合法性驗(yàn)證通過后,軟件就會(huì)取消本身的各種限制,而成為正式版本。

      2.3 注冊文件保護(hù)技術(shù)

      注冊文件保護(hù)技術(shù)是利用文件來注冊軟件的保護(hù)方式。注冊文件一般文件比較小,可以是純文本文件,也可以是包含不可顯示字符的二進(jìn)制文件,其內(nèi)容是加密過或未加密的數(shù)據(jù),其中可能有用戶名、注冊碼等信息。文件格式則由軟件作者自己定義,試用版軟件沒有注冊文件,當(dāng)用戶向作者負(fù)費(fèi)注冊后,會(huì)收到作者寄來的注冊文件,其中可能包含用戶的個(gè)人信息。用戶只要將這些文件放入指定的目錄,就可以讓軟件成為正式版。

      2.4 光盤保護(hù)技術(shù)

      一些采用光盤形式發(fā)行的應(yīng)用軟件和游戲在使用時(shí)需要檢查光盤是否插在光驅(qū)中,如果沒有,則拒絕運(yùn)行。這是為了防止用戶將軟件或游戲的一份正版拷貝安裝到多臺(tái)機(jī)器上并同時(shí)使用。程序在啟動(dòng)時(shí)判斷光驅(qū)中的光盤上是否存在特定的文件,如果不存在則認(rèn)為用戶沒有正版光盤,拒絕運(yùn)行。在程序運(yùn)行的過程當(dāng)中一般不再檢查光盤的存在與否。

      2.5 反跟蹤保護(hù)技術(shù)

      好的軟件保護(hù)都要和反跟蹤技術(shù)結(jié)合在一起。如果沒有反跟蹤技術(shù),軟件等于直接裸露在解密者面前。這里說的反跟蹤,指的是反動(dòng)態(tài)跟蹤。即防止解密者用SoftICE之類的調(diào)試器動(dòng)態(tài)跟蹤,從而進(jìn)行分析軟件。這種技術(shù)一般是檢測這些特定的調(diào)試器是否駐留內(nèi)存,如果駐留內(nèi)存,就認(rèn)為被跟蹤,拒絕執(zhí)行,或進(jìn)行一些懲罰性措施。

      2.6 反-反匯編保護(hù)技術(shù)

      可針對專門的反匯編軟件設(shè)計(jì)的陷阱,讓反匯編器陷入死循環(huán),但這種方法沒有通用性。具體方法是:在程序中加入一些無用的字節(jié)來干擾反匯編軟件的判斷,使得它錯(cuò)誤地確定指令的起始位置,也就達(dá)到了干擾反匯編器工作的目的。

      2.7 加殼保護(hù)技術(shù)

      殼是計(jì)算機(jī)軟件中一段專門負(fù)責(zé)保護(hù)軟件不被非法修改或反編譯的程序,它先于軟件原程序運(yùn)行并拿到控制權(quán),進(jìn)行一定處理后再將控制權(quán)轉(zhuǎn)交給原程序,實(shí)現(xiàn)保護(hù)軟件的任務(wù)。加殼后的程序能夠有效防范靜態(tài)分析和增加動(dòng)態(tài)分析的難度。

      2.8 加密狗保護(hù)技術(shù)

      加密狗是一個(gè)安裝在并口、串口、U口等接口上的硬件設(shè)備,并帶有一套驅(qū)動(dòng)軟件和工具包。當(dāng)被加密狗保護(hù)的軟件運(yùn)行時(shí),程序會(huì)搜索是否有安插在計(jì)算機(jī)上的硬件,并對其發(fā)出一系列操作指令,正確的響應(yīng)才能使軟件繼續(xù)運(yùn)行,從而達(dá)到保護(hù)軟件,防止盜版的目的。

      3 軟件保護(hù)技術(shù)的應(yīng)用

      3.1 當(dāng)前保護(hù)技術(shù)的局限

      軟加密技術(shù)是相對成熟的技術(shù),它的最大優(yōu)勢在于加密成本低。無論哪種軟加密方法都是對正常的軟件者進(jìn)行人為地制造障礙,雖然不會(huì)影響到軟件的性能,但有可能給軟件引入許多未知的錯(cuò)誤。與純軟件的加密方法相比,硬件加密有著不可比擬的優(yōu)勢,因?yàn)閷ΡI版者而言,硬加密會(huì)比軟件加密要難以對付,但是硬件加密成本會(huì)比較高。

      3.2 軟件保護(hù)技術(shù)的應(yīng)用

      前面介紹了當(dāng)前常見的一些軟件保護(hù)技術(shù),其中有些技術(shù)非常好好,如序列號技術(shù),幾乎所有的軟件都使用了這種技術(shù)。但是,無論那種技術(shù)都是軟件和硬件進(jìn)行分離的處理的,不能徹底的保護(hù)好軟件。

      針對前面所述的一些問題,通過各方面比較、權(quán)衡、及算法研究,完整的保護(hù)流程應(yīng)該是:首先軟件程序必須有限制,至少要求要注冊才能使用完整功能,做到程序運(yùn)行必須和用戶機(jī)器硬件掛鉤的注冊碼來解開關(guān)鍵的功能,然后為了防備被解密者用各類工具得到程序關(guān)鍵點(diǎn)和關(guān)鍵信息,必須采用反跟蹤,反調(diào)試和反匯編靜態(tài)分析。當(dāng)然,最好還要給程序穿上一件外套,將程序包裹起來,即采用專門的加殼軟件或者加密鎖產(chǎn)品等將自己的程序處理后提高防范能力,大大提高破解的門檻。

      還有,要考慮如何有效保證自己的程序只提供給正式用戶使用,而非正式用戶在正常途徑下即使有了正式軟件業(yè)也不能正常使用。這個(gè)問題現(xiàn)在通常采用"一機(jī)一碼"的注冊碼許可方式來解決。大致原理就是將程序的關(guān)鍵功能用注冊碼方式保護(hù)起來,正式用戶在輸入對應(yīng)自己的注冊碼的硬件信息的注冊碼后才能正常使用所有功能,非正式用戶沒有對應(yīng)自己的硬件信息的注冊碼而無法使用注冊碼保護(hù)起來的關(guān)鍵功能。要實(shí)現(xiàn)這個(gè)功能,關(guān)鍵是獲取一個(gè)準(zhǔn)確的硬件信息,而這個(gè)硬件信息最好與操作系統(tǒng)無關(guān),這樣就算用戶的系統(tǒng)出問題而重新安裝后也不變化,既能方便用戶的使用,也能方便作者可管理注冊碼的發(fā)放。

      為了提高反解密的對抗能力,通常還可以在程序代碼中加入反跟蹤、反調(diào)試和反匯編靜態(tài)分析的程序,也可以采取動(dòng)態(tài)生成調(diào)用程序的入口地址等技術(shù)。最后再利用軟件殼來對程序進(jìn)行處理,這樣,解密者要想破解程序,先面臨的是殼程序,只有解決到殼程序以后才能對程序進(jìn)行破解。這樣就可以很輕易的將程序防護(hù)性能強(qiáng)度提升一個(gè)層次。

      6 結(jié)論

      通過對當(dāng)前常見的一些軟件保護(hù)技術(shù),如序列號保護(hù)技術(shù)、反跟蹤保護(hù)技術(shù)、反-反匯編保護(hù)技術(shù)、加殼保護(hù)技術(shù)、加密狗保護(hù)技術(shù)等進(jìn)行分析,得出各種技術(shù)的實(shí)現(xiàn)原理以及優(yōu)缺點(diǎn),提出了一套技術(shù)上較為完整的保護(hù)流程。但是,軟件保護(hù)只靠技術(shù)進(jìn)行保護(hù)還是不夠的,還需要相關(guān)的法律法規(guī)進(jìn)行管理,如版權(quán)法、專利法、合同法、商標(biāo)法等各種法律保護(hù),只有從法律、技術(shù)兩方面結(jié)合起來才能更加有效的保護(hù)好軟件的合法權(quán)利。

      參考文獻(xiàn)

      [1] 段鋼.加密與解密[M].電子工業(yè)出版社:2003.

      [2] 看雪學(xué)院.軟件加密技術(shù)內(nèi)幕[M].電子工業(yè)出版社:2004.

      [3] 武新華. 加密解密全方位學(xué)習(xí)[M].中國鐵道出版社:2006.

      [4] 譚貌、陳義、涂杰.軟件版權(quán)保護(hù)技術(shù)的研究與分析[J].計(jì)算機(jī)應(yīng)用與軟件:2007.

      [5] 郭勇、孔寶根. 軟件保護(hù)及破解策略[J].航空維修與工程:2004.

      镇雄县| 甘德县| 内江市| 塔河县| 莆田市| 隆昌县| 阜新| 藁城市| 江城| 大同市| 穆棱市| 郎溪县| 望江县| 肥城市| 拜泉县| 桦川县| 盘锦市| 平湖市| 鞍山市| 容城县| 台东县| 昌宁县| 孟津县| 拜泉县| 贵定县| 易门县| 静宁县| 昭平县| 吉安市| 高碑店市| 澄城县| 邻水| 莱阳市| 宽甸| 嘉善县| 库车县| 宁陵县| 中西区| 海门市| 汉源县| 盐山县|