亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

在非易失性存儲(chǔ)器器件上嵌入的系統(tǒng)軟件復(fù)制保護(hù)的制作方法

文檔序號(hào):6750679閱讀:315來源:國(guó)知局
專利名稱:在非易失性存儲(chǔ)器器件上嵌入的系統(tǒng)軟件復(fù)制保護(hù)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種存儲(chǔ)器器件,具體涉及一種在非易失性存儲(chǔ)器器件上復(fù)制保護(hù)的系統(tǒng)和方法。
諸如閃速ROM(只讀存儲(chǔ)器)之類的非易失性存儲(chǔ)器器件常常遭受嚴(yán)重的盜版復(fù)制。這種盜版復(fù)制導(dǎo)致了制造者和消費(fèi)者的附加成本。因此,制造者已經(jīng)設(shè)計(jì)幾種方法以用于防止固件的未授權(quán)復(fù)制。
一種這樣的方法是采用讀保護(hù)嵌入ROM。這樣的讀保護(hù)嵌入ROM是一種僅允許從CPU(中央處理單元)核心取指令的嵌入ROM存儲(chǔ)器。然而,這種讀保護(hù)嵌入ROM方法不容易在采用分級(jí)總線結(jié)構(gòu)和高速緩沖管理的系統(tǒng)內(nèi)實(shí)現(xiàn)。進(jìn)一步,在掩膜ROM的情況下,對(duì)于每種應(yīng)用需要完全定制的保護(hù)芯片。在OTP ROM的情況下,特定的裝置是需要用于程序設(shè)計(jì)的裝置。最終,一個(gè)有經(jīng)驗(yàn)的盜版復(fù)制者可以打開并復(fù)制一個(gè)單獨(dú)的芯片以繞過嵌入讀保護(hù)ROM。
一種替換的方法是使用專用鑒定芯片。然而,這種方法是有缺陷的,因?yàn)槠湫枰粋€(gè)諸如串行總線之類的支持硬件和來自系統(tǒng)微控制器或處理器的其他資源。
同樣地,還需要用于非易失性存儲(chǔ)器器件上的固件的改進(jìn)的復(fù)制保護(hù)。還需要這種復(fù)制保護(hù)容易并且低成本地實(shí)現(xiàn)。
通過根據(jù)本發(fā)明的系統(tǒng)和方法可以很大程度上解決已有技術(shù)中的這些和其他問題。根據(jù)本發(fā)明的非易失性存儲(chǔ)器芯片復(fù)制保護(hù)采用一個(gè)存儲(chǔ)第一和第二存取密鑰的讀保護(hù)存儲(chǔ)區(qū)。剩余的存儲(chǔ)區(qū)還執(zhí)行常規(guī)的非易失性存儲(chǔ)功能。即使芯片被復(fù)制,也不能復(fù)制被保護(hù)的存儲(chǔ)區(qū)。
為測(cè)試一個(gè)存儲(chǔ)器是否具有一個(gè)有效復(fù)制,通過系統(tǒng)軟件產(chǎn)生一個(gè)隨機(jī)的種子值并且,使用第一密鑰,產(chǎn)生第一復(fù)制保護(hù)函數(shù)。具有第二密鑰的相同種子值將產(chǎn)生后面涉及的第二函數(shù)。
為完成測(cè)試,該系統(tǒng)必須將第一函數(shù)的正確值寫回反-復(fù)制器件。當(dāng)且僅當(dāng)提供要求的應(yīng)答,才允許系統(tǒng)從反復(fù)制器件讀回第二函數(shù)的匹配值。同樣,輸出隨機(jī)數(shù),該隨機(jī)數(shù)被系統(tǒng)識(shí)別為錯(cuò)誤,從而是復(fù)制的結(jié)果。在該情況下,在不向下進(jìn)行的情況下系統(tǒng)暫停操作。
為實(shí)現(xiàn)復(fù)制保護(hù)器件,可以結(jié)合用于函數(shù)和比較實(shí)現(xiàn)的控制邏輯使用非易失性存儲(chǔ)器技術(shù)。該函數(shù)可以被構(gòu)成查找表,對(duì)于非易失性存儲(chǔ)器技術(shù)該表易于實(shí)現(xiàn),另外,系統(tǒng)軟件用于實(shí)現(xiàn)詢問和應(yīng)答輪詢,以及如果檢測(cè)到無效復(fù)制就掛起系統(tǒng)的判定。
這樣本發(fā)明提供一種改進(jìn)的在非易失性存儲(chǔ)器固件上的非易失性復(fù)制保護(hù)。根據(jù)本發(fā)明的固件復(fù)制保護(hù)相對(duì)成本較低并且相對(duì)易于實(shí)現(xiàn)。
當(dāng)結(jié)合下面的附圖閱讀下面的詳細(xì)描述時(shí)可以較好地理解本發(fā)明,其中

