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