王云曉 張學(xué)誠 孫海龍
【 摘 要 】 伴隨軟件行業(yè)的發(fā)展,計算機(jī)軟件越來越容易受到復(fù)制和盜版的威脅。論文分析了成功軟件版權(quán)保護(hù)方法的實現(xiàn)技術(shù),并提出從法律和管理上同時發(fā)力,全方位地實現(xiàn)軟件版權(quán)保護(hù),切實維護(hù)好軟件開發(fā)者的合法權(quán)益。
【 關(guān)鍵詞 】 軟件;版權(quán)保護(hù);軟件加密;軟件水??;機(jī)器碼
【 Abstract 】 With the development of software industry, the computer software is more and more vulnerable to the threat of piracy and copy. This paper analyzes the realization technology of successful software copyright protection methods, and put forward to strengthen together in law and management, to achieve a full range of software copyright protection and safeguard the legitimate rights and interests of software developers.
【 Keywords 】 software; copyright protection; software encryption; software watermarking; machine code
1 引言
隨著信息技術(shù)的發(fā)展,計算機(jī)軟件產(chǎn)業(yè)也迅速崛起,成為社會經(jīng)濟(jì)不可缺少的一部分。然而計算機(jī)軟件特有的復(fù)制成本低、復(fù)制效率高的特點,使得軟件產(chǎn)品往往成為版權(quán)侵犯的對象。軟件盜版、軟件非法拷貝等問題日益嚴(yán)峻,因此軟件產(chǎn)品知產(chǎn)權(quán)的保護(hù)變得尤為重要。為了保護(hù)軟件所有人的權(quán)利,必須從技術(shù)、法律、管理等各方面考慮,進(jìn)行全面保護(hù)。
2 技術(shù)保護(hù)
通過技術(shù)手段進(jìn)行軟件保護(hù),防止對軟件產(chǎn)品的非法復(fù)制和使用,以及對軟件產(chǎn)品進(jìn)行的非法修改。
2.1 硬件加密
硬件加密指使用硬件和軟件結(jié)合的方式來實現(xiàn)軟件的加密?;谟布姆椒ㄓ屑用芄?、加密鎖保護(hù)、光盤保護(hù)等。常用的是插在計算機(jī)的接口上的加密狗,加密后的軟件在執(zhí)行時需要訪問硬件加密狗。但是,硬件加密成本較高,主要應(yīng)用于行業(yè)用戶中,不適用于普通用戶,也不利于網(wǎng)上發(fā)布軟件。
2.2 網(wǎng)絡(luò)加密
網(wǎng)絡(luò)加密是利用網(wǎng)絡(luò)技術(shù)對軟件進(jìn)行加密保護(hù)的技術(shù)。常見的方法有網(wǎng)絡(luò)驗證等。網(wǎng)絡(luò)加密需要將軟件運(yùn)行的重要數(shù)據(jù)放在服務(wù)器上,只有通過聯(lián)網(wǎng)驗證用戶注冊信息后才能取得這些數(shù)據(jù)運(yùn)行軟件,它的加密強(qiáng)度較高,但是需要建立專門的服務(wù)器網(wǎng)站,成本高。采用這種加密方法,用戶必須在線完成網(wǎng)絡(luò)驗證,在網(wǎng)絡(luò)不穩(wěn)定的情況下被加密的軟件就無法正常使用了。
2.3 軟件加密
軟件加密不依靠硬件只使用算法來實現(xiàn)的對軟件的保護(hù)。目前常用的有注冊驗證法、計算機(jī)硬件校驗法、軟件水印保護(hù)等。軟件加密的方法相對硬件加密而言成本比較低,但安全性相對也要低一些。
2.3.1基于注冊驗證的版權(quán)保護(hù)
用注冊信息實現(xiàn)版權(quán)保護(hù),是目前使用比較廣泛的版權(quán)保護(hù)方式。軟件供應(yīng)商對用戶信息進(jìn)行加密,密文作為注冊信息返回給用戶。軟件運(yùn)行時,通過驗證注冊信息確認(rèn)軟件是否授權(quán),實現(xiàn)保護(hù)。
注冊信息一般基于軟件使用者的用戶信息生成,可以是一串序列號或注冊碼,也可以是一個授權(quán)文件或其它存在形式。在驗證比較嚴(yán)格的情況下,用戶信息應(yīng)該包含標(biāo)志用戶唯一性且不可復(fù)制的信息,例如計算機(jī)的CPU、硬盤等關(guān)鍵部件的硬件序列號等。
對合法授權(quán)軟件,軟件供應(yīng)商會提供一個注冊文件,該文件包含加密過的用戶信息、注冊碼等注冊信息。用戶只要將該文件放入指定的目錄下,軟件每次啟動時,從該文件中讀取注冊信息并按設(shè)計好的算法進(jìn)行處理,然后與用戶輸入的信息或注冊碼進(jìn)行比較,根據(jù)比較結(jié)果判斷是否為授權(quán)軟件,如果是則以正版軟件模式來運(yùn)行。
2.3.2用軟件水印實現(xiàn)版權(quán)保護(hù)
軟件水印是近年來出現(xiàn)的一種新型的軟件版權(quán)保護(hù)方法,它在軟件產(chǎn)品中嵌入版權(quán)保護(hù)信息和身份認(rèn)證信息,并通過檢測出的版權(quán)保護(hù)信息和身份認(rèn)證信息來確認(rèn)對產(chǎn)品的版權(quán)擁有,防止軟件盜版和非法拷貝。
軟件水印具有信息隱藏的功能,水印信息可以包含作者、發(fā)行商、所有者、使用者等信息,并攜帶有版權(quán)保護(hù)信息和身份認(rèn)證信息,在設(shè)計水印時對這些信息加密,可以防止水印信息遭到破壞或者修改。
軟件水印技術(shù)包括水印信息的生成、水印嵌入和水印提取三個過程 。根據(jù)軟件水印的嵌入和提取技術(shù)來分,可分為靜態(tài)水印和動態(tài)水印。靜態(tài)水印把水印信息存儲在可執(zhí)行程序代碼中,比如放在安裝模塊部分、指令代碼部分,或者是調(diào)試信息的符號部分。軟件運(yùn)行時準(zhǔn)確提取軟件中的加密水印信息,解密后與原始信息對比,驗證軟件的版權(quán)信息。動態(tài)水印則是把水印信息保存在程序的執(zhí)行狀態(tài)中,而不是程序源代碼本身。軟件開發(fā)過程中,選擇一種動態(tài)水印算法,和正常的軟件模塊一起編寫、編譯。軟件執(zhí)行過程中要求輸入特定的序列,根據(jù)輸入,程序會運(yùn)行到某種狀態(tài),這些狀態(tài)就代表水印,通過這些水印驗證軟件的版權(quán)。
2.3.3基于機(jī)器碼的軟件版權(quán)保護(hù)
計算機(jī)的硬件通常具有惟一的標(biāo)識,比如MAC地址、硬盤序列號、CPU序列號和主板等,這些信息被統(tǒng)稱為機(jī)器碼,軟件用戶一般無法輕易改變它們。
一種方法是用機(jī)器碼生成注冊碼。軟件開發(fā)人員利用系統(tǒng)提供的接口編程獲取機(jī)器碼,對這些機(jī)器碼進(jìn)行組合變換后作為用戶注冊信息,再對這些注冊信息經(jīng)過加密處理,就能產(chǎn)生與該主機(jī)匹配的唯一注冊碼,把這個注冊碼放在軟件的文件系統(tǒng)中。軟件每次運(yùn)行時讀取計算機(jī)的機(jī)器碼生成注冊碼,并與注冊文件中的注冊碼進(jìn)行比對,若有誤,軟件將被限制使用。
另一種方法是直接用機(jī)器碼加上軟件信息作為驗證信息。軟件安裝時獲取用戶計算機(jī)系統(tǒng)已經(jīng)存在的某些特征信息,比如 CPUID、BIOS信息、硬盤序列號、硬盤分區(qū)信息等,在這些信息的基礎(chǔ)上加入相應(yīng)的附加信息,如用戶信息、軟件信息和使用期限等,把這些信息作為一個整體生成MD5碼,用以區(qū)別不同的計算機(jī)。為了安全,可以把MD5碼和附加信息用DES算法進(jìn)行二次加密,密文保存在用戶的計算機(jī)上。軟件運(yùn)行時讀取并解密密文,與用戶計算機(jī)的特征信息(機(jī)器碼)及附加信息進(jìn)行比較, 確定軟件的版權(quán)。
3 法律保護(hù)
隨著社會的發(fā)展,對計算機(jī)程序軟件的保護(hù)問題已成為我國乃至世界保護(hù)知識產(chǎn)權(quán)的重要內(nèi)容之一。我國1990年頒布的《著作權(quán)法》規(guī)定,計算機(jī)軟件是受法律保護(hù)的作品形式之一。2002年,我國頒布了《計算機(jī)軟件保護(hù)條例》,對軟件實施著作權(quán)法律保護(hù)作了具體規(guī)定。
軟件著作人或軟件公司,可以通過申請軟件著作權(quán)來保護(hù)開發(fā)的軟件產(chǎn)品。軟件版權(quán)保護(hù)的保護(hù)范圍非常廣泛,對內(nèi)容沒有特殊要求,只要具備一定的獨(dú)創(chuàng)性,就可以申請版權(quán)保護(hù)。在發(fā)生軟件著作權(quán)爭議時,《軟件著作權(quán)登記證書》是主張軟件權(quán)利的有力武器,請求司法保護(hù)的前提。在進(jìn)行軟件版權(quán)貿(mào)易時,《軟件著作權(quán)登記證書》作為權(quán)利證明,有利于交易的順利完成。
如果軟件產(chǎn)品思想新穎、技術(shù)上有創(chuàng)造性,并且具有實際的經(jīng)濟(jì)利益,可以向?qū)@痔岢鰧@暾?,實現(xiàn)計算機(jī)軟件的專利保護(hù)。專利保護(hù)的內(nèi)容比較廣泛,能實現(xiàn)對創(chuàng)意、思想及計算機(jī)軟件特有的源代碼進(jìn)行專利法保護(hù),有利于保障軟件開發(fā)者的合法權(quán)益。
軟件開發(fā)者根據(jù)軟件的特點和保護(hù)需求,根據(jù)版權(quán)保護(hù)或?qū)@Wo(hù)的特點,選擇合理的保護(hù)模式,及時進(jìn)行版權(quán)登記或?qū)@陥蟆?/p>
4 管理保護(hù)
計算機(jī)軟件版權(quán)保護(hù)還要注意企業(yè)內(nèi)部管理。
首先,計算機(jī)軟件開發(fā)企業(yè)內(nèi)部管理不規(guī)范、不嚴(yán)格,軟件開發(fā)的核心人員離職時,帶走核心資料并賣與他人,造成軟件核心資料外泄。
其次,軟件版本管理不完善。有的軟件開發(fā)公司在進(jìn)行軟件升級時,不注意保存原程序版本,從而造成原程序版本外流被侵權(quán)。
因此,企業(yè)必須加強(qiáng)內(nèi)部管理,保護(hù)好已有的軟件產(chǎn)品,規(guī)范軟件開發(fā)的文檔管理,與核心技術(shù)人員簽訂任務(wù)委派書等,進(jìn)一步細(xì)化軟件開發(fā)中的驗核程序,同時規(guī)范勞動合同。
5 結(jié)束語
軟件的算法是設(shè)計人員的思想火花,并且隨著軟件功能和規(guī)模的增大,軟件的開發(fā)成本也越來越高。軟件企業(yè)為了維護(hù)自己的權(quán)利,也是從各個方面加強(qiáng)保護(hù)。在技術(shù)上進(jìn)行加密等防止復(fù)制,申請版權(quán)或軟件專利進(jìn)行維權(quán),在企業(yè)內(nèi)部規(guī)范管理防止核心資料外泄等。作為軟件開發(fā)或應(yīng)用人員,也要尊重別人的勞動成果,不要剽竊他人的作品,維護(hù)社會安定。
參考文獻(xiàn)
[1] 段剛.加密與解密(第三版) [M] .北京:電子工業(yè)出版社,2008:102-103,121-126,392-395.
[2] 張曉娟.軟件水印在軟件版權(quán)保護(hù)中的應(yīng)用[J].現(xiàn)代計算機(jī),2012(10):24-26.
[3] 王賢德,王偉超.軟件版權(quán)保護(hù)技術(shù)研究[J].軟件導(dǎo)刊,2008(7):30-31.
[4] 劉宏申,孫長應(yīng).軟件水印實現(xiàn)軟件版權(quán)保護(hù)[J].電腦知識與技術(shù),2012(3): 1701-1703.
[5] 張暢,胡谷雨,倪桂強(qiáng).基于機(jī)器碼加密的軟件版權(quán)保護(hù)方案[J].計算機(jī)安全,2013(3):46-48.
[6] 張學(xué)誠,王云曉,孫海龍.基于計算機(jī)指紋的軟件版權(quán)保護(hù)[J].計算機(jī)與現(xiàn)代化,2013(9):172-174.
基金項目:
山東省高等學(xué)??萍加媱濏椖浚↗13LN29)。
作者簡介:
王云曉(1972-),女,漢族,山東萊蕪人,畢業(yè)于曲阜師范大學(xué)計算機(jī)科學(xué)學(xué)院,碩士,山東水利職業(yè)學(xué)院信息工程系,講師,從事計算機(jī)方面課程教學(xué)和軟件開發(fā)工作;主要研究方向和關(guān)注領(lǐng)域:軟件開發(fā)技術(shù)、數(shù)據(jù)庫技術(shù)。
張學(xué)誠(1971-),男,漢族,山東微山人,畢業(yè)于曲阜師范大學(xué),碩士,副教授;主要研究方向和關(guān)注領(lǐng)域:信息安全技術(shù)。
孫海龍(1972-),男,漢族,山東煙臺人,畢業(yè)于曲阜師范大學(xué),博士,副教授;主要研究方向和關(guān)注領(lǐng)域:自動控制與信息安全。