專利名稱:防止產(chǎn)品的非授權(quán)修改的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及防止為改變性能而對設(shè)備進(jìn)行的非授權(quán)修改。更具體地說,本發(fā)明涉及通過利用硬件、軟件和固件實(shí)施產(chǎn)品特征來保護(hù)各種電子產(chǎn)品系列中的產(chǎn)品差別化,由此防止組件速度或性能方面的改變。
背景技術(shù):
隨著計(jì)算機(jī)產(chǎn)業(yè)深入地進(jìn)入全社會(huì),更快性能和更快結(jié)果的需求隨之而來。在1992年晚期,許多個(gè)人計(jì)算機(jī)制造商都在銷售處理器速度達(dá)33MHz的臺式電腦。現(xiàn)今,正在銷售的個(gè)人計(jì)算機(jī)的處理器速度已超過3GHz。然而,電子產(chǎn)品的速度和性能提升是有代價(jià)的。較快的機(jī)器通常要比較慢的機(jī)器更昂貴。
最初,電子設(shè)備的制造商針對每個(gè)項(xiàng)目開發(fā)獨(dú)立產(chǎn)品。亦即,盡管從一臺計(jì)算機(jī)到另一臺計(jì)算機(jī)的系統(tǒng)性能僅僅是更快的總線速度或不同的輸入/輸出(I/O)組件,但是計(jì)算機(jī)電路板通常是用不同方式開發(fā)和制造的,并且對每種產(chǎn)品都是獨(dú)立的。以上描述的產(chǎn)品確保為增強(qiáng)其性能而對產(chǎn)品進(jìn)行的非授權(quán)的修改的可能性是最小的。然而,與允許差別化產(chǎn)品的通用平臺的開發(fā)相比,多種獨(dú)特產(chǎn)品的開發(fā)要花費(fèi)更多成本,并且需要更長的上市時(shí)間。電子設(shè)備的制造商很快開始開發(fā)電子產(chǎn)品系列,其中該系列中的每種產(chǎn)品與該系列中其它產(chǎn)品共享通用特征。該系列中的產(chǎn)品之間的差別通常包括硬件組件或處理器速度、軟件或固件版本;然而,存在電子產(chǎn)品之間的通用平臺。在許多情況中,一個(gè)電子產(chǎn)品系列是適合于相似目標(biāo)的一組產(chǎn)品,并且是在完全相同的電子平臺上制造的,該電子平臺諸如主板或與計(jì)算機(jī)關(guān)聯(lián)的其它電路板。
電子產(chǎn)品系列的一個(gè)例子是臺式電腦系列。任何人都可以在因特網(wǎng)上搜索個(gè)人臺式電腦以便從特定制造商那里購買。就像汽車制造商一樣,許多計(jì)算機(jī)制造商提供帶有一些標(biāo)準(zhǔn)特征的基線型號。然后,個(gè)人可以仔細(xì)挑選需要附加、拆除、或修訂的一些特征。這些特征包括內(nèi)部硬盤容量、前端總線速度以及系統(tǒng)處理器速度。除一些硬件、軟件或固件差別之外,制造商都在銷售其結(jié)構(gòu)彼此相同的計(jì)算機(jī)。所以能夠降低生產(chǎn)成本,因?yàn)榭梢灾圃煊糜谠撓盗兄械乃挟a(chǎn)品的通用平臺,并且只隨后將所需的不同部件加入到每種特定產(chǎn)品中。另外,由于產(chǎn)品的共性,所以可以有效使用開發(fā)資源以便以減低的成本在相同時(shí)限內(nèi)制造兩種或更多產(chǎn)品,從而能夠?yàn)橄M(fèi)者提供更多產(chǎn)品選擇。質(zhì)量控制檢查可以降到最低程度,進(jìn)一步降低了開發(fā)時(shí)間以及設(shè)計(jì)和研究方面的總成本。
然而,當(dāng)在許多不同產(chǎn)品中加入通用平臺時(shí),用戶可能修改低端產(chǎn)品以增加等同于高端產(chǎn)品的產(chǎn)品性能,而無需支付購買費(fèi)用。一種電子產(chǎn)品系列內(nèi)的產(chǎn)品的價(jià)格可能有很大的差別。如此大的成本差異可能引誘消費(fèi)者或現(xiàn)場服務(wù)人員將該系列中的一種基線產(chǎn)品修改為該電子產(chǎn)品系列中的較高端產(chǎn)品。如果沒有適當(dāng)?shù)姆婪洞胧┖捅Wo(hù)措施,基于通用平臺的相似性會(huì)使用戶或現(xiàn)場服務(wù)人員很容易進(jìn)行以上修改。
制造商必須權(quán)衡制造同一電子產(chǎn)品系列中的不同產(chǎn)品的基礎(chǔ)平臺帶來的成本節(jié)約和防止非授權(quán)修改所需的費(fèi)用。因此,提供用來防范共用相同特征的產(chǎn)品系列中的低端產(chǎn)品的非授權(quán)修改的高性價(jià)比的保護(hù)措施,是本領(lǐng)域中的一個(gè)進(jìn)展。同時(shí),需要通過安裝硬件、軟件和/或固件防護(hù)裝置一起來保護(hù)電子產(chǎn)品系列以免于可能的非授權(quán)修改方面的進(jìn)展,以便把非授權(quán)修改的可能性降到最低程度。需要附加特征以便在最小化制造商的全部制造或開發(fā)成本的同時(shí)保護(hù)這些產(chǎn)品。
發(fā)明內(nèi)容
為了克服上面描述的現(xiàn)有技術(shù)中的限制,并且為了克服在閱讀和理解本發(fā)明時(shí)將明白的其它限制,本發(fā)明提供使產(chǎn)品免于非授權(quán)修改的保護(hù)。
本發(fā)明的第一方面使用硬件裝配選項(xiàng)的組合以防止將產(chǎn)品升級為非授權(quán)的增強(qiáng)產(chǎn)品。盡管該電子產(chǎn)品系列中的每種產(chǎn)品均利用通用平臺,但是不同的組件裝配使這些產(chǎn)品不同。在裝配產(chǎn)品期間材料單的差異導(dǎo)致具有足夠特征和能力差異的多種產(chǎn)品,同時(shí)保持相同的用戶“感觀”和相同的制造工序。
本發(fā)明的第二方面允許該產(chǎn)品的操作軟件通過訪問該產(chǎn)品存儲(chǔ)器內(nèi)或試圖與該產(chǎn)品連接的特定輸入/輸出設(shè)備內(nèi)包含的唯一產(chǎn)品分組ID編碼,啟用或禁用一些特征或功能。
本發(fā)明的另一方面使用可編程邏輯設(shè)備內(nèi)包含的固件版本來防止非授權(quán)人員增強(qiáng)產(chǎn)品性能。例如,固件版本可以確定插卡可以運(yùn)行的數(shù)據(jù)速率,處理器的總線速度,控制信號以及存儲(chǔ)容量。由于該產(chǎn)品的操作被限制在固件允許的數(shù)據(jù)速率和處理速度內(nèi),所以個(gè)人不能通過簡單添加附加組件來更新該產(chǎn)品并提高其性能,并且該人也不能繞過該產(chǎn)品分組ID編碼。
也可以使用其它方法和系統(tǒng)來驗(yàn)證某個(gè)產(chǎn)品或與該產(chǎn)品相連的I/O設(shè)備的唯一產(chǎn)品分組ID編碼的真實(shí)性。可以對照軟件存儲(chǔ)表比較產(chǎn)品序號或其它形式的產(chǎn)品特有信息數(shù)據(jù)和產(chǎn)品分組ID編碼,以確定該產(chǎn)品序號是否在該產(chǎn)品分組ID編碼的允許范圍內(nèi)。因此,即使有人已經(jīng)篡改低端產(chǎn)品分組ID編碼字段,以用表示高端產(chǎn)品的數(shù)據(jù)填充,該產(chǎn)品也能檢測該修改并按相應(yīng)方式運(yùn)行。
通過在考慮附圖的同時(shí)參照以下說明,將更全面地理解本發(fā)明及其優(yōu)點(diǎn),其中相同參考標(biāo)號表示相同特征,并且其中圖1是一個(gè)框圖,說明根據(jù)本發(fā)明之說明性的實(shí)施方式的電子產(chǎn)品系列內(nèi)的兩種產(chǎn)品;
圖2說明根據(jù)本發(fā)明之說明性的實(shí)施方式的存儲(chǔ)器中存儲(chǔ)的數(shù)據(jù)字段;圖3說明根據(jù)本發(fā)明之說明性的實(shí)施方式防止產(chǎn)品的非授權(quán)修改的方法;圖4說明根據(jù)本發(fā)明之說明性的實(shí)施方式在產(chǎn)品上連接新設(shè)備時(shí)防止產(chǎn)品的非授權(quán)修改的方法;圖5說明根據(jù)本發(fā)明之說明性的實(shí)施方式防止低端產(chǎn)品的非授權(quán)修改的方法;圖6說明根據(jù)本發(fā)明之說明性的實(shí)施方式防止低端產(chǎn)品的非授權(quán)修改的方法;以及圖7說明根據(jù)本發(fā)明之說明性的實(shí)施方式防止低端產(chǎn)品的非授權(quán)修改的方法。
具體實(shí)施例方式
在各種實(shí)施方式的下述說明中,參考了構(gòu)成該說明一部分的附圖,并且其中舉例說明可以實(shí)施本發(fā)明的各種實(shí)施方式。應(yīng)該理解,可以在不背離本發(fā)明之范圍的情況下利用其它實(shí)施方式并且修改其結(jié)構(gòu)和功能。
本發(fā)明的各個(gè)方面組合了為實(shí)現(xiàn)并保持電子產(chǎn)品系列內(nèi)的產(chǎn)品的差別化的不同形式的非授權(quán)修改檢測的各種優(yōu)點(diǎn)。電子產(chǎn)品系列系指從高端產(chǎn)品到中檔產(chǎn)品再到低端產(chǎn)品的許多產(chǎn)品,這些產(chǎn)品共用相同的特征,例如,統(tǒng)一的物理平臺或印刷電路板。這些產(chǎn)品之間的一些差別包括硬件組件、軟件或固件版本;然而,存在該電子產(chǎn)品之間的一定通用平臺。通過使用本發(fā)明,可以保護(hù)產(chǎn)品差別化免于非授權(quán)修改。電子產(chǎn)品系列中的低端產(chǎn)品是不能輕易修改的,從而不能允許超過授權(quán)允許范圍之外的低端產(chǎn)品的增強(qiáng)性能。
用來保護(hù)電子產(chǎn)品系列內(nèi)的產(chǎn)品的差別化的第一種機(jī)制是使用硬件差別化。例如,如果高端產(chǎn)品使用與低端產(chǎn)品相比不同的I/O選項(xiàng),則制造商可以在高端產(chǎn)品中包含必要的硬件組件。盡管這樣可以制止一些人(進(jìn)行修改),但是通??稍陔娮由痰曛匈I到相同的硬件組件,并簡單焊接到低端產(chǎn)品的電路板上,以允許用于特定I/O選項(xiàng)的相同連接,因此,正如下面進(jìn)一步描述的那樣,在優(yōu)選實(shí)施方式中,與一個(gè)或多個(gè)軟件和固件防護(hù)裝置一起使用硬件防護(hù)裝置。
用來阻止為增強(qiáng)性能而修改產(chǎn)品的第二種機(jī)制是使用差別化的軟件。盡管同一電子產(chǎn)品系列內(nèi)的多種產(chǎn)品可能有通用電路板平臺,但是該系列中的低端產(chǎn)品可能按照與同一系列中的高端產(chǎn)品不同的軟件包運(yùn)行。然而,制造商需要開發(fā)不同的獨(dú)立軟件包以保護(hù)并運(yùn)行該系列中的每種產(chǎn)品。因此,可以在保持使用的產(chǎn)品之間的差別化的同時(shí)在電子產(chǎn)品系列內(nèi)的所有產(chǎn)品中使用的單一軟件包。例如,該軟件可以利用特定的產(chǎn)品分組標(biāo)識(ID)編碼來確定產(chǎn)品類型,并根據(jù)該產(chǎn)品分組ID編碼提供軟件功能性。在啟動(dòng)電子產(chǎn)品時(shí),軟件將訪問內(nèi)嵌在該設(shè)備中的產(chǎn)品分組標(biāo)識編碼。該編碼將確定應(yīng)該為特定產(chǎn)品的操作啟用或禁用的該產(chǎn)品系列的特征。然而,修改產(chǎn)品分組ID編碼可能允許個(gè)人能夠訪問該產(chǎn)品系列內(nèi)的高端產(chǎn)品的所有特征。因此,正如下面進(jìn)一步描述的那樣,在優(yōu)選實(shí)施方式中,與一個(gè)或多個(gè)硬件和固件防護(hù)裝置一起使用軟件防護(hù)裝置。
防止產(chǎn)品的非授權(quán)修改的第三種機(jī)制包括使用不同版本的固件。可以由內(nèi)嵌在產(chǎn)品中的固件版本定義產(chǎn)品操作的一些參數(shù)。例如,可以由特定版本的固件定義數(shù)據(jù)總線寬度和存儲(chǔ)容量。用于低端產(chǎn)品的固件版本可能以一種方式影響用于該電子設(shè)備的操作的一些控制信號的行為,而用于高端產(chǎn)品的不同固件版本可能以不同方式影響用于該電子設(shè)備的操作的相同控制信號的行為??梢园压碳姹静⑷氲皆O(shè)備中,以最小化或最大化特定的可編程邏輯設(shè)備的運(yùn)行速度。即使個(gè)人要修改產(chǎn)品的硬件組件,該固件也會(huì)降低非授權(quán)修改的預(yù)期性能。例如,通過連接I/O選項(xiàng)和預(yù)定的運(yùn)算速度,個(gè)人可能修改低端產(chǎn)品。然而,內(nèi)嵌在該產(chǎn)品內(nèi)的固件版本會(huì)將該I/O選項(xiàng)限制到比較慢的預(yù)定速度。然而,盡管性能降低,但是仍然可以啟用高端產(chǎn)品的特征,從而允許個(gè)人接受該固件版本,只是一些特征的較低運(yùn)行速度稍有不便。因此,正如下面進(jìn)一步描述的那樣,在優(yōu)選實(shí)施方式中,與一個(gè)或多個(gè)硬件和軟件防護(hù)裝置一起使用固件防護(hù)裝置。
圖1是一個(gè)框圖,說明根據(jù)本發(fā)明的說明性的實(shí)施方式的電子產(chǎn)品系列內(nèi)的兩種產(chǎn)品。一種電子產(chǎn)品系列可以包括任意的多種產(chǎn)品。為說明起見只示出兩種。產(chǎn)品101和151具有通用平臺。在本例中,產(chǎn)品101和151具有通用印刷電路板(PCB)102。印刷電路板(PCB)102可以進(jìn)行批量生產(chǎn),因?yàn)榈投水a(chǎn)品(即產(chǎn)品101)和高端產(chǎn)品(即產(chǎn)品151)都包括它。兩種產(chǎn)品101和151之間的其它通用元件可能包括輸入/輸出設(shè)備或連接107以及操作軟件108。產(chǎn)品101和產(chǎn)品151之間的產(chǎn)品差別包括不同的系統(tǒng)處理器。在圖1中,產(chǎn)品101具有處理器A 103,而產(chǎn)品B 151具有處理器B 153。處理器B也許是一個(gè)更快的處理器,相同電子產(chǎn)品系列內(nèi)的高端產(chǎn)品中可以包括處理器B。另外,產(chǎn)品101包括與操作軟件108一起使用的應(yīng)用程序A 109,而產(chǎn)品151包括與通用操作軟件108一起使用的應(yīng)用程序B 159。在此種情況中,應(yīng)用程序B 159可能包括除應(yīng)用程序A 109包括的那些功能之外的附加功能。最后,產(chǎn)品101可能包括可編程邏輯設(shè)備(未示出),其中存儲(chǔ)有支持系統(tǒng)總線速率X的固件版本。作為選擇,產(chǎn)品151可能包括可編程邏輯設(shè)備(未示出),其中存儲(chǔ)有支持系統(tǒng)總線速率Y的固件版本。因此,產(chǎn)品151可能具有比工作于總線速率X的產(chǎn)品101更快的總線速率Y。
現(xiàn)在參照圖2,該圖示出其中存儲(chǔ)有數(shù)據(jù)字段的存儲(chǔ)器202。存儲(chǔ)器202可以是內(nèi)部或外部存儲(chǔ)器、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、系統(tǒng)管理連續(xù)可編程只讀存儲(chǔ)器、或一些其它形式的存儲(chǔ)器。存儲(chǔ)器202可以包括用于產(chǎn)品分組ID編碼210、產(chǎn)品序號220和其它標(biāo)識數(shù)據(jù)230的數(shù)據(jù)字段。產(chǎn)品分組ID編碼210是表示具有特定特征或功能性集合的產(chǎn)品的數(shù)據(jù)字段,并可用來區(qū)分同一系列中的多種產(chǎn)品。例如,產(chǎn)品分組ID編碼210可以包括一個(gè)4位數(shù)字字段,其中低端產(chǎn)品的唯一產(chǎn)品分組ID編碼210是0000。相反,同一電子產(chǎn)品系列中的高端產(chǎn)品的產(chǎn)品分組ID編碼具有唯一的產(chǎn)品分組ID編碼1010。產(chǎn)品分組ID編碼210的這個(gè)例子僅僅是該數(shù)據(jù)字段的一種可能性。本發(fā)明并不限于特定的字段長度或格式。
產(chǎn)品序號220是電子產(chǎn)品系列內(nèi)的每種產(chǎn)品特有的數(shù)據(jù)字段。產(chǎn)品序號220可以標(biāo)識具有相同功能性和特征的高端產(chǎn)品、中檔產(chǎn)品等分組中的特定產(chǎn)品。另外,可以利用產(chǎn)品序號220來驗(yàn)證產(chǎn)品分組ID編碼210的真實(shí)性。在個(gè)人能修改低端產(chǎn)品的產(chǎn)品分組ID編碼210以使它顯現(xiàn)為高端產(chǎn)品的情況下,可以利用產(chǎn)品序號220來驗(yàn)證與產(chǎn)品序號220匹配的產(chǎn)品分組ID編碼210,從而確保不出現(xiàn)對產(chǎn)品的非授權(quán)修改。
產(chǎn)品序號220可以與產(chǎn)品分組ID編碼210相對應(yīng)。該產(chǎn)品中存儲(chǔ)的表可以存儲(chǔ)與特定產(chǎn)品分組ID編碼210相互關(guān)聯(lián)的有效序號的范圍或集合。作為選擇,產(chǎn)品序號220可以是產(chǎn)品分組ID編碼210的函數(shù)。與產(chǎn)品分組ID編碼210相對應(yīng)的有效序號可以是要求輸出一個(gè)整數(shù)的函數(shù)。產(chǎn)品序號220可以是函數(shù)的輸入,其中輸入到該函數(shù)中的有效產(chǎn)品序號220將輸出一個(gè)整數(shù)。這僅僅是使產(chǎn)品分組ID編碼210和產(chǎn)品序號220相互關(guān)聯(lián)的幾個(gè)例子。正如本發(fā)明中使用的那樣,術(shù)語產(chǎn)品信息數(shù)據(jù)包括產(chǎn)品分組ID編碼和產(chǎn)品具體信息數(shù)據(jù),例如產(chǎn)品序號或其它類型的產(chǎn)品標(biāo)識。
其它標(biāo)識數(shù)據(jù)230的功能類似于產(chǎn)品序號220。其它標(biāo)識數(shù)據(jù)230可以是用來標(biāo)識特定產(chǎn)品以及用來驗(yàn)證產(chǎn)品分組ID編碼220未被篡改或修改的任何類型的信息。
基于上面描述的特征,進(jìn)一步參照圖3描述根據(jù)本發(fā)明之說明性的實(shí)施方式的防止非授權(quán)修改產(chǎn)品的通用方法。最初,在步驟300中開始給產(chǎn)品加電。在計(jì)算機(jī)的情況中,通過引導(dǎo)計(jì)算機(jī)給計(jì)算機(jī)加電。在步驟310中,諸如現(xiàn)場可編程門陣列之類的可編程邏輯設(shè)備(PLD)自動(dòng)加載內(nèi)嵌在該P(yáng)LD內(nèi)或與該P(yáng)LD關(guān)聯(lián)的固件,以對其進(jìn)行配置用于該產(chǎn)品的系統(tǒng)操作。可以互連可編程邏輯設(shè)備與包含在電子產(chǎn)品系列內(nèi)的所有產(chǎn)品內(nèi)的通用平臺。隨后在步驟320內(nèi)由該系統(tǒng)啟動(dòng)該產(chǎn)品的操作軟件。本領(lǐng)域中的技術(shù)人員應(yīng)該理解,上述步驟僅僅是在產(chǎn)品的加電程序期間采取的步驟的一個(gè)例子??梢栽谠摦a(chǎn)品的操作期間加入即將來臨的步驟,并且這些步驟不必只在初始加電程序后出現(xiàn)。在步驟330中,該軟件從存儲(chǔ)器中讀取諸如產(chǎn)品分組ID編碼210之類的產(chǎn)品分組ID編碼。該軟件基于產(chǎn)品分組ID編碼確定該產(chǎn)品中要啟用或禁用的必要功能。不同的產(chǎn)品分組ID編碼可以和制造商允許該產(chǎn)品執(zhí)行的不同功能相互關(guān)聯(lián)。
一旦該軟件讀取產(chǎn)品分組ID編碼,就在步驟340中確定該產(chǎn)品分組ID編碼是否對任何產(chǎn)品有效,不論是高端、低端產(chǎn)品,還是在它們之間指定的產(chǎn)品。如果確定該產(chǎn)品分組ID編碼無效,也就是說,不與在諸如軟件存儲(chǔ)表(未示出)之類的表中找到的任何已知產(chǎn)品分組ID編碼相互關(guān)聯(lián),則在步驟360中,該系統(tǒng)只允許安裝最少的功能或特征,不能運(yùn)行該產(chǎn)品的任何功能或特征,和/或向該產(chǎn)品的操作員傳送出錯(cuò)信息。作為選擇,如果該軟件確定該產(chǎn)品分組ID編碼有效,則該軟件將相應(yīng)啟用或禁用該產(chǎn)品的功能性或特征。就本例而言,該系統(tǒng)可以基于該電子產(chǎn)品系列中的所有產(chǎn)品共有的一些標(biāo)準(zhǔn)功能性或特征,選擇禁用該產(chǎn)品的全部功能以阻止進(jìn)一步修改,或者僅僅允許該產(chǎn)品最少的使用。舉幾個(gè)例子來說,這些特征可以采取以下形式插卡、處理算法或得到許可的第三方應(yīng)用程序軟件。軟件差別還可以確定該產(chǎn)品的操作接受哪種插卡。圖3說明用來防止修改產(chǎn)品的產(chǎn)品分組ID編碼的一個(gè)例子。然而,可以利用與產(chǎn)品分組ID編碼相同的形式,使用諸如圖2所示的產(chǎn)品序號或其它標(biāo)識數(shù)據(jù)以防止修改產(chǎn)品。
圖4說明根據(jù)本發(fā)明的說明性的實(shí)施方式在向產(chǎn)品中添加新硬件時(shí)防止產(chǎn)品的非授權(quán)修改的方法。圖4說明了將新的輸入/輸出卡連接到產(chǎn)品的情況的例子;然而,這只是說明性的并且本發(fā)明并不限于給出的例子。在步驟400中,向該系統(tǒng)連接新的插入式輸入/輸出(I/O)卡。該步驟可能也包括向該系統(tǒng)連接新設(shè)備或者在該系統(tǒng)上加載該設(shè)備的新特征。在步驟410中,該軟件從該I/O卡的存儲(chǔ)器中讀取設(shè)備標(biāo)識數(shù)據(jù)。配置各I/O卡以具有設(shè)備標(biāo)識數(shù)據(jù),并且可以將其配置成包括與圖2所示類似的設(shè)備序號和/或其它標(biāo)識數(shù)據(jù)。在步驟420中,該軟件確定該I/O卡的設(shè)備標(biāo)識數(shù)據(jù)是否有效,其意思是該I/O卡的設(shè)備標(biāo)識數(shù)據(jù)與在軟件存儲(chǔ)表中找到的已知數(shù)據(jù)相互關(guān)聯(lián)。如果查明該I/O卡的設(shè)備標(biāo)識數(shù)據(jù)是有效的,則在步驟430中,該軟件啟用該插入式I/O卡的特征,以允許該系統(tǒng)識別新功能的I/O設(shè)備。如果查明該I/O卡的設(shè)備標(biāo)識數(shù)據(jù)是無效的,例如,有人試圖在未授權(quán)與該I/O卡(或其它硬件)連接的設(shè)備上連接該I/O卡(或其它硬件)時(shí),則該系統(tǒng)不會(huì)運(yùn)行該I/O設(shè)備的新功能,和/或向操作員傳送出錯(cuò)信息。
可以在高端、低端或中檔產(chǎn)品中包含硬件防護(hù)裝置以便與其它檔次的產(chǎn)品產(chǎn)生差別。硬件防護(hù)裝置可以包括為授權(quán)的插入式設(shè)備的簡單連接而設(shè)計(jì)的硬件組件的一些組合。通過與軟件和固件防護(hù)裝置結(jié)合,這些硬件防護(hù)裝置有助于制止或阻止非授權(quán)修改。在一些情況中,這就像從所有產(chǎn)品通用的印刷電路板中略去必要的連接器一樣簡單。在其它情況中,當(dāng)必須為增強(qiáng)性能而保持開放時(shí),電路可以是閉合的??梢岳迷S多不同組合來把非授權(quán)修改降低到最小程度。然而,硬件防護(hù)裝置本身通常不能阻止對產(chǎn)品的篡改。同樣,與軟件和固件差異相比,更容易繞過硬件組件差異。
圖5說明用于防止非授權(quán)修改設(shè)備的方法。最初,在步驟500中獲得低端產(chǎn)品。在步驟510中,進(jìn)行非授權(quán)硬件修改以成功繞過該低端產(chǎn)品和高端產(chǎn)品之間的硬件防護(hù)裝置。例如,低端產(chǎn)品可以是最高支持512MB系統(tǒng)存儲(chǔ)器的個(gè)人計(jì)算機(jī)。在步驟510中,某人卸下512MB的存儲(chǔ)模塊并且替換為其容量為1024MB的高端產(chǎn)品存儲(chǔ)模塊。在步驟520中,該軟件從該產(chǎn)品的存儲(chǔ)器中讀取產(chǎn)品分組ID編碼。一旦該軟件已讀取產(chǎn)品分組ID編碼,在步驟530中確定該產(chǎn)品分組ID編碼是否對高端產(chǎn)品有效。如果確定該產(chǎn)品分組ID編碼無效,也就是說,不與高端產(chǎn)品相互關(guān)聯(lián),則在步驟550中,該系統(tǒng)將僅僅啟用該產(chǎn)品分組ID編碼允許的那些功能或特征。也就是說,如果該產(chǎn)品分組ID編碼對低端產(chǎn)品有效,則允許512MB。作為選擇,如果該軟件確定該產(chǎn)品分組ID編碼有效,則在步驟540中,該軟件將相應(yīng)啟用或禁用該產(chǎn)品的全部功能或特征。因此,在此種情況中,能夠成功繞過硬件防護(hù)裝置的個(gè)人仍然不能運(yùn)行具有增強(qiáng)性能能力的產(chǎn)品。
圖6說明用于防止非授權(quán)修改設(shè)備的另一種方法。最初,在步驟600中獲得低端產(chǎn)品。在步驟610中,進(jìn)行硬件修改以成功繞過該低端產(chǎn)品和高端產(chǎn)品之間的硬件防護(hù)裝置。另外,在步驟620中,成功修改該產(chǎn)品分組ID編碼以反映高端產(chǎn)品的產(chǎn)品分組ID編碼。本例說明不太可能的情況,其中個(gè)人成功修改硬件以反映高端產(chǎn)品能力,并且該低端產(chǎn)品的產(chǎn)品分組ID編碼顯現(xiàn)為像高端產(chǎn)品一樣。在步驟630中,該軟件從存儲(chǔ)器中讀取經(jīng)過修改的產(chǎn)品分組ID編碼。由于經(jīng)過修改的產(chǎn)品分組ID編碼是軟件存儲(chǔ)表內(nèi)的有效編碼,所以該軟件在步驟640中為該低端產(chǎn)品啟用高端產(chǎn)品能力的所有特征和功能。
通常,硬件防護(hù)裝置有助于防止此類非授權(quán)修改;然而,在此種情況中,硬件修改是在步驟610中進(jìn)行的。但是,在步驟650中,加載到可編程邏輯設(shè)備中的固件版本仍然根據(jù)與該低端產(chǎn)品關(guān)聯(lián)的固件版本運(yùn)行該系統(tǒng)的功能。例如,可以把I/O插槽配置為支持兩個(gè)32位的33MHz的選項(xiàng)卡。可以利用硬件變更修改總線寬度,以允許64位的總線寬度,并且該軟件可以將該產(chǎn)品分組ID編碼識別為高端產(chǎn)品的產(chǎn)品分組ID編碼;然而,該固件控制該I/O插槽總線速度,并且使其仍然保持33MHz而不是在66MHz運(yùn)行的高端產(chǎn)品的總線速度。同樣,在步驟660中,或者將該高端產(chǎn)品的特征限制在低端產(chǎn)品的特征的運(yùn)行能力內(nèi),或者簡單化該高端產(chǎn)品的特征完全不運(yùn)行。
圖7表示本發(fā)明的另一個(gè)說明性的實(shí)施方式。此外,圖7說明用于防止非授權(quán)修改設(shè)備的一種方法。最初,在步驟700中獲得低端產(chǎn)品。在步驟710中,進(jìn)行硬件修改以成功繞過該低端產(chǎn)品和高端產(chǎn)品之間的硬件防護(hù)裝置。另外,在步驟720中,成功修改產(chǎn)品分組ID編碼以反映高端產(chǎn)品的產(chǎn)品分組ID編碼。盡管未示出,但是本例可能還包括以下步驟修改可編程邏輯設(shè)備內(nèi)的固件,以便顯現(xiàn)為允許增強(qiáng)性能和功能性。因此,本例表示一種其中個(gè)人成功繞過適當(dāng)?shù)挠布?、軟件和固件防護(hù)裝置的情況。
在步驟730中,該軟件從存儲(chǔ)器中讀取經(jīng)過修改的產(chǎn)品分組ID編碼。由于經(jīng)過修改的產(chǎn)品分組ID編碼使得該低端產(chǎn)品實(shí)際顯現(xiàn)為高端產(chǎn)品,所以該軟件認(rèn)為該低端產(chǎn)品是高端產(chǎn)品。然而,調(diào)用進(jìn)一步的防護(hù)裝置。在步驟750中,該軟件從存儲(chǔ)器中讀取產(chǎn)品序號。作為選擇,該軟件可以讀取諸如圖2所示的其它標(biāo)識數(shù)據(jù)。一旦在步驟750中讀取產(chǎn)品序號之后,該軟件將該產(chǎn)品序號和產(chǎn)品分組ID編碼與軟件存儲(chǔ)表相比較,以便在步驟760中確定該產(chǎn)品分組ID編碼是否經(jīng)過修改。如果該序號與該產(chǎn)品分組ID編碼相對應(yīng),則在步驟770中,該軟件根據(jù)經(jīng)過確認(rèn)的產(chǎn)品分組ID編碼啟用或禁用該產(chǎn)品的特征和功能。然而,如果該產(chǎn)品分組ID編碼和該產(chǎn)品序號不正確地匹配,則在步驟780中,該系統(tǒng)不能運(yùn)行該設(shè)備的功能和特征,和/或向操作員傳送出錯(cuò)信息。通過實(shí)施上述防護(hù)裝置,硬件、軟件和固件繞過不足以在低端產(chǎn)品中啟用高端功能性。
可以用一臺或多臺計(jì)算機(jī)、移動(dòng)終端、接入路由器或其它設(shè)備執(zhí)行的諸如一個(gè)或多個(gè)程序模塊中的計(jì)算機(jī)可執(zhí)行指令的形式,實(shí)現(xiàn)本發(fā)明的一個(gè)或多個(gè)方面。通常,程序模塊包括例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等,其中當(dāng)計(jì)算機(jī)或其它設(shè)備中的處理器對其進(jìn)行執(zhí)行時(shí),它們執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定的抽象數(shù)據(jù)類型??梢栽谥T如硬盤、光盤、可拆卸存儲(chǔ)介質(zhì)、固態(tài)存儲(chǔ)器、RAM等的計(jì)算機(jī)可讀介質(zhì)上存儲(chǔ)計(jì)算機(jī)可執(zhí)行指令。正如本領(lǐng)域的技術(shù)人員理解的那樣,可以按照各種實(shí)施方式需要的那樣,組合或分配程序模塊的功能性。另外,可以采用諸如集成電路、現(xiàn)場可編程門陣列(FPGA)之類的固件或硬件等價(jià)物的形式,全部或部分體現(xiàn)其功能性。
盡管相對于包含執(zhí)行本發(fā)明之現(xiàn)有優(yōu)選方式的具體示例描述了本發(fā)明,但是本領(lǐng)域的技術(shù)人員應(yīng)該理解,上述系統(tǒng)和技術(shù)有許多變形和變更。因此,應(yīng)該像隨附權(quán)利要求書闡述的那樣廣義解釋本發(fā)明的實(shí)質(zhì)和范圍。
權(quán)利要求
1.一種用于防止產(chǎn)品的非授權(quán)修改的方法,包括利用專為該產(chǎn)品配置的固件版本運(yùn)行該產(chǎn)品;讀取產(chǎn)品信息數(shù)據(jù);確定該產(chǎn)品信息數(shù)據(jù)是否有效;以及根據(jù)該確定步驟配置該產(chǎn)品的至少一個(gè)特征。
2.如權(quán)利要求1的方法,其中產(chǎn)品信息數(shù)據(jù)包括產(chǎn)品分組標(biāo)識編碼。
3.如權(quán)利要求2的方法,其中該產(chǎn)品分組標(biāo)識編碼存儲(chǔ)在存儲(chǔ)器中。
4.如權(quán)利要求3的方法,其中該產(chǎn)品分組標(biāo)識編碼包括與該產(chǎn)品相對應(yīng)的數(shù)據(jù)字段。
5.如權(quán)利要求3的方法,其中該產(chǎn)品分組標(biāo)識編碼與輸入/輸出卡相對應(yīng)。
6.如權(quán)利要求3的方法,其中該存儲(chǔ)器包括產(chǎn)品啟動(dòng)編碼。
7.如權(quán)利要求3的方法,其中該存儲(chǔ)器包括可編程只讀存儲(chǔ)器。
8.如權(quán)利要求1的方法,其中產(chǎn)品信息數(shù)據(jù)包括產(chǎn)品具體信息數(shù)據(jù)。
9.如權(quán)利要求1的方法,進(jìn)一步包括根據(jù)專為該產(chǎn)品配置的硬件防護(hù)裝置配置該產(chǎn)品的通用平臺的步驟。
10.如權(quán)利要求9的方法,其中該硬件防護(hù)裝置定義允許的總線寬度。
11.如權(quán)利要求9的方法,其中該硬件防護(hù)裝置包括排除一些硬件組件。
12.如權(quán)利要求1的方法,其中該固件版本定義至少一個(gè)控制信號的行為。
13.如權(quán)利要求12的方法,其中該至少一個(gè)控制信號定義該產(chǎn)品的處理器總線速度。
14.如權(quán)利要求12的方法,其中該至少一個(gè)控制信號定義輸入/輸出設(shè)備的允許總線速度。
15.如權(quán)利要求12的方法,其中該至少一個(gè)控制信號定義該產(chǎn)品的允許存儲(chǔ)容量。
16.如權(quán)利要求1的方法,其中可編程邏輯設(shè)備包括該固件版本。
17.如權(quán)利要求16的方法,其中互連該可編程邏輯設(shè)備和該產(chǎn)品的通用平臺。
18.如權(quán)利要求1的方法,其中該產(chǎn)品包括輸入/輸出卡。
19.如權(quán)利要求1的方法,其中用軟件執(zhí)行該讀取該產(chǎn)品信息數(shù)據(jù)的步驟。
20.如權(quán)利要求19的方法,其中該軟件存儲(chǔ)在該產(chǎn)品的存儲(chǔ)器中。
21.如權(quán)利要求1的方法,進(jìn)一步包括存儲(chǔ)有效產(chǎn)品信息數(shù)據(jù)表的步驟。
22.如權(quán)利要求21的方法,其中該有效產(chǎn)品信息數(shù)據(jù)表存儲(chǔ)在軟件內(nèi)。
23.如權(quán)利要求21的方法,其中確定該產(chǎn)品信息數(shù)據(jù)是否有效的步驟包括對照該讀取的產(chǎn)品信息數(shù)據(jù)查詢該有效產(chǎn)品信息數(shù)據(jù)表;以及確定該產(chǎn)品信息數(shù)據(jù)是否與該有效產(chǎn)品信息數(shù)據(jù)表中的條目匹配。
24.如權(quán)利要求21的方法,其中產(chǎn)品信息數(shù)據(jù)包括產(chǎn)品分組ID編碼,該方法進(jìn)一步包括以下步驟從該產(chǎn)品的存儲(chǔ)器中讀取產(chǎn)品具體信息數(shù)據(jù);以及查詢有效產(chǎn)品具體信息數(shù)據(jù)表;其中該確定該產(chǎn)品信息數(shù)據(jù)是否有效的步驟包括對照該讀取的產(chǎn)品分組標(biāo)識編碼和該讀取的產(chǎn)品具體信息數(shù)據(jù),檢查該有效產(chǎn)品具體信息數(shù)據(jù)表和相應(yīng)的產(chǎn)品分組標(biāo)識編碼;以及確定該產(chǎn)品具體信息數(shù)據(jù)是否證實(shí)該產(chǎn)品分組標(biāo)識編碼。
25.如權(quán)利要求24的方法,其中該產(chǎn)品具體信息數(shù)據(jù)包括產(chǎn)品序號。
26.如權(quán)利要求24的方法,其中確定該產(chǎn)品具體信息數(shù)據(jù)是否證實(shí)該產(chǎn)品分組標(biāo)識編碼的步驟包括對照有效產(chǎn)品具體信息數(shù)據(jù)的范圍,匹配該產(chǎn)品分組標(biāo)識編碼。
27.如權(quán)利要求1的方法,其中當(dāng)確定該產(chǎn)品信息數(shù)據(jù)有效時(shí),該配置該產(chǎn)品的至少一個(gè)特征的步驟包括根據(jù)該產(chǎn)品信息數(shù)據(jù)啟用該產(chǎn)品的至少一個(gè)特征。
28.如權(quán)利要求27的方法,其中軟件根據(jù)該產(chǎn)品信息數(shù)據(jù)啟用和禁用該產(chǎn)品的至少一個(gè)特征。
29.如權(quán)利要求1的方法,其中當(dāng)確定該產(chǎn)品信息數(shù)據(jù)無效時(shí),該配置該產(chǎn)品的至少一個(gè)特征的步驟包括禁用該產(chǎn)品的至少一個(gè)特征。
30.如權(quán)利要求29的方法,其中該配置該產(chǎn)品的至少一個(gè)特征的步驟進(jìn)一步包括傳送與該無效產(chǎn)品信息數(shù)據(jù)相對應(yīng)的出錯(cuò)信息。
31.如權(quán)利要求29的方法,其中該產(chǎn)品的至少一個(gè)特征包括該產(chǎn)品的多個(gè)特征。
32.如權(quán)利要求29的方法,其中禁用該產(chǎn)品的至少一個(gè)特征包括僅禁用同一產(chǎn)品系列中的低端產(chǎn)品不包含的該產(chǎn)品的特征。
33.如權(quán)利要求29的方法,其中利用包括該固件版本的可編程邏輯設(shè)備執(zhí)行該產(chǎn)品的至少一個(gè)特征的禁用。
34.如權(quán)利要求29的方法,其中利用存儲(chǔ)在存儲(chǔ)器中的軟件執(zhí)行該產(chǎn)品的至少一個(gè)特征的禁用。
35.一種用于防止產(chǎn)品的非授權(quán)修改的方法,包括讀取產(chǎn)品分組標(biāo)識編碼;讀取產(chǎn)品具體信息數(shù)據(jù);確定該產(chǎn)品分組標(biāo)識編碼是否有效;根據(jù)該產(chǎn)品分組標(biāo)識編碼確定該產(chǎn)品具體信息數(shù)據(jù)是否有效;以及根據(jù)上述確定步驟配置該產(chǎn)品的至少一個(gè)特征。
36.如權(quán)利要求35的方法,進(jìn)一步包括利用專為該產(chǎn)品配置的固件版本運(yùn)行該產(chǎn)品的步驟。
37.如權(quán)利要求36的方法,進(jìn)一步包括根據(jù)專為該產(chǎn)品配置的硬件防護(hù)裝置配置該產(chǎn)品的通用平臺的步驟。
38.一種用于防止向產(chǎn)品連接非授權(quán)設(shè)備的方法,包括利用專為該產(chǎn)品配置的固件版本運(yùn)行該產(chǎn)品;接收來自該設(shè)備的設(shè)備標(biāo)識數(shù)據(jù);確定該設(shè)備標(biāo)識數(shù)據(jù)是否有效以允許向該產(chǎn)品連接該設(shè)備;以及根據(jù)該確定步驟配置該產(chǎn)品的至少一個(gè)特征。
39.如權(quán)利要求38的方法,進(jìn)一步包括從連接該設(shè)備的產(chǎn)品那里讀取產(chǎn)品分組標(biāo)識編碼;其中該確定該設(shè)備標(biāo)識數(shù)據(jù)是否有效以便允許連接的步驟包括對于該讀取的產(chǎn)品分組標(biāo)識編碼和該讀取的設(shè)備標(biāo)識數(shù)據(jù),查詢有效設(shè)備標(biāo)識數(shù)據(jù)表和相應(yīng)的產(chǎn)品分組標(biāo)識編碼,以確定該設(shè)備標(biāo)識數(shù)據(jù)是否對該讀取的產(chǎn)品分組ID編碼有效。
40.如權(quán)利要求39的方法,其中當(dāng)確定該設(shè)備標(biāo)識數(shù)據(jù)有效而允許連接該設(shè)備時(shí),該配置該產(chǎn)品的至少一個(gè)特征的步驟包括啟用該產(chǎn)品以識別該設(shè)備。
41.如權(quán)利要求39的方法,其中當(dāng)確定該設(shè)備標(biāo)識數(shù)據(jù)對連接該設(shè)備無效時(shí),該配置該產(chǎn)品的至少一個(gè)特征的步驟包括禁用該產(chǎn)品識別該設(shè)備。
42.一種用于防止非授權(quán)修改的系統(tǒng),包括專為該系統(tǒng)配置的運(yùn)行該系統(tǒng)的固件組件;以及根據(jù)產(chǎn)品分組標(biāo)識編碼的有效性,啟用和/或禁用該產(chǎn)品的至少一個(gè)特征的軟件組件。
43.如權(quán)利要求42的系統(tǒng),進(jìn)一步包括專為該系統(tǒng)配置的硬件組件。
44.如權(quán)利要求42的系統(tǒng),其中該軟件組件讀取該產(chǎn)品分組標(biāo)識編碼并確定該產(chǎn)品分組標(biāo)識編碼的有效性。
45.如權(quán)利要求44的系統(tǒng),其中該軟件組件包括有效產(chǎn)品分組標(biāo)識編碼表。
46.如權(quán)利要求44的系統(tǒng),其中該軟件組件讀取產(chǎn)品具體信息數(shù)據(jù)以確定該產(chǎn)品分組標(biāo)識編碼的有效性。
47.如權(quán)利要求46的系統(tǒng),其中該軟件組件包括產(chǎn)品具體信息數(shù)據(jù)表和相應(yīng)的有效產(chǎn)品分組標(biāo)識編碼。
全文摘要
本發(fā)明公開了用來防止為增強(qiáng)其性能或功能而對產(chǎn)品進(jìn)行非授權(quán)修改的方法和系統(tǒng)??梢员Wo(hù)作為電子產(chǎn)品系列之一部分的低端產(chǎn)品免于通過硬件、軟件或固件繞過實(shí)現(xiàn)該產(chǎn)品的非授權(quán)增強(qiáng)。該產(chǎn)品的操作軟件通過讀取獨(dú)特的產(chǎn)品分組ID編碼并確定該編碼的有效性,可以檢測該產(chǎn)品或與該產(chǎn)品相連的輸入/輸出設(shè)備的非授權(quán)修改。可以使用包括硬件和固件防護(hù)裝置在內(nèi)的其它后臺措施來阻止或防止上述非授權(quán)修改。也可以使用其它的產(chǎn)品具體信息數(shù)據(jù)來驗(yàn)證沒有試圖通過繞過該軟件防護(hù)裝置來修改該產(chǎn)品分組ID編碼。
文檔編號G06F1/00GK1739077SQ200380108879
公開日2006年2月22日 申請日期2003年12月19日 優(yōu)先權(quán)日2002年12月30日
發(fā)明者珍妮·阿米杜里, 曹鐵良, 安特羅·迪尼茲, 克里斯托弗·哈恩, 約瑟夫·雷瓦思, 邁克爾·弗雷謝特, 加勒特·懷特 申請人:諾基亞公司