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