從軟件加密方法看軟件加密行業(yè)的現(xiàn)狀和發(fā)展趨勢(一)

為實(shí)現(xiàn)銷售利潤的最大化,軟件開發(fā)商需要通過軟件加密來實(shí)現(xiàn)軟件的按購買內(nèi)容授權(quán),另外軟件開發(fā)商還使用某種加密技術(shù)來保護(hù)其軟件,以防止非法使用。

軟件加密技術(shù)根據(jù)是否使用專用的硬件設(shè)備分為基于硬件的加密方式和基于軟件的加密方式。基于硬件的加密方式是指加密需要與一個專用的硬件設(shè)備綁定,目前主要的硬件加密方式是加密鎖,俗稱加密狗?;谲浖募用芊绞绞侵覆恍枰獙S糜布O(shè)備的加密方式,一般采用與終端設(shè)備軟硬件信息綁定的數(shù)字許可證,也稱電子授權(quán)形式。

單純認(rèn)為基于硬件的加密方式比基于軟件的加密方式安全是不正確的,因為軟件的安全性涉及的內(nèi)容比較多,包括加密產(chǎn)品的安全性、加密策略的設(shè)計、應(yīng)用軟件本身、操作系統(tǒng)、驅(qū)動、硬件、數(shù)據(jù)通訊等等,是一個綜合的技術(shù)范疇,不能夠簡單地由某個方面來斷定其是否安全。

在國外,電子授權(quán)和加密鎖的市場占有率是旗鼓相當(dāng)。因為使用習(xí)慣和歷史原因,加密鎖目前還占有一定的市場份額。但是,加密鎖是網(wǎng)絡(luò)不發(fā)達(dá)時代的產(chǎn)物,是一種純客戶端的技術(shù),缺乏管理和統(tǒng)計功能,硬件的存在也帶來了生產(chǎn)、物流、驅(qū)動安裝等諸多不便,不僅成本高,而且無法實(shí)現(xiàn)軟件的網(wǎng)絡(luò)化發(fā)行和銷售,正在逐漸走向衰落。

而目前電子授權(quán)的發(fā)展可以說是方興未艾。電子授權(quán)保護(hù)方式越來越多融入互聯(lián)網(wǎng)技術(shù)、云計算技術(shù)和SaaS理念,不僅更加方便使用和管理,而且能夠?qū)崿F(xiàn)軟件電子化發(fā)行,又符合當(dāng)今綠色低碳的發(fā)展理念,大有取代加密鎖獨(dú)占軟件加密市場的趨勢。世界上比較著名的公司,Microsoft、IBM、Autodesk、SIEMENS、Adobe等,使用的都是電子授權(quán)軟件保護(hù)方式。

在國內(nèi),軟件開發(fā)商使用加密鎖的比率較高,除了與國外相同的使用習(xí)慣和歷史延續(xù)的原因外,還有以下兩個原因:

1.國內(nèi)廠商普遍認(rèn)為,加密鎖比電子授權(quán)安全。

2.國內(nèi)沒有可用的電子授權(quán)產(chǎn)品,國外電子授權(quán)產(chǎn)品的價格又太高。

實(shí)際上,隨著網(wǎng)絡(luò)環(huán)境的日益改善,聯(lián)網(wǎng)激活對大多數(shù)國內(nèi)用戶來說已經(jīng)不是問題。而且前面也提到了,認(rèn)為加密鎖比電子授權(quán)安全的觀點(diǎn)是偏面的、不正確的。從現(xiàn)實(shí)情況看,加密鎖更容易通過硬件復(fù)制來破解,而且已經(jīng)形成了完成的盜版產(chǎn)業(yè)鏈。反而是電子授權(quán)方式因為沒有硬件無法復(fù)制,又需要網(wǎng)絡(luò)激活和驗證,實(shí)際上具有非常好的保護(hù)效果。另外,國內(nèi)也已經(jīng)出現(xiàn)了一些提供電子授權(quán)產(chǎn)品的公司,他們中的2-3家公司一定會隨著中國軟件行業(yè)的發(fā)展而成長和壯大起來。

所以,軟件加密行業(yè)的發(fā)展趨勢是無硬件化、網(wǎng)絡(luò)化和信息化。下面,我們從軟件加密方法說起,具體闡述一下軟件加密行業(yè)的現(xiàn)狀和發(fā)展趨勢。