圖1是根據(jù)本發(fā)明一個(gè)實(shí)施的示范的非易失性存儲(chǔ)器芯片的方框圖;圖2是示出本發(fā)明一個(gè)實(shí)施例的操作流程圖;圖3是示出本發(fā)明另一個(gè)實(shí)施例的操作流程圖;和圖4是示出根據(jù)本發(fā)明一種實(shí)施的示范查找表實(shí)現(xiàn)的圖。
圖1-4示出用于非易失性存儲(chǔ)器芯片復(fù)制保護(hù)的系統(tǒng)和方法。正如下面詳細(xì)討論的,根據(jù)本發(fā)明的非易失性存儲(chǔ)器芯片復(fù)制保護(hù)采用一個(gè)存儲(chǔ)第一和第二存取密鑰的讀保護(hù)存儲(chǔ)區(qū)而剩余的存儲(chǔ)區(qū)還執(zhí)行常規(guī)的非易失性存儲(chǔ)功能。即使芯片被復(fù)制,也不能復(fù)制被保護(hù)的存儲(chǔ)區(qū)。
為測(cè)試一個(gè)存儲(chǔ)器是否是一個(gè)有效復(fù)制,通過系統(tǒng)軟件產(chǎn)生一個(gè)隨機(jī)的種子值并且,使用第一密鑰,產(chǎn)生第一復(fù)制保護(hù)函數(shù)。具有第二密鑰的相同種子值將產(chǎn)生后面涉及的第二函數(shù)。為完成測(cè)試,該系統(tǒng)必須將第一函數(shù)的正確值寫回反-復(fù)制器件。當(dāng)且僅當(dāng)提供要求的應(yīng)答,才允許系統(tǒng)從反復(fù)制器件讀回第二函數(shù)的匹配值。同樣,輸出隨機(jī)數(shù),該隨機(jī)數(shù)被系統(tǒng)識(shí)別為錯(cuò)誤,從而是復(fù)制的結(jié)果。在該情況下,在不向下進(jìn)行的情況下系統(tǒng)暫停操作。
現(xiàn)在按照?qǐng)D1,示出示范非易失性存儲(chǔ)器芯片100的方框圖。該非易失性存儲(chǔ)器芯片可以是,例如,諸如EPROM,或閃速存儲(chǔ)器之類的隨機(jī)存取存儲(chǔ)器。該存儲(chǔ)器芯片包括一個(gè)耦合到數(shù)據(jù)總線110的存儲(chǔ)器庫101。該存儲(chǔ)器庫101包括一個(gè)公用ROM存儲(chǔ)器區(qū)102和一個(gè)被保護(hù)的ROM區(qū)105。處理單元90可以耦合到存儲(chǔ)器芯片100。處理單元90實(shí)施系統(tǒng)軟件,后面將更為詳細(xì)地對(duì)其進(jìn)行描述。
根據(jù)本發(fā)明的非易失性存儲(chǔ)器芯片復(fù)制保護(hù)采用一個(gè)存儲(chǔ)第一和第二存取密鑰(寄存器A和B)的讀保護(hù)存儲(chǔ)區(qū)105。如果芯片被復(fù)制,被保護(hù)的存儲(chǔ)區(qū)不能被復(fù)制。用戶可以選擇存取密鑰,然后通過制造者將該存取密鑰燒制入被保護(hù)的存儲(chǔ)區(qū)并且不能再次被讀出。應(yīng)該注意到盡管下面描述了第一和第二存取密鑰,根據(jù)所述實(shí)施較多或較少的密鑰也是可能的。這樣,附圖僅是示意性的。
根據(jù)一個(gè)實(shí)施,可以采用三個(gè)寄存器,寄存器C,寄存器D,以及寄存器E。正如下面詳細(xì)解釋的,寄存器C是只寫入寄存器,寄存器D是只寫入寄存器,以及寄存器E是只讀寄存器。
使用寄存器C以存儲(chǔ)一個(gè)“種子”值。通過系統(tǒng)軟件產(chǎn)生隨機(jī)種子值并且在接收時(shí)將其存儲(chǔ)在寄存器C。如下面詳細(xì)描述的,系統(tǒng)軟件還用于將一個(gè)值寫入寄存器D。特別是,通過已被制造者預(yù)編程的函數(shù)F(A,C)的系統(tǒng)軟件使用寄存器D來存儲(chǔ)一個(gè)“猜測(cè)”值。寄存器E用于存儲(chǔ)已從寄存器E被讀回的一個(gè)測(cè)試值。具體地說,當(dāng)且僅當(dāng)寄存器D中的值與A和C,F(xiàn)(A,C)的函數(shù)結(jié)果匹配時(shí),寄存器E的輸出值與B和C,f(B,C)的第二函數(shù)結(jié)果匹配。否則在寄存器E將存儲(chǔ)一個(gè)不同值。
函數(shù)F(A,C)和f’(B,C)可以通過邏輯單元106在運(yùn)作時(shí)產(chǎn)生或者被實(shí)施為存儲(chǔ)在邏輯單元106的查找表。該函數(shù)可以是兩個(gè)變量的任何預(yù)定函數(shù)。
參照?qǐng)D2較為詳細(xì)地示出了本發(fā)明一個(gè)方面的操作。特別是,圖2示出一個(gè)用于存儲(chǔ)用戶存取密鑰的示范程序。在步驟302,用戶選擇存取密鑰A和B。作為一種替換,可以由制造者提供存取密鑰A和B。在步驟304,系統(tǒng)將存取密鑰A和B存儲(chǔ)在被保護(hù)的ROM104。這樣,例如,可以以各種方式存儲(chǔ)存取密鑰A和B,例如使用公知的燒制技術(shù)。最終,在步驟306,系統(tǒng)產(chǎn)生函數(shù)F(A,C)和f’(B,C)的查找表。接著將該函數(shù)存儲(chǔ)在邏輯單元106以由系統(tǒng)以后使用。
圖3是示出本發(fā)明另一個(gè)方面的操作的流程圖。特別是,圖3的流程圖示出“詢問和應(yīng)答”程序。在步驟402,系統(tǒng)軟件將隨機(jī)種子值寫入寄存器C。作為響應(yīng),在步驟406,408,邏輯單元106讀取寄存器C并使用存取密鑰A和B產(chǎn)生F(A,C)和f’(B,C)。接著系統(tǒng)軟件將F(A,C)的猜測(cè)和估算寫入寄存器D。由制造者預(yù)程編該猜測(cè)和估算。在步驟412,將寄存器D內(nèi)的值與邏輯單元106產(chǎn)生的F(A,C)的值進(jìn)行比較。如果值匹配,則在步驟414,使用f’(B,C)加載寄存器E,該f’(B,C)在步驟408通過邏輯單元106產(chǎn)生。否則,在步驟410系統(tǒng)軟件根據(jù)D產(chǎn)生隨機(jī)值,但是該值不等于f’(B,C),該值在步驟416加載到寄存器E。
如上所述,可以使用一個(gè)或多個(gè)查找表實(shí)施函數(shù)F(A,C)和f’(B,C)。圖4示出該方法的一種實(shí)現(xiàn)??梢允褂盟膫€(gè)(4)256X4位ROM存儲(chǔ)器402a-502d實(shí)現(xiàn)16(16)位函數(shù)500。例如,可以使用下面的函數(shù)實(shí)施函數(shù)F(A,C)F(A,C)=F1(A1,C1)·212+F2(A2,C2)·28+F3(A3,C3)·24+F4(A4,C4)即,在表1 502a實(shí)現(xiàn)F1,在表2 502b實(shí)現(xiàn)F2,在表3 502c實(shí)現(xiàn)F3,以及在表4 502d實(shí)現(xiàn)F4??梢灶愃频貙?shí)現(xiàn)函數(shù)f’(B,C)。應(yīng)該注意到上述等式只是使用多于一個(gè)表的的復(fù)制保護(hù)函數(shù)一種可能的實(shí)現(xiàn)。這樣,上述等式僅是示意性的。
權(quán)利要求
1.一種固件復(fù)制保護(hù)系統(tǒng),其特征在于被保護(hù)存儲(chǔ)器(105),用于存儲(chǔ)多個(gè)存取密鑰(A,B),所述存取密鑰不能由系統(tǒng)軟件讀?。坏谝淮鎯?chǔ)器位置,用于存儲(chǔ)種子值(108);第二存儲(chǔ)器位置(108),用于存儲(chǔ)第一復(fù)制保護(hù)函數(shù)的估算,所述第一復(fù)制保護(hù)函數(shù)是所述種子值和所述多個(gè)存取密鑰中的第一個(gè)的函數(shù);以及第三存儲(chǔ)器位置(108),如果所述第一復(fù)制保護(hù)函數(shù)通過比較則用于存儲(chǔ)第二復(fù)制保護(hù)函數(shù)的結(jié)果,所述第二復(fù)制保護(hù)函數(shù)是所述種子值和所述多個(gè)存取密鑰中的第二個(gè)的函數(shù)。
2.如權(quán)利要求1所述的固件復(fù)制保護(hù)系統(tǒng),所述多個(gè)存取密鑰(A,B)為用戶可選擇。
3.如權(quán)利要求2所述的固件復(fù)制保護(hù)系統(tǒng),所述第一,第二,以及第三存儲(chǔ)器位置(108)包括第一,第二,和第三寄存器。
4.如權(quán)利要求3所述的固件復(fù)制保護(hù)系統(tǒng),其中如果所述固件不是一個(gè)復(fù)制品則所述第一復(fù)制保護(hù)函數(shù)通過所述估算。
5.一種用于固件保護(hù)的方法,其特征在于在保護(hù)存儲(chǔ)器(108)存儲(chǔ)第一和第二存取密鑰(A,B);存取一個(gè)種子值;產(chǎn)生第一和第二復(fù)制保護(hù)函數(shù);使用系統(tǒng)軟件估算所述第一復(fù)制保護(hù)函數(shù)的輸出;和如果所述第一復(fù)制保護(hù)函數(shù)的所述估算和所述第一復(fù)制保護(hù)函數(shù)的所述輸出相同則存儲(chǔ)所述第二復(fù)制保護(hù)函數(shù)的輸出。
6.如權(quán)利要求5所述的方法,所述第二函數(shù)是所述種子值和所述第二存取密鑰的函數(shù)。
7.如權(quán)利要求6所述的方法,進(jìn)一步包括存儲(chǔ)所述種子值。
8.一種固件復(fù)制保護(hù)器件,其特征在于裝置(105),用于存儲(chǔ)第一和第二存取密鑰并防止所述第一和第二存取密鑰被復(fù)制;裝置(108),用于存儲(chǔ)一個(gè)種子值;裝置(101,106),用于將所述種子值和所述第一存取密鑰的第一函數(shù)與系統(tǒng)軟件所進(jìn)行的一個(gè)估算進(jìn)行比較,如果所述固件還未被復(fù)制則所述估算和第一函數(shù)相同;以及裝置(101,106),如果所述固件還未被復(fù)制用于實(shí)現(xiàn)所述種子值和所述第二存取密鑰的第二函數(shù)。
9.如權(quán)利要求8所述的固件復(fù)制保護(hù)器件,其中所述第一函數(shù)實(shí)現(xiàn)裝置(101,106)包括一個(gè)用于存儲(chǔ)所述第一函數(shù)的結(jié)果的存儲(chǔ)器(108)。
10.如權(quán)利要求9所述的固件復(fù)制保護(hù)器件,其中所述第二函數(shù)實(shí)現(xiàn)裝置(101,106)包括一個(gè)用于存儲(chǔ)所述第二函數(shù)的結(jié)果的存儲(chǔ)器(108)。
11.如權(quán)利要求9所述的固件復(fù)制保護(hù)器件,其中所述種子值被隨機(jī)產(chǎn)生。
12.一種固件復(fù)制保護(hù)器件,其特征在于非易失性存儲(chǔ)器器件(102),具有用于存儲(chǔ)第一和第二存取密鑰的讀保護(hù)區(qū)(105);邏輯電路(106),被配置為實(shí)現(xiàn)作為隨機(jī)變量和所述存取密鑰中的第一個(gè)的第一函數(shù)以及被配置為實(shí)現(xiàn)作為所述隨機(jī)變量和所述第二存取密鑰的第二函數(shù);第一寄存器(108),用于存儲(chǔ)所述隨機(jī)變量;第二寄存器(108),用于儲(chǔ)存由所述第一函數(shù)的系統(tǒng)軟件進(jìn)行的估算;以及第三寄存器(108),如果所述第二寄存器的內(nèi)容與所述第一函數(shù)匹配則存儲(chǔ)所述第二函數(shù)。
13.如權(quán)利要求12所述的固件復(fù)制保護(hù)器件,其中所述第一和第二存取密鑰不能由所述系統(tǒng)軟件讀取。
14.如權(quán)利要求12所述的固件復(fù)制保護(hù)器件,其中所述邏輯單元(106)將所述第一和第二函數(shù)實(shí)現(xiàn)為查找表。
全文摘要
非易失性存儲(chǔ)器芯片保護(hù)采用存儲(chǔ)第一和第二存取密鑰的讀保護(hù)存儲(chǔ)器區(qū),如果該芯片被復(fù)制,則被保護(hù)的存儲(chǔ)器區(qū)(105)不能被復(fù)制。產(chǎn)生一個(gè)隨機(jī)種子數(shù)并且,使用第一密鑰,產(chǎn)生第一函數(shù)。如果該函數(shù)的輸出與一個(gè)實(shí)際密鑰的公知輸出函數(shù)匹配,則產(chǎn)生第二密鑰,該第二密鑰是該種子值和第二存取密鑰的函數(shù)。如果第二個(gè)數(shù)與所要求的值匹配,則允許存取。否則,輸出一個(gè)隨機(jī)數(shù),該隨機(jī)數(shù)被系統(tǒng)識(shí)別為錯(cuò)誤,從而為復(fù)制的結(jié)果。在該情況下,禁止對(duì)系統(tǒng)的訪問。
文檔編號(hào)G11C16/22GK1296265SQ0013239
公開日2001年5月23日 申請(qǐng)日期2000年11月9日 優(yōu)先權(quán)日1999年11月10日
發(fā)明者T·-M·陳 申請(qǐng)人:因芬尼昂技術(shù)北美公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1