軟件保護技術(shù)從廣義的角度來說,可以包括計算機軟件和系統(tǒng)的安全。目前大多數(shù)關(guān)于計算機的安全研究,主要是研究如何防止合法用戶和其數(shù)據(jù)被惡意客戶端程序所攻擊,以及如何設(shè)計和管理計算機系統(tǒng)來實現(xiàn)一個嚴(yán)密的安全系統(tǒng)。典型的方法是用戶限制客戶端程序的行為。例如在JAVA安全模型中,用戶可以使用字節(jié)碼校驗來保證不被信任的客戶端程序的類型安全,不被信任的代碼(例如APPLET)將被禁止執(zhí)行一些特定操作,例如可以限制在本地文件系統(tǒng)寫文件操作。類似的技術(shù)還有軟件故障隔離(Software Fault Isolation),它可以監(jiān)視客戶端程序,確保其不能夠在它賦予范圍之外進行寫操作,在.NET中也采用了此種技術(shù)。
近期,關(guān)于移動代理(Mobile Agent)系統(tǒng)的安全研究吸引了更多人的注意,移動代理屬于分布式計算的一個實施方法,即把原本在一臺計算機上運行的一個大的程序,分解成多個子程序,然后在不同的計算機上進行運行,這樣就帶來了一個問題,即合法的客戶端程序如果安裝在惡意主機上,如何防止惡意主機的侵犯。客戶端代碼有可能包含一些商業(yè)機密或者版權(quán)信息,如果客戶端程序的完整性被侵犯,也將會導(dǎo)致客戶端程序擁有者的財產(chǎn)損失。 微軟還推出了安全計算平臺(Trusted Computing Platform Alliance),它的目標(biāo)是定義硬件支持的、以操作系統(tǒng)為基礎(chǔ)的,受信任的子系統(tǒng),它們將變?yōu)閭€人計算平臺的有機組成部分,依賴于公鑰體系和架構(gòu),系統(tǒng)需要支持安全存儲,系統(tǒng)內(nèi)部信任路徑、安全協(xié)處理器。 軟件保護技術(shù)從狹義的角度來說,即如何防止合法軟件被盜版,主要包括基于硬件的保護方式和基于軟件的保護方式。關(guān)于軟件保護技術(shù)的研究,實際上是一項綜合的技術(shù),目前一些軟件保護產(chǎn)品供應(yīng)商宣稱自己的產(chǎn)品是不可破解的,往往是一種營銷的策略,并沒有提供確切的數(shù)據(jù)和評測報告。還有一些供應(yīng)商利用智能卡芯片本身具有很高的安全性,來誤導(dǎo)軟件開發(fā)商以為采用智能卡芯片的軟件保護產(chǎn)品也一定具有同樣的安全性,其實這些都是一些錯誤,片面的觀點。軟件保護產(chǎn)品和其他安全產(chǎn)品相比具有一定的特殊性,它所涉及的內(nèi)容非常的廣泛,從上層的應(yīng)用軟件、操作系統(tǒng)、驅(qū)動、硬件、網(wǎng)絡(luò)等等,是一個綜合的技術(shù)范疇,不能夠單一的由某個方面來以偏概全的斷定其安全與否。 1 基于硬件的保護方式 基于硬件的軟件保護策略可以包含多種功能,主要有認(rèn)證過程、數(shù)據(jù)加密、訪問控制、唯一的系列號、密鑰產(chǎn)生、可靠的數(shù)據(jù)傳輸和硬件識別。這些手段主要的目的是防止硬件被復(fù)制,有一些產(chǎn)品也支持許可證策略?;谟布谋Wo可以具有很好的安全性。主要包括以下幾種典型方式: 1.1 加密狗、加密鎖(Special-purpose Dongles) 加密狗是一種智能性加密產(chǎn)品,又被稱為加密鎖。它是一個可以安裝在并口、串口或USB接口上的硬件電路。在安全性上和基于軟件的保護方式相比,具有更高的安全性,但是對于使用被保護軟件的最終用戶而言,就不得不被迫接收在自己的機器上安裝相應(yīng)的保護硬件和驅(qū)動程序,易用性上存在一定問題。同時和基于軟件的保護方式相比,價格也比較高。 1.2 光盤、軟盤保護 被保護軟件的部分密鑰可以放在可移動的軟盤或光盤當(dāng)中,只有當(dāng)軟盤或光盤存在的時候,被保護軟件才可以運行,游戲軟件經(jīng)常采用此種方式。 其基本原理是,例如Macrovision SafeDisk工具,它是在光盤的光軌上隱藏一個密鑰,而一般的光盤刻錄機無法復(fù)制此密鑰,通過此方法達到不可以復(fù)制光盤的目的,軟盤使用的技術(shù)類似。 存在問題:如果一旦原盤被劃壞或者毀壞,用戶就無法繼續(xù)使用軟件,同時這種保護方式可以被黑客很容易的分析或跟蹤找到判斷代碼處,通過修改可執(zhí)行文件,跳過此段代碼,達到破解的目的。而且有的加密光盤可用工作在原始模式(RAW MODE)的光盤拷貝程序來原樣拷貝,比如用Padus公司的DiscJuggler和Elaborate Bytes公司的CloneCD等拷貝工具,所以此種保護技術(shù)的安全性并不是很高,但是由于其具有價格優(yōu)勢,目前還是有一些軟件開發(fā)商使用此種技術(shù)來保護自己的軟件。
|
|