一、軟件加密方法

前面提到過,軟件加密技術(shù)分為基于軟件的加密方式和基于硬件的加密方式。

1.基于軟件的加密方式

基于軟件的加密方式主要是電子授權(quán)技術(shù),具體還分為注冊碼和許可證文件兩種:

注冊碼也稱為序列號或授權(quán)碼,通過對軟件用戶計算機(jī)軟硬件信息的某種變換得到,可用的軟硬件信息包括:CPU序列號、BIOS序列號、網(wǎng)卡號、硬盤序列號、計算機(jī)名稱等。使用的變換算法有自定義算法或標(biāo)準(zhǔn)的加密算法等。用戶在軟件安裝過程或第一次使用前,需要輸入注冊碼進(jìn)行驗證。驗證通過后,軟件就可以正常使用了。注冊碼保護(hù)方式的優(yōu)點(diǎn)是使用簡單,缺點(diǎn)是安全性不高、無法實(shí)現(xiàn)復(fù)雜的授權(quán)需求。

許可證文件和注冊碼綁定的計算機(jī)軟硬件信息相同,只是注冊碼由于長度限制只能使用一兩個軟硬件信息,而許可證文件可以使用多個軟硬件信息。而且,許可證文件可以包含更多的信息,因此可以實(shí)現(xiàn)復(fù)雜的授權(quán)需求,甚至可以存儲一些用戶信息。典型的許可證文件實(shí)現(xiàn)方法是使用非對稱算法的私鑰對許可證文件進(jìn)行簽名,而公鑰嵌在軟件代碼中。因為加解密過程不對稱,私鑰又存在授權(quán)服務(wù)器上,所以很難通過分析授權(quán)文件進(jìn)行破解。

電子授權(quán)保護(hù)方式的優(yōu)點(diǎn)是不需要額外的硬件設(shè)備,因此也不需要安裝驅(qū)動和客戶端組件,可以實(shí)現(xiàn)軟件的電子化發(fā)行。電子授權(quán)保護(hù)方式的缺點(diǎn)是對不能聯(lián)網(wǎng)的用戶,需要手工提取計算機(jī)信息,獲得注冊碼或許可證后再手工導(dǎo)入,使用上不是很方便。另外,國內(nèi)提供電子授權(quán)產(chǎn)品的開發(fā)商寥寥無幾,這也限制了電子授權(quán)保護(hù)技術(shù)的普及和推廣。

2.基于硬件的加密方式

基于硬件的加密方式主要是加密鎖,一些重要信息,如加密密鑰、敏感數(shù)據(jù)、授權(quán)文件、自定義算法等都可以存儲在加密鎖中。

加密鎖從接口形式分為并口和USB口兩種。并口是早期的使用的形式,因為插拔不方便和與打印機(jī)沖突,現(xiàn)在已較少使用。目前大多數(shù)開發(fā)商使用的都是USB接口的加密鎖。

加密鎖從CPU類型來說分兩種,一種使用單片機(jī)作CPU,另一種使用智能卡芯片作CPU.單片機(jī)硬件本身容易被破解或復(fù)制,因此中高端的加密鎖越來越多地使用智能卡芯片作CPU,以防止硬件被破解。但智能卡加密鎖的破解也越來越多,一是因為芯片分析技術(shù)和儀器越來越先進(jìn);二是智能卡程序?qū)懞煤笠唤o芯片廠去制造,在這個環(huán)節(jié)程序有可能被泄漏出去;三是同一品牌的加密鎖,CPU程序是相同的,不同的只是開發(fā)商數(shù)據(jù)和密鑰等,如果這些文件流傳出去,是很容易復(fù)制的。

加密鎖雖然具有一定的安全強(qiáng)度,但也有不少缺點(diǎn):

1)適用于傳統(tǒng)的一次性永久授權(quán),無法方便實(shí)現(xiàn)試用版本和按需購買

2)硬件的存在帶來了生產(chǎn)、物流、安裝和維護(hù)成本

3)無法實(shí)現(xiàn)基于互聯(lián)網(wǎng)的電子化發(fā)行、升級、跟蹤和管理

4)一旦被破解,就可以大批量復(fù)制,難以補(bǔ)救