用于提供存儲器訪問控制的裝置、系統(tǒng)和方法
【專利摘要】本文描述的是用于提供對受保護軟件(例如,固件備份)和其他數(shù)據(jù)的存儲器訪問控制的裝置、系統(tǒng)和方法。該方法包括由處理器在存儲器中提供用于存儲軟件的備份映像的受保護存儲區(qū)域;檢測軟件中的破壞;從所述受保護存儲區(qū)域訪問所述軟件的所述備份映像;以及使用備份映像更新被破壞的軟件,其中該受保護存儲區(qū)域是存儲器中的預留存儲區(qū)域。
【專利說明】用于提供存儲器訪問控制的裝置、系統(tǒng)和方法
【技術領域】
[0001]本發(fā)明的實施例一般涉及軟件安全性的領域。更具體地來說,本發(fā)明的一些實施例涉及用于提供存儲器訪問控制以保護軟件的裝置、系統(tǒng)和方法。
【背景技術】
[0002]計算機平臺(或僅平臺)集成了運行稱為固件(也稱為平臺固件)的專用軟件的多個組件(例如,CPU處理器、芯片組、視頻處理器/卡等)。硬編碼或存儲在只讀存儲器(ROM)中的固件的部分視為不可改變,并且因此預期不會隨時間推移而變化。平臺固件包括由計算機系統(tǒng)執(zhí)行的第一組指令。為了保護此重要的指令集免于攻擊或無意破壞,目前的解決方案通過使其成為信任根的一部分來保護該固件的映像。始發(fā)于平臺硬件的信任根經(jīng)由平臺的固件從硬件傳遞到軟件,并由此固件成為信任鏈的關鍵部分。
[0003]為了校正固件的缺陷和/或添加功能,常常有可編程和可更新的平臺固件的另一個部分。使平臺固件安全性折衷的方法一直在開發(fā)。使平臺固件安全性折衷(Compromising)使得大量非常有用的工具能夠攻擊計算機系統(tǒng)。不同于軟件攻擊,安全性折衷的固件難以檢測且對于計算機系統(tǒng)從其中恢復是困難的。安全性折衷的固件多半對于計算機系統(tǒng)的軟件層,包括大多數(shù)反病毒和間諜軟件的工具是不可見的。固件的這種不可見特性使之對于隱匿程序是理想的。隱匿程序是平臺中獲取運行軟件的最高可能特權和最低可見性的緊湊且潛在惡意的掛鉤(hook)。它們的主要功能是為被感染系統(tǒng)上的病毒和蠕蟲提供應用編程接口(API)。
[0004]而且,由于固件的永久性特性,來自惡意固件攻擊的潛在損害遠大于軟件攻擊。例如,系統(tǒng)軟件堆棧上的服務拒絕磁盤操作系統(tǒng)(DOS )攻擊可能導致被破壞的操作系統(tǒng)(OS )攻擊,將需要重新安裝。對比之下,安全性折衷的固件DOS攻擊可能導致完全不可引導和不可使用的平臺。對于此類固件破壞的恢復解決方案可能需要重新安裝固件的備份映像。
[0005]可以在主機端通過操作系統(tǒng)或ring-Ο軟件來保護非易失性存儲器上的內(nèi)容(例如,硬盤驅(qū)動器、固態(tài)驅(qū)動器)。但是,任何ring-Ο惡意軟件能夠獲得非易失性存儲器的訪問權,并由此破壞該非易失性存儲器上的任何數(shù)據(jù),包括固件的備份映像或需要保護的任何軟件。啟用非易失性存儲器密碼來保護非易失性存儲器中的數(shù)據(jù)也易于受到惡意攻擊。例如,當引導時提示用戶輸入非易失性存儲器的密碼時,密碼的內(nèi)容不再受保護而免于外部/內(nèi)部軟件攻擊。此外,非易失性存儲器上的存儲器區(qū)域的分區(qū)并未在硬盤驅(qū)動器本身中提供有意義的數(shù)據(jù)安全性。
[0006]當前的技術對于提供平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲存在非常差的機制(如果有的話)。
【發(fā)明內(nèi)容】
[0007]本發(fā)明實施例涉及提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲和訪問的裝置、系統(tǒng)和方法。[0008]在一個實施例中,該方法包括由處理器在存儲器中提供用于存儲軟件的備份映像的受保護存儲區(qū)域;檢測軟件中的破壞;從受保護存儲區(qū)域訪問該軟件的備份映像;以及使用備份映像更新被破壞的軟件,其中該受保護存儲區(qū)域是存儲器中的預留存儲區(qū)域。
[0009]在一個實施例中,由存儲器控制器將軟件的備份映像存儲在非易失性存儲器的預留存儲區(qū)域中;通過從主機部署私密和公共密鑰與該主機配對,以進入配對且未獲特權的狀態(tài);通過質(zhì)詢響應協(xié)議對主機進行認證以從配對且未獲特權的狀態(tài)進入配對且已獲特權的狀態(tài);以及響應進入配對且已獲特權的狀態(tài),對主機允許軟件的備份映像的安全訪問。
[0010]在一個實施例中,該系統(tǒng)包括主機,主機包括處理器;耦合到主機的顯示器;以及耦合到主機的固態(tài)驅(qū)動器(SSD),該SSD包括:耦合到非易失性存儲器的存儲器控制器,該存儲器控制器可操作以執(zhí)行:將軟件的備份映像存儲在非易失性存儲器的預留存儲區(qū)域中;通過從主機部署私密和公共密鑰與該主機配對,以進入配對且未獲特權的狀態(tài);通過質(zhì)詢響應協(xié)議對主機進行認證以從配對且未獲特權的狀態(tài)進入配對且已獲特權的狀態(tài);以及響應進入配對且已獲特權的狀態(tài),對主機允許軟件的備份映像的安全訪問。
[0011]在一個實施例中,上文論述的方法由計算機可執(zhí)行指令來執(zhí)行。在一個實施例中,該裝置包括包含計算機可執(zhí)行指令的機器可讀存儲介質(zhì),在被執(zhí)行時,所述計算機可執(zhí)行指令促使處理器執(zhí)行上文論述的方法。
[0012]雖然
【發(fā)明內(nèi)容】
是結(jié)合其特定實施例來描述的,但是本領域技術人員根據(jù)前文描述將顯見到此類實施例的許多替代、修改和變化。本發(fā)明的實施例理應涵蓋所有此類替代、修改和變化視為落在所附權利要求的廣義范圍內(nèi)。
【專利附圖】
【附圖說明】
[0013]通過下文給出的詳細描述以及參考本發(fā)明多種實施例的附圖,將更全面地理解本發(fā)明的實施例,但是,這不應該視為將本發(fā)明限于這些特定的實施例,而僅出于解釋和理解目的。
[0014]圖1是根據(jù)本發(fā)明的一個實施例的高層系統(tǒng),其包括耦合到非易失性存儲器的主機,該非易失性存儲器可操作以提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲和訪問。
[0015]圖2是根據(jù)本發(fā)明的一個實施例的高層系統(tǒng),其示出非易失性存儲器中的受保護存儲的組件。
[0016]圖3是根據(jù)本發(fā)明的一個實施例的表,其示出用于非易失性存儲器中的受保護存儲的操作模式。
[0017]圖4是根據(jù)本發(fā)明的一個實施例的高層流程圖,其在用于非易失性存儲器的受保護存儲的工作模式之間的轉(zhuǎn)換。
[0018]圖5A是根據(jù)本發(fā)明的一個實施例的由主機的處理器執(zhí)行以提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲的方法。
[0019]圖5B是根據(jù)本發(fā)明的一個實施例的用于從受保護存儲區(qū)域訪問備份映像的方法。
[0020]圖5C是根據(jù)本發(fā)明的一個實施例的用于主機和具有受保護存儲的非易失性存儲器的互相認證的方法。[0021]圖?是根據(jù)本發(fā)明的一個實施例的用于從非易失性存儲器的配對且已獲特權的狀態(tài)退出到配對且未獲特權的狀態(tài)的方法。
[0022]圖6A是根據(jù)本發(fā)明的一個實施例的由非易失性存儲器的處理器/控制器執(zhí)行以提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲和訪問的方法。
[0023]圖6B是根據(jù)本發(fā)明的一個實施例的由非易失性存儲器的處理器/控制器執(zhí)行用于主機和具有受保護存儲的非易失性存儲器的互相認證的方法。
[0024]圖7是根據(jù)本發(fā)明的一個實施例的系統(tǒng)級示意圖,其包括耦合到固態(tài)驅(qū)動器(SSD)的主機,該固態(tài)驅(qū)動器(SSD)可操作以提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲。
【具體實施方式】
[0025]本發(fā)明實施例涉及提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲和訪問的裝置、系統(tǒng)和方法。在一個實施例中,重復使用對存儲器中的記錄的讀和寫的現(xiàn)有命令和現(xiàn)有存儲器結(jié)構(也稱為記錄或存儲器空間)來提供對非易失性存儲器,例如固態(tài)驅(qū)動器(SSD)、硬盤驅(qū)動器(HDD)等的安全訪問。在一個實施例中,將附加安全性層置于SDD常規(guī)工作層之上,以提供對非易失性存儲器的受保護記錄/區(qū)域的排他性操作模式。在一個實施例中,HDD的非易失性存儲器是磁介質(zhì)。
[0026]在一個實施例中,該方法包括由主機中的處理器在存儲器中提供用于存儲軟件的備份映像的受保護存儲區(qū)域;檢測軟件中的破壞;從受保護存儲區(qū)域訪問該軟件的備份映像;以及使用備份映像更新被破壞的軟件,其中該存儲區(qū)域是存儲器中的預留存儲區(qū)域。在一個實施例中,存儲器的預留存儲區(qū)域是存儲器的供應商相關存儲區(qū)域。
[0027]在一個實施例中,該方法包括由SSD中的存儲器控制器將軟件的備份映像存儲在非易失性存儲器的預留供應商相關存儲區(qū)域中;通過從主機部署私密和公共密鑰與該主機配對,以進入配對且未獲特權的狀態(tài);通過質(zhì)詢響應協(xié)議對主機進行認證以從配對且未獲特權的狀態(tài)進入配對且已獲特權的狀態(tài);以及響應進入配對且已獲特權的狀態(tài),對主機允許軟件的備份映像的安全訪問。
[0028]術語“部署”在本文是指由一個組件(主機處理器)將密鑰材料(例如,公共密鑰、私用密鑰、私密密鑰)賦予另一個組件(例如,HDD、SSD或任何其他非易失性存儲器或包括非易失性存儲器的組件),以使其他組件能夠訪問該另一個組件。
[0029]本文論述的實施例的技術效果用于提供對非易失性存儲器中的備份固件或任何類型的數(shù)據(jù)(例如,操作系統(tǒng)二進制、應用、最終用戶數(shù)據(jù)等)的安全訪問以及保護對這些數(shù)據(jù)或備份固件的訪問(只讀、只寫或其他特權)。
[0030]在下文描述中,論述大量細節(jié),以便更透徹地解釋本發(fā)明的實施例。但是對于本領域人員來說,將顯見到本發(fā)明的實施例可以在沒有這些特定細節(jié)的一些的情況下實施。在其他情況中,以框圖形式示出公知的結(jié)構和裝置,而沒有進行詳細示出,以避免妨礙對本發(fā)明實施例的理解。
[0031]注意,在實施例的對應附圖中,信號以直線表示。一些直線可能較粗,以指示更多組成信號的路徑,和/或在一端或多個端具有箭頭,以指示主信息流方向。此類指示無意構成限制。相反,將這些直線與一個或多個示范實施例結(jié)合使用以便有助于更容易地理解電路或邏輯單元。按設計要求或偏好所指示的,任何表示的信號實際可以包括可以按任一方向行進的一個或多個信號,并且可以利用任何適合類型的信號方案來實現(xiàn)。
[0032]在下文描述和權利要求中,可能使用到術語“耦合”以及其派生。術語“耦合”本文是指處于(以物理、電、磁、光等方式)直接接觸的兩個或更多個元件。術語“耦合”在本文還可以是指彼此未直接接觸但是仍彼此協(xié)作或交互的兩個或更多個元件。
[0033]正如本文使用的,除非另行指定,否則使用序數(shù)形容詞“第一”、“第二”、“第三”等來描述共同的對象僅僅表示指代相似對象的不同實例,并且無意要暗示如此描述的對象必須在時間上、空間上、按評級或按任何其他方式處于給定的次序中。
[0034]術語“公共/私用密鑰”在本文描述用于公共密鑰密碼加密的一組加密密鑰。密鑰對構成“公共密鑰”和“私用密鑰”??梢允褂妹荑€對來進行加密,在此情況中,使用公共密鑰來加密數(shù)據(jù),以及使用私用密鑰來將該數(shù)據(jù)解密。還可以將密鑰對用于數(shù)字簽名,在此情況中,使用私用密鑰來對消息簽名,以及使用公共密鑰來驗證該消息。
[0035]正如本文所使用的,“公共密鑰”是密鑰對的公共半部分。在其他用途中,可以使用公共密鑰來將數(shù)據(jù)加密以確保它僅可以被擁有對應的私用密鑰的實體解密,或可以使用公共密鑰來驗證擁有私用密鑰的實體創(chuàng)建的簽名。正如本文所使用的,“私用密鑰”是密鑰對的私用或私密半部分。在其他用途中,可以使用私用密鑰來將已利用對應公共密鑰加密的數(shù)據(jù)解密,或可以使用私用密鑰以將項目進行數(shù)字“簽署”。
[0036]術語“私密密鑰”在本文中是指對稱加密方案中使用的一組位(與非對稱或公共密鑰密碼加密相比),即,對于將明文消息加密成其對應的加密文本,以及將該加密文本解密成原始明文消息使用相同的密鑰。私密密鑰在參與加密的消息交換的各方之間共享。
[0037]圖1是根據(jù)本發(fā)明的一個實施例的高層系統(tǒng)100,其包括耦合到一個或多個非易失性存儲器的主機101,該一個或多個非易失性存儲器可操作以提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲。在一個實施例中,該非易失性存儲器是SSD130的一部分。在一個實施例中,該非易失性存儲器是服務器150的一部分。在一個實施例中,該非易失性存儲器是相變存儲器(PCM)、堆棧式PCM (PCMS,也會稱為PCM和開關)、只讀存儲器(ROM)、電可擦寫可編程只讀存儲器(EEPROM)或任何其他類型的非易失性存儲器器件。在一個實施例中,該非易失性存儲器是移動驅(qū)動器,例如通用串行總線(USB)存儲棒140、閃存卡等。在一個實施例中,該非易失性存儲器是HDD的一部分。
[0038]在如下的實施例中,描述SSD 130與主機101之間的安全訪問的模式。雖然本文中是參考SSD來描述這些實施例的,但是這些實施例可應用于具有非易失性存儲介質(zhì)的任何組件,如HDD。在一個實施例中,本文論述的過程被封裝為HDD的固件更新。
[0039]在一個實施例中,主機101包括封裝190,封裝190經(jīng)由總線180在工作上耦合到非易失性存儲器(其是SSD 130的一部分)。在一個實施例中,總線180串行高級技術連接(SATA)輸入輸出(I/O)總線。在一個實施例中,總線180是串行連接的小系統(tǒng)計算機(SAS)輸入輸出(I/O)。在一個實施例中,可以將其他類型的總線(例如,通用串行總線(USB)、外設互連Express (PCI Express))用于總線180而不改變本文論述的實施例的本質(zhì)。
[0040]在一個實施例中,封裝190包括耦合到高速緩存115和受信源120的處理器(CPU)110。在一個實施例中,受信源120是處理器安全存儲(PSS),處理器安全存儲(PSS)存儲處理器可經(jīng)由安全接口訪問的公共、私用和私密密鑰。在一個實施例中,受信源120是處理器110的私用存儲器,其中該私用存儲器配置成存儲處理器110和/或系統(tǒng)100的信任根。在一個實施例中,受信源120駐留在封裝190外部。在一個實施例中,受信源120是包括非易失性隨機存取存儲器(NVRAM)的射頻識別標簽(RFID)。在一個實施例中,該NVRAM是NAND閃存存儲器。在一個實施例中,該NVRAM是NOR閃存存儲器。在其他實施例中,可以在RFID標簽120中使用其他類型的非易失性存儲器。在一個實施例中,公共和/或私密密鑰被存儲在NVRAM中。在一個實施例中,通過密碼加密來保護該公共和/或私密密鑰。在一個實施例中,處理器110經(jīng)由集成電路間(I2C)接口或RF接口從受信源120檢索私密密鑰。
[0041]在一個實施例中,主機101還包括基本輸入/輸出系統(tǒng)(BIOS)芯片125,BIOS芯片125包含BIOS映像。BIOS映像是平臺固件的示例,其映像被存儲在作為103的一部分的非易失性存儲器的專用存儲區(qū)域130a中。在一個實施例中,主機101還包括芯片組處理器170,芯片組處理器170與包括SSD 130、USB設備140、服務器150、顯示器(未示出)等的多個外圍設備通信。在一個實施例中,該主機包括操作系統(tǒng)160。
[0042]在一個實施例中,130、140和150中的非易失性存儲器分別包括專用存儲區(qū)域130a、140a和150a。在一個實施例中,SSD 130中的專用/預留存儲區(qū)域130a是供應商相關區(qū)域。本文論述的實施例描述通過SATA命令(例如,READ LOG EXT、READ LOG DMA EXT、WRITE LOG EXT和WRITE LOG DMA EXT,如美國國家標準協(xié)會在T13/2015-D工作草案項目,INCITS 4了4/^了么?1命令集-2,修訂版2,2009年8月3日發(fā)布中所描述的)。在其他實施例中,可以將其他命令用于主機101對非易失性存儲器204的安全訪問。本文論述的實施例可以用于提供對非易失性存儲器中的任何預留區(qū)域的安全訪問。正如上文提到的,使用SSD130作為示例實施例,以及本文描述的概念可以用于具有非易失性存儲器的其他類型的海量存儲設備(例如,HDD、存儲棒、CD、DVD等)。[0043]圖2是示出根據(jù)本發(fā)明一個實施例的高層系統(tǒng)200,其示出非易失性存儲器204中的受保護存儲的組件。在一個實施例中,SSD 130包括存儲器控制器201。在一個實施例中,存儲器控制器201是包括耦合到存儲器控制器201的處理器的芯片上系統(tǒng)(S0C)的一部分。在一個實施例中,SOC包括其他組件,例如無線天線、存儲器等。在一個實施例中,SSD130被置于個人計算機、平板電腦、智能電話(也稱為智能設備)等內(nèi)部。
[0044]在一個實施例中,存儲器控制器201耦合到非易失性存儲器204,非易失性存儲器204具有預留供應商相關存儲區(qū)域205i_N。每個預留供應商相關區(qū)域包括用于存儲軟件/固件映像和關聯(lián)的有效位206和擦寫位207的區(qū)域。在一個實施例中,SSD 130包括公共密鑰202和私用密鑰203用于與主機101互相認證一獲取對受保護區(qū)域205^206和207的訪問權。受保護區(qū)域205^206和207被包含在SSD 130的受保護區(qū)域130a中。有效位206和擦寫位207參考工作模式來論述。
[0045]圖3是示出根據(jù)本發(fā)明一個實施例的表300,其示出非易失性存儲器的受保護存儲的工作模式。圖3參考圖1-2來描述。在一個實施例中,描述三種模式以提供對預留供應商相關存儲區(qū)域205i的安全訪問。這三種模式按二維分組。第一維包括取決于SSD 130當前是否部署有特定密鑰材料的模式,即,已獲特權的模式302。第二維包括確定SSD 130與主機101認證的模式,即,配對模式301。本文中的術語“配對”是指兩個設備之間用于互相認證的通信連接。配對是通過部署相同的密鑰材料以將主機101與SSD 130鏈接,以便主機101和SSD 130可以使用該密鑰材料彼此認證的方式。[0046] 在一個實施例中,三種模式是有效的,它們是:未配對模式305、配對306但未獲特權303的模式、以及配對306但已獲特權304的模式。在其他實施例中,可以添加多于三種模式以便增強在SSD的操作層上添加的的安全性層。在一個實施例中,僅三種模式是有效的。
[0047]在未配對模式305中,SSD 130未與主機101配對。未配對模式305不是已獲特權的模式。在一個實施例中,當SSD 130和主機101處于未配對模式305中時,它們無法彼此通信以訪問預留供應商相關區(qū)域205^在一個實施例中,未配對模式305是舊有模式。在一個實施例中,在未配對模式305中,允許對映像205^的READ LOG EXT和READ LOG DMAEXT命令。在一個實施例中,對映像205^的WRITE LOG EXT和WRITE LOG DMA EXT命令僅在有效位206為清除的情況下才被允許。
[0048]配對306和未配對303組合模式是指SSD 130和主機101具有共有的私密以彼此認證時的模式。配對306且已獲特權304的組合模式是指SSD 130與主機101互相認證以及SSD 130與主機101之間的通信的特殊命令未鎖定時的模式,即,該特殊命令在此模式下有效。配對306且已獲特權304的模式中允許的操作的示例包括:創(chuàng)建、刪除或修改復制SSD 130所存儲的平臺固件映像。在一個實施例中,這些示范操作只能在配對306且已獲特權304的模式下執(zhí)行,以便防止惡意軟件執(zhí)行這些示范操作并使固件映像的副本的安全性受損。在一個實施例中,未配對305但已獲特權304的組合模式是安全SSD 130訪問的無效模式。
[0049]圖4是根據(jù)本發(fā)明一個號實施例的高層流程圖400,其示出非易失性存儲器的受保護存儲的工作模式之間的轉(zhuǎn)換。
[0050]雖然流程圖400中的框是按特定順序示出的,但是這些動作的順序可以被修改。因此,可以按不同順序來執(zhí)行圖示的實施例,以及一些動作/框可以并行地執(zhí)行。作為附加,在提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲和訪問的多種實施例中可以省略一個或多個動作/框。圖4的流程圖是參考圖1-3的實施例來圖示的。
[0051]在一個實施例中,該安全訪問通過初始化SSD 130與主機101 (可互換地稱為處理器110)之間的配對403過程開始。在一個實施例中,SSD 130與主機101的成功配對促使從未配對模式305轉(zhuǎn)換到配對且未獲特權的模式401。在一個實施例中,配對過程403由主機101將來自受信源120的密鑰材料部署到SSD 130來執(zhí)行。
[0052]在一個實施例中,認證過程404是允許SSD 130從配對且未獲特權的模式401進入到配對且已獲特權的狀態(tài)402的模式交易。在一個實施例中,認證基于來自主機101的請求而被發(fā)起。在一個實施例中,SSD 130使用其密鑰材料通過加密協(xié)議(例如,202和203)對主機101進行認證。在一個實施例中,當互相認證成功時,主機101對受保護記錄205^206和207具有完全訪問權。
[0053]在一個實施例中,退出過程405是允許SSD 130離開配對且已獲特權的狀態(tài)402而進入配對且未獲特權的狀態(tài)401的模式交易。在一個實施例中,在配對且未獲特權的狀態(tài)401中,主機101能夠讀取受保護記錄205^,但是不能修改它們。
[0054]在一個實施例中,取消部署過程406是允許SSD 130與主機101未配對,并從配對且未獲特權的狀態(tài)401返回到其初始狀態(tài),即未配對狀態(tài)305。在一個實施例中,取消部署過程406通過質(zhì)詢響應協(xié)議來實現(xiàn)。在一個實施例中,質(zhì)詢響應協(xié)議包括公共密鑰密碼加密和使用來自受信源120的部署的密鑰材料和/或密鑰材料202和203。在一個實施例中,使用公共密鑰202驗證取消部署的許可證。例如,如果來自信息技術(IT)部門的人員期望在沒有與SSD已配對的私密密鑰的情況下在另一個系統(tǒng)中安裝該SSD,則此人使用公共密鑰202來驗證取消部署許可證。
[0055]在一個實施例中,未配對過程407是允許SSD 130直接將配對且已獲特權的狀態(tài)402退出到未配對狀態(tài)305。在一個實施例中,主機101檢測密鑰材料202和203而不經(jīng)過取消部署過程406。
[0056]在一個實施例中,重新部署過程408是允許SSD 130獲得更新的密鑰材料202和203的模式轉(zhuǎn)換。在此類實施例中,SSD 130保持在配對且已獲特權的狀態(tài)402中。在一個實施例中,主機101在預定時間逝去(例如,24小時)之后重新部署密鑰材料。
[0057]再次參考圖2,在一個實施例中,存儲器記錄201^中每一個具有對應的有效位206和擦寫位207。在一個實施例中,存儲器記錄201i_N在除了有效位206啟用為I以指示存儲器記錄201i_N被鎖定時以外的任何模式(305、401、402)中均是可寫的。在一個實施例中,有效位206只能在配對且已獲特權的模式402中進行修改。
[0058]在一個實施例中,主機101通過對密鑰材料202和203和/或受信源120中的密鑰材料的訪問執(zhí)行專用軟件來管理SSD 130上的備份映像205”在一個實施例中,該專用軟件在最終用戶接口上啟動(例如,通過按下主機101的電源按鈕預定時間(例如2秒))。在一個實施例中,該專用軟件獲授權以特殊處理器模式在最終用戶接口上啟動。在一個實施例中,該特殊處理器模式包括虛擬機監(jiān)視器(VMM)、安全飛地、系統(tǒng)管理模式(SMM)。SSM是處理器能夠經(jīng)由BIOS執(zhí)行平臺相關任務的特殊模式。在此類實施例中,主機101能夠進入SSD 130的配對且已獲特權的模式420。在一個實施例中,在配對且已獲特權的模式402中,主機101可操作以檢查存儲器記錄205i_N的一個或多個存儲器記錄中軟件映像的有效性,然后對于它要鎖定任何可寫訪問的存儲器將有效位206設為I。在此類實施例中,保護與所設置的有效位206對應的軟件映像(一個或多個存儲器記錄205i_N)免于破壞的任何可能性,直到認證的主機101將有效位206清除為O為止。
[0059]在一個實施例中,擦寫位207是在任何模式(305、401和402)中可寫的。在一個實施例中,擦寫位207用于撤銷存儲器垃圾205i_N的一個或多個存儲器記錄中計算機平臺不再需要的受保護記錄。例如,主機101可能將平臺組件的新固件映像編程到SSD 130有效位206被清除,即設為O的存儲器記錄205i_N的一個或多個存儲器記錄中,并通過將擦寫位207設為I來標記存儲器記錄205^的一個或多個存儲器記錄中的固件映像的先前版本。
[0060]在一個實施例中,一旦主機101認證到SSD 130,即,在配對且已獲特權的模式402中,主機101可以讀取存儲器記錄205i_N的對應一個或多個存儲器記錄的擦寫位207,并且確定是否要將與該存 儲器記錄對應的有效位206清除為I。
[0061]雖然參考圖5A-D和圖6A-B的流程圖中的框是按特定順序示出的,但是這些動作的順序可以修改。因此,圖示的實施例可以按不同的順序來執(zhí)行,并且一些動作/框可以并行地執(zhí)行。作為附加,在提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲和訪問的多種實施例中可以省略一個或多個動作/框。圖5A-D和圖6A-B的流程圖是參考圖1-4的實施例來圖示的。
[0062]圖5A是根據(jù)本發(fā)明的一個實施例的由主機101的處理器110執(zhí)行以提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲的方法500。
[0063]在框501處,主機101的處理器110在存儲器204中提供受保護存儲區(qū)域以用于存儲軟件的備份映像205”在框502處,處理器110檢測到任何惡意軟件或病毒在軟件中導致的破壞。在框503處,處理器110開始從非易失性存儲器204的受保護存儲區(qū)域130a訪問軟件的備份映像205i。在框504處,處理器110以備份映像更新破壞的軟件,其中存儲區(qū)域是存儲器中的預留供應商相關存儲區(qū)域130a。
[0064]圖5B是根據(jù)本發(fā)明的一個實施例的用于從受保護存儲區(qū)域130a訪問503備份映像205i的方法520。在下文流程圖中,主機101和處理器110是可互換的。
[0065]在框521處,處理器標識SSD 130是否與處理器110(或主機101)配對。在框522處,作出有關配對的狀態(tài)的確定。如果SSD 130與處理器110未配對,則方法520進行到框523,否則,方法520繼續(xù)標識是否發(fā)生配對。在框523處,處理器110通過向SSD 130發(fā)送命令將密鑰材料從受信源120發(fā)送到SSD 130來與SSD 130配對。
[0066]在一個實施例中,密鑰材料是存儲在存儲器控制器201中的專用位置中的私密密鑰203。在一個實施例中,私密密鑰203被存儲在非易失性存儲器204中的專用位置中。在一個實施例中,私密密鑰是128位密鑰。在一個實施例中,處理器110從SSD 130接收其接收到私密密鑰的確認。將私密密鑰從受信源120傳遞到SSD 130也稱為私密密鑰部署。
[0067]在一個實施例中,處理器110將公共密鑰從受信源120發(fā)送到SSD 130。在一個實施例中,公共密鑰被存儲在存儲器控制器201中的專用位置中。在一個實施例中,在取消部署交易中使用公共密鑰,取消部署交易能夠由例如服務提供商(ISP)在遠程執(zhí)行。在一個實施例中,處理器110從SSD 130接收其接收到公共密鑰的確認。將公共密鑰從受信源120傳遞到SSD 130也稱為公共密鑰部署。SSD 130響應成功的配對403進入配對且未獲特權的狀態(tài)。
[0068]在框524處,最初處于配對且未獲特權的狀態(tài)/模式,處理器110通過認證404存儲器進入與SSD 130配對且已獲特權的狀態(tài)/模式。在一個實施例中,處理器110向SSD130發(fā)送觸發(fā)互相認證的質(zhì)詢響應協(xié)議的命令。在一個實施例中,SSD 130響應SSD 130從處理器110接收到啟動用于互相認證的質(zhì)詢響應協(xié)議-第一認證的命令,對處理器130進行認證。在一個實施例中,由處理器110響應SSD 130從處理器110接收到啟動用于互相認證的質(zhì)詢響應協(xié)議-第二認證的命令,對對SSD 130進行認證。在一個實施例中,第一和第二認證均是順序地/依次地執(zhí)行。在一個實施例中,第一認證在第二認證之前執(zhí)行。在另一個實施例中,第二認證在第一認證之前執(zhí)行。在一個實施例中,第一和第二認證均是并行地,即同時地執(zhí)行。
[0069]圖5C是根據(jù)本發(fā)明的一個實施例的用于主機和具有受保護存儲的非易失性存儲器的互相認證的方法流程圖530。
[0070]在框531處,處理器110從存儲器接收第一加密的隨機數(shù),第一加密的隨機數(shù)利用密鑰加密。在一個實施例中,第一加密的隨機數(shù)是SSD 130為處理器110生成的質(zhì)詢。處理器110然后將生成對該質(zhì)詢的響應。在一個實施例中,第一隨機數(shù)的加密使用密碼加密執(zhí)行。在一個實施例中,密碼加密利用高級加密標準(AES)和與處理器配對403中使用的私密密鑰203來執(zhí)行。在其他實施例中,可以使用其他形式的密碼加密,例如公共密鑰加密。在一個實施例中,第一隨機數(shù)是128位隨機數(shù),SSD 130基于AES執(zhí)行加密以從AES加密生成128位加密的結(jié)果。在其他實施例中,可以使用其他大小的隨機數(shù)。
[0071]在框532處,處理器110將第一加密的隨機數(shù)(質(zhì)詢)解密以生成第一解密的消息(響應)。在一個實施例中,處理器110利用來自受信源120的其私密密鑰將第一加密的隨機數(shù)以生成第一解密的消息(響應)。
[0072]在框533處,處理器110將第一解密的消息發(fā)送到SSD 130,其中SSD 130驗證來自處理器Iio的第一解密的消息以對處理器110進行認證。在一個實施例中,如果SSD 130驗證第一解密的消息與第一隨機數(shù)相同,則SSD 130斷言它已對處理器110進行認證。在一個實施例中,SSD 130向處理器110發(fā)送確認消息:它已成功地驗證第一解密的消息,并由此質(zhì)詢響應協(xié)議成功。在此類實施例中,SSD 130進入配對且已獲特權的狀態(tài)402???31-533對應于參考圖5B論述的第一認證。
[0073]再次參考圖5C,在框534處,處理器110向SSD 130發(fā)送第二加密的隨機數(shù),第二加密的隨機數(shù)(質(zhì)詢2)通過利用密鑰將第二隨機數(shù)加密來生成。在一個實施例中,該密鑰是來自受信源120的私密密鑰。在一個實施例中,該加密通過密碼加密來執(zhí)行。在一個實施例中,該密碼加密利用基于AES的加密和與SSD 130配對403中使用的來自受信源120的私密密鑰來執(zhí)行。在其他實施例中,可以使用其他形式的密碼加密,例如公共密鑰加密。
[0074]在一個實施例中,第二隨機數(shù)是128位隨機數(shù),處理器110執(zhí)行AES以從AES加密生成128位加密的結(jié)果。在其他實施例中,可以使用其他大小的隨機數(shù)。
[0075]在框535處,處理器110從SSD 130接收第二解密的消息,其中SSD 130通過將第二加密的隨機數(shù)(質(zhì)詢2)解密來生成第二解密的消息(響應2)。在一個實施例中,SSD 130利用其私密密鑰203將第二加密的隨機數(shù)解密。
[0076]在框536處,如果第二解密的消息(響應2)與第二隨機數(shù)匹配,則處理器110向SSD 130發(fā)送確認。在此類實施例中,SSD 130進入配對且已獲特權的狀態(tài)402???34-536對應于參考圖5B論述的第二認證。正如上文提到的,在一個實施例中,第二認證在第一認證之后執(zhí)行。在一個實施例中,僅第一認證足夠進入配對且已獲特權的狀態(tài)402。
[0077]圖是根據(jù)本發(fā)明的一個實施例的用于從非易失性存儲器204的配對且已獲特權的狀態(tài)402退出到405配對且未獲特權的狀態(tài)401的方法流程圖540。在一個實施例中,在框541處,退出405的過程在處理器110向SSD 130發(fā)送關閉安全會話的命令時開始。在框544處,響應發(fā)送到SSD 130的關閉安全會話的命令,SSD 130和處理器110從配對且已獲特權的狀態(tài)402退出,并進入配對且未獲特權的狀態(tài)401。
[0078]在一個實施例中,在框542處,退出405的過程在SSD 130復位時開始。在一個實施例中,在框543處,退出405的過程在鏈接(與處理器110的輸入輸出通信)復位或進入訓練模式時開始。在其他實施例中,當處理器不再需要對存儲器記錄205i_N的安全訪問時,例如,處理器110或計算機平臺的任何組件認識到計算機平臺中發(fā)生安全性破壞時,其他事件可以觸發(fā)退出過程405。
[0079]在一個實施例中,處理器110通過向SSD 130發(fā)送處理器110和SSD 130應該取消配對的命令來啟動取消部署過程406。在一個實施例中,利用另一個機器(例如,服務器)和SSD 130啟動質(zhì)詢響應協(xié)議,以使處理器110和SSD 130能夠遠程安全地取消配對。在此類實施例中,SSD 130從配對且未獲特權的模式401返回到未配對模式305。在一個實施例中,可以在質(zhì)詢響應協(xié)議中,將公共密鑰密碼加密與部署的密鑰材料(例如,202和/或203)結(jié)合來使用。
[0080]在一個實施例中,處理器110或主機101向SSD 130發(fā)送它不再希望保持兩個設備的配對的命令。此過程對應于取消配對過程407。在此類實施例中,SSD 130刪除密鑰材料(例如,202和/或203),并從配對且已獲特權的模式402返回到未配對模式305。
[0081]在一個實施例中,處理器110可能期望與SSD 130重新部署408其密鑰材料。在一個實施例中,處理器110向SSD 130發(fā)送附有來自其受信源120的新密鑰材料的命令,該新密鑰材料將覆蓋SSD 130上的現(xiàn)有密鑰材料(例如,202和/或203)。在此類實施例中,SSD 130處于配對且已獲特權的狀態(tài)402。在一個實施例中,SSD 130利用來自處理器110的新密鑰材料覆蓋密鑰材料(例如,202和/或203),然后向處理器110發(fā)送它已經(jīng)成功地重新部署密鑰的確認消息。在另一個實施例中,SSD 130質(zhì)詢處理器110,以便即使SSD 130處于配對且已獲特權的狀態(tài)402,處理器110通過質(zhì)詢響應協(xié)議向SSD證明處理器110知道該密鑰材料(例如,私密密鑰)。
[0082]圖6A是根據(jù)本發(fā)明的一個實施例的由非易失性存儲器204的存儲器控制器201執(zhí)行以提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲的方法600。圖6A-B的方法是由SSD 130執(zhí)行的方法,并且涵蓋與參考圖5A-D論述的過程相似的過程,只是由SSD 130而非處理器110或主機101來執(zhí)行。所以為了不重復贅述,不再描述所有細節(jié)。
[0083]在框601處,SSD 130的存儲器控制器201將軟件的備份映像存儲在非易失性存儲器204的預留供應商相關存儲區(qū)域205i_N中。在框602處,SSD 130的存儲器控制器201通過從主機101部署私密和公共密鑰與主機101 (對于處理器110可互換地使用)配對403,以進入配對且未獲特權的狀態(tài)401。在框603處,SSD 130的存儲器控制器201通過質(zhì)詢響應協(xié)議對主機101進行認證,以從配對且未獲特權的狀態(tài)401進入配對且已獲特權的狀態(tài)402。在框604處,SSD 130的存儲器控制器201向主機101發(fā)送有關SSD 130與主機101成功認證的確認消息,并響應進入配對且已獲特權的狀態(tài)402允許主機對軟件的備份映像的安全訪問。
[0084]圖6B是根據(jù)本發(fā)明的一個實施例的由非易失性存儲器204的處理器/控制器201執(zhí)行用于主機和具有受保護存儲的非易失性存儲器204 (或SSD 130)的互相認證的方法620???21-623對應于參考圖5A-D論述的第一認證???24-627對應于參考圖5A-D論述的第二認證。
[0085]在框621處,SSD 130的存儲器控制器201向主機101發(fā)送第一加密的隨機數(shù)(質(zhì)詢)。在一個實施例中,利用私密密鑰203將第一隨機數(shù)加密來生成第一加密的隨機數(shù)。在框622處,響應發(fā)送第一加密的隨機數(shù),SSD 130的存儲器控制器201從主機101接收響應,其中主機101通過將第一加密的隨機數(shù)解密來生成響應。在框623處,SSD 130的存儲器控制器201驗證該響應以對主機101進行認證,在驗證響應成功時主機101通過認證。SSD130然后向主機101發(fā)送確認消息。
[0086]在框624處,SSD 130的存儲器控制器201從主機101接收第二加密的隨機數(shù)(質(zhì)詢2)。在一個實施例中,利用來自受信源120的私密密鑰將第二隨機數(shù)加密來生成第二加密的隨機數(shù)。在框625處,SSD 130的存儲器控制器201將第二加密的隨機數(shù)解密以生成解密的消息(響應2)。在框626處,SSD 130的存儲器控制器201將解密的消息發(fā)送到主機101,以用于主機101將解密的消息與第二隨機數(shù)匹配。在框627處,在發(fā)送解密的消息之后,SSD 130的存儲器控制器201從主機101接收確認。
[0087]圖7是根據(jù)本發(fā)明的一個實施例的系統(tǒng)級示意圖,其包括耦合到固態(tài)驅(qū)動器(SSD)的主機,該固態(tài)驅(qū)動器(SSD)可操作以提供用于平臺固件的備份映像或需要保護的任何其他軟件的受保護存儲。
[0088]圖7是根據(jù)本發(fā)明的一個實施例的系統(tǒng)級示意圖,其包括用于刷新非易失性存儲器的處理器和/或存儲器控制器。圖5還包括機器可讀存儲介質(zhì)以執(zhí)行用于執(zhí)行多種實施例的方法的計算機可讀/可執(zhí)行指令。這些計算機可讀/可執(zhí)行指令由處理器(例如,處理器111、存儲器控制器201)來執(zhí)行。實施例的要件還作為用于存儲計算機可執(zhí)行指令(例如用于實現(xiàn)圖5A-D和圖6A-B的流程圖以及描述中論述的其他過程的指令)的機器可讀介質(zhì)來提供。在一個實施例中,SSD 130的存儲器控制器201執(zhí)行的過程駐留在SSD 130的非易失性存儲器中。
[0089]該機器可讀介質(zhì)可以包括但不限于,閃存存儲器、光盤、HDD、SSD、⑶-ROM、DVDROM、RAM、EPROM、EEPROM、磁卡或光卡、或適于存儲電子或計算機可執(zhí)行指令的其他類型的機器可讀介質(zhì)。例如,本發(fā)明的實施例可以作為計算機程序(例如,BIOS)來下載,該計算機程序可以通過數(shù)據(jù)信號的方式經(jīng)由通信鏈路(例如調(diào)制解調(diào)器或網(wǎng)絡連接)從遠程計算機(例如服務器)傳輸?shù)秸埱笥嬎銠C(例如客戶端)。
[0090]在一個實施例中,系統(tǒng)1300包括但不限于桌上型計算機、膝上型計算機、上網(wǎng)本、平板電腦、筆記本計算機、個人數(shù)字助理(PDA)、服務器、工作站、蜂窩電話、移動計算設備、智能電話、因特網(wǎng)電器或任何其他類型的計算設備。在另一個實施例中,系統(tǒng)1300實現(xiàn)本文披露的方法,并且可以是芯片上系統(tǒng)(SOC)系統(tǒng)。
[0091]在一個實施例中,處理器1310具有一個或多個處理核1312和1312N,其中1312N表示處理器1310內(nèi)的第N個處理器核,其中N是正整數(shù)。在一個實施例中,系統(tǒng)1300包括多個處理器,這些處理器包括處理器1310和1305,其中處理器1305具有與處理器1310的邏輯相似的或完全相同的邏輯。在一個實施例中,系統(tǒng)1300包括多個處理器,這些處理器包括處理器1310和1305,以使處理器1305具有完全獨立于處理器1310的邏輯的邏輯。在此類實施例中,多封裝系統(tǒng)1300是多樣性多封裝系統(tǒng),因為處理器1305和1310具有不同的邏輯單元。在一個實施例中,處理核1312包括但不限于用于提取指令的預提取邏輯、用于將指令解碼的解碼邏輯、用于執(zhí)行指令的執(zhí)行邏輯等。在一個實施例中,處理器1310具有用于緩存系統(tǒng)1300的指令和/或數(shù)據(jù)的高速緩存存儲器1316。在本發(fā)明的另一個實施例中,高速緩存存儲器1316包括一級、二級和三級高速緩存存儲器,或處理器1310內(nèi)任何其他配置的高速緩存存儲器。
[0092]在一個實施例中,處理器1310包括存儲器控制集線器(MCH) 1314,其可操作以執(zhí)行使得處理器1310能夠訪問存儲器1330以及與之通信的功能,存儲器1330包括易失性存儲器1332和/或非易失性存儲器1334。在一個實施例中,將存儲器控制集線器(MCH)1314設在處理器1310外部作為獨立的集成電路。
[0093]在一個實施例中,處理器1310可操作以與存儲器1330和芯片組1320通信。在一個實施例中,處理器1310 (與圖1的110相同)和芯片組1320是圖1的主機101的一部分。在一個實施例中,芯片組1320 (與圖1的170相同)經(jīng)由SATA總線1350 (與圖1的總線180相同)耦合到SSD 1380 (與圖1的130相同)。在一個實施例中,SSD 1380包括用于存儲計算機可執(zhí)行指令的機器可讀介質(zhì),這些計算機可執(zhí)行指令用于實現(xiàn)圖6A-B的流程圖以及描述中論述要由SSD 130的存儲器控制器201執(zhí)行的其他過程。在此類實施例中,當SSD 1380通電時,SSD 1380中的處理器執(zhí)行這些計算機可執(zhí)行指令。
[0094]在一個實施例中,處理器1310還耦合到無線天線1378以與配置成傳送和/或接收無線信號的任何設備通信。在一個實施例中,無線天線接口 1378根據(jù)但不限于電氣和電子工程師協(xié)會(IEEE) 802.11標準以及其相關的系列、HomePlug AV (HPAV)、超寬帶(UWB)、藍牙、WiMAX或任何形式的無線通信協(xié)議來工作。
[0095]在一個實施例中,易失性存儲器1332包括但不限于同步動態(tài)隨機存取存儲器(SDRAM)、動態(tài)隨機存取存儲器(DRAM)、RAMBUS動態(tài)隨機存取存儲器(RDRAM)或任何其他類型的隨機存取存儲器器件。非易失性存儲器1334包括但不限于,閃存存儲器(例如,NAND,N0R)、相變存儲器(PCM)、只讀存儲器(ROM)、電可擦寫可編程只讀存儲器(EEPROM)或任何其他類型的非易失性存儲器器件。
[0096]存儲器1330存儲信息和處理器1310要執(zhí)行的指令。在一個實施例中,處理器1310執(zhí)行指令時,存儲器1330還可以存儲臨時變量或其他中間信息。在一個實施例中,芯片組1320經(jīng)由點到點(PtP或P-P)接口 1317和1322與處理器1310連接。在一個實施例中,芯片組1320使處理器1310連接到系統(tǒng)1300中的其他模塊。在本發(fā)明的一個實施例中,接口1317 和 1322 根據(jù)如 INTEL? QuickPath Interconnect (QPI)等的 PtP 通信協(xié)議工作。
[0097]在一個實施例中,芯片組1320可操作以與處理器1310、1305、顯示設備1340以及其他設備1372、1376、1374、1360、1362、1364、1366、1377等通信。在一個實施例中,芯片組1320還耦合到無線天線1378以與配置成傳送和/或接收無線信號的任何設備通信。
[0098]在一個實施例中,芯片組(1320)經(jīng)由接口 1326連接到顯示設備1340。在一個實施例中,顯示器1340包括但不限于液晶顯示器(IXD)、等離子、陰極射線管(CRT)顯示器或任何其他形式的可視顯示設備。在本發(fā)明的一個實施例中,將處理器1310和芯片組1320合并到單個SOC中。此外,芯片組1320連接到一個或多個總線1350和1355,一個或多個總線1350和1355將多種模塊1374、1360、1362、1364和1366互連。在一個實施例中,如果總線速度或通信協(xié)議中存在不匹配,則總線1350和1355可以經(jīng)由總線橋1372互連在一起。在一個實施例中,芯片組1320與但不限于非易失性存儲器1360、海量存儲設備1362、鍵盤/鼠標1364和網(wǎng)絡接口 1366耦合,以及經(jīng)由接口 1324與智能TV 1376、消費電子產(chǎn)品1377
坐規(guī)A寸不內(nèi)口 O
[0099]在一個實施例中,海量存儲設備1362包括但不限于固態(tài)驅(qū)動器、硬盤驅(qū)動器、通用串行總線閃存存儲器驅(qū)動器或任何其他形式的計算機數(shù)據(jù)存儲介質(zhì)。在一個實施例中,網(wǎng)絡接口 1366通過任何類型的公知網(wǎng)絡接口標準來實現(xiàn),包括但不限于,以太網(wǎng)接口、通用串行總線(USB)接口、外圍組件互連(PCI) Express接口、無線接口和/或任何其他適合類型的接口。在一個實施例中,該無線接口 1378根據(jù)但不限于IEEE 802.11標準以及其相關的系列、HomePlug AV (HPAV)、超寬帶(UWB)、藍牙、WiMAX或任何形式的無線通信協(xié)議來工作。
[0100]雖然圖5所示的模塊示出為系統(tǒng)1300內(nèi)的分開框,但是這些框的其中一些執(zhí)行的功能可以集成在單個半導體電路內(nèi)或可以使用兩個或更多個分開的集成電路來實現(xiàn)。例如,雖然高速緩存存儲器1316示出為處理器1310內(nèi)的分開框,但是高速緩存存儲器1316能夠分別并入到處理器核1312中。在一個實施例中,在本發(fā)明的另一個實施例中,系統(tǒng)1300可以包括多于一個處理器/處理核。
[0101]說明書中對“一個實施例”、“實施例”或“一些實施例”的引述表示結(jié)合該實施例描述的一個特定特征、結(jié)構或特點被包含在至少一些實施例中,但是不一定包含在所有實施例中。不同位置出現(xiàn)“一個實施例”或“一些實施例”不一定全部指相同的實施例。如果說明書陳述“可以”、“可能”或“能夠”包含組件、特征、結(jié)構或特點,則不一定要包含該特定組件、特征、結(jié)構或特點。如果說明書或權利要求涉及“一個”元件,則不表示存在這些元件的僅其中一個。如果說明書或權利要求涉及“一個附加”元件,則不排除存在多于一個該附加元件。
[0102]雖然本發(fā)明是結(jié)合其特定實施例來描述的,但是本領域技術人員根據(jù)前文描述將顯見到此類實施例的許多替代、修改和變化。本發(fā)明的實施例理應涵蓋所有此類替代、修改和變化視為落在所附權利要求的廣義范圍內(nèi)。
【權利要求】
1.一種方法,包括: 由處理器在存儲器中提供用于存儲軟件的備份映像的受保護存儲區(qū)域; 檢測所述軟件中的破壞; 從所述受保護存儲區(qū)域訪問所述軟件的所述備份映像;以及 使用所述備份映像更新被破壞的軟件,其中所述受保護存儲區(qū)域是所述存儲器中的預留存儲區(qū)域。
2.如權利要求1所述的方法,其中從所述受保護存儲區(qū)域訪問所述軟件的所述備份映像包括: 標識所述存儲器是否與所述處理器配對;以及 響應標識所述存儲器未與所述處理器配對,通過向所述存儲器發(fā)送以在所述存儲器的專用區(qū)域中寫入密鑰的命令來與所述存儲器配對,其中與所述存儲器的成功配對促使所述存儲器進入配對且未獲特權的狀態(tài)。
3.如權利要求2所述的方法,還包括響應配對,通過在所述配對且未獲特權的狀態(tài)中對所述存儲器進行認證來進入與所述存儲器的配對且已獲特權的狀態(tài)。
4.如權利要求3所述的方法,其中對配對的存儲器進行認證包括,向所述存儲器發(fā)送命令,所述命令觸發(fā)與所 述存儲器和所述處理器的質(zhì)詢響應協(xié)議以進行所述存儲器和所述處理器的互相認證。
5.如權利要求4所述的方法,其中互相認證包括: 從所述存儲器接收第一加密的隨機數(shù),所述第一加密的隨機數(shù)利用所述密鑰加密; 將所述第一加密的隨機數(shù)解密以生成第一解密的消息;以及 將所述第一解密的消息發(fā)送到所述存儲器; 其中所述存儲器驗證來自所述主機的所述第一解密的消息以對所述主機進行認證。
6.如權利要求4所述的方法,其中認證還包括: 向所述存儲器發(fā)送第二加密的隨機數(shù),所述第二加密的隨機數(shù)通過利用所述密鑰將第二隨機數(shù)加密而生成; 從所述存儲器接收第二解密的消息,其中所述存儲器通過將所述第二加密的隨機數(shù)解密來生成所述第二解密的消息;以及 如果所述第二解密的消息與所述第二隨機數(shù)匹配,則向所述存儲器發(fā)送確認。
7.如權利要求3所述的方法,還包括通過向所述存儲器發(fā)送關閉安全會話的命令以從所述存儲器的所述配對且已獲特權的狀態(tài)退出到所述配對且未獲特權的狀態(tài)。
8.如權利要求2所述的方法,還包括通過向所述存儲器發(fā)送觸發(fā)與另一個機器的質(zhì)詢響應協(xié)議的命令來將所述存儲器從所述存儲器的所述配對且未獲特權的狀態(tài)取消部署以到未配對狀態(tài)。
9.如權利要求3所述的方法,還包括通過向所述存儲器發(fā)送刪除所述密鑰的命令來將所述存儲器與所述主機取消配對,其中在所述取消配對之前,所述存儲器處于所述配對且已獲特權的狀態(tài)中。
10.如權利要求3所述的方法,還包括通過向所述存儲器發(fā)送覆蓋所述存儲器中存儲的所述密鑰的命令以將所述存儲器重新部署回所述配對且已獲特權的狀態(tài)。
11.如權利要求1所述的方法,其中所述軟件的所述備份映像包含計算機平臺的一個或多個組件的軟件的備份映像,以及其中所述存儲器是非易失性存儲器以及是固態(tài)驅(qū)動器(SSD)的一部分。
12.—種方法,包括: 由存儲器控制器將軟件的備份映像存儲在非易失性存儲器的預留存儲區(qū)域中; 通過從主機部署私密和公共密鑰與該主機配對,以進入配對且未獲特權的狀態(tài);通過質(zhì)詢響應協(xié)議對主機進行認證以從配對且未獲特權的狀態(tài)進入配對且已獲特權的狀態(tài);以及 響應進入所述配對且已獲特權的狀態(tài),對所述主機允許所述軟件的所述備份映像的安全訪問。
13.如權利要求12所述的方法,其中通過部署所述私密和公共密鑰來與所述主機配對包括: 從所述主機接收所述私密和公共密鑰; 存儲所述私密和公共密鑰;以及 響應存儲所述私密和公共密鑰向所述主機發(fā)送確認。
14.如權利要求12所述的方法,其中對所述主機進行認證包括: 向所述主機發(fā)送第一加密的隨機數(shù),所述第一加密的隨機數(shù)通過利用所述私密密鑰將第一隨機數(shù)加密而生成; 響應發(fā)送所述第一加密的隨機數(shù),從所述主機接收響應,其中所述主機通過將所述第一加密的隨機數(shù)解密來生成所述響應;以及 驗證所述響應以對所述主機進行認證,在驗證所述響應成功時所述主機通過認證。
15.如權利要求14所述的方法,還包括: 向所述主機接收第二加密的隨機數(shù),所述第二加密的隨機數(shù)通過利用所述私密密鑰將第二隨機數(shù)加密而生成; 將所述第二加密的隨機數(shù)解密以生成解密的消息; 將所述解密的消息發(fā)送到所述主機,以用于將所述解密的消息與所述第二隨機數(shù)匹配;以及 在發(fā)送所述解密的消息之后,從所述主機接收確認。
16.如權利要求12所述的方法,還包括響應來自所述主機的命令,退出所述配對且已獲特權的狀態(tài)。
17.如權利要求12所述的方法,還包括通過將所述非易失性存儲器取消配對并進入未配對狀態(tài)來將所述非易失性存儲器取消部署,其中取消部署通過與服務器進行質(zhì)詢響應協(xié)議來執(zhí)行。
18.如權利要求12所述的方法,還包括通過刪除先前從所述主機部署的所述私密密鑰,以將所述非易失性存儲器取消配對,其中在所述取消配對之前,所述非易失性存儲器處于所述配對且已獲特權的狀態(tài)中。
19.如權利要求12所述的方法,還包括響應來自所述主機的命令,通過覆蓋所述私密密鑰來重新部署所述非易失性存儲器,其中在所述重新部署之前和之后,所述非易失性存儲器處于所述配對且已獲特權的狀態(tài)中。
20.如權利要求12所述的方法,其中所述存儲器控制器和所述非易失性存儲器是固態(tài)驅(qū)動器(SSD)的一部分。
21.—種系統(tǒng),其包括: 主機,所述主機包括處理器; 耦合到所述主機的顯示器;以及 耦合到所述主機的固態(tài)驅(qū)動器(SSD),所述SSD包括: 耦合到非易失性存儲器的存儲器控制器,所述存儲器控制器可操作以執(zhí)行: 將軟件的備份映像存儲在所述非易失性存儲器的預留存儲區(qū)域中; 通過從所述主機部署私密和公共密鑰與所述主機配對,以進入配對且未獲特權的狀態(tài); 通過質(zhì)詢響應協(xié)議對所述主機進行認證以從所述配對且未獲特權的狀態(tài)進入配對且已獲特權的狀態(tài);以及 響應進入所述配對且已獲特權的狀態(tài),對所述主機允許所述軟件的所述備份映像的安全訪問。
22.如權利要求21所 述的系統(tǒng),其中所述存儲器控制器可操作以通過執(zhí)行包括如下的方法來與所述主機配對: 從所述主機接收所述私密和公共密鑰; 存儲所述私密和公共密鑰;以及 響應存儲所述私密和公共密鑰向所述主機發(fā)送確認。
23.如權利要求21所述的系統(tǒng),其中所述存儲器控制器可操作以通過執(zhí)行包括如下的方法來對所述主機進行認證: 向所述主機發(fā)送第一加密的隨機數(shù),所述第一加密的隨機數(shù)通過利用所述私密密鑰將第一隨機數(shù)加密而生成; 響應發(fā)送所述第一加密的隨機數(shù),從所述主機接收響應,其中所述主機通過將所述第一加密的隨機數(shù)解密來生成所述響應;以及 驗證所述響應以對所述主機進行認證,在驗證所述響應成功時所述主機通過認證。
24.如權利要求23所述的系統(tǒng),其中所述方法還包括: 向所述主機接收第二加密的隨機數(shù),所述第二加密的隨機數(shù)通過利用所述私密密鑰將第二隨機數(shù)加密而生成; 將所述第二加密的隨機數(shù)解密以生成解密的消息; 將所述解密的消息發(fā)送到所述主機,以用于將所述解密的消息與所述第二隨機數(shù)匹配;以及 在發(fā)送所述解密的消息之后,從所述主機接收確認。
25.如權利要求21所述的系統(tǒng),其中所述存儲器控制器可操作以響應來自所述主機的命令,退出所述配對且已獲特權的狀態(tài)。
26.如權利要求21所述的系統(tǒng),其中所述存儲器控制器可操作以通過將所述非易失性存儲器取消配對并進入未配對狀態(tài)來將所述非易失性存儲器取消部署,其中取消部署通過與服務器進行質(zhì)詢響應協(xié)議來執(zhí)行。
27.如權利要求21所述的系統(tǒng),其中所述存儲器控制器可操作以通過刪除先前從所述主機部署的所述私密密鑰,以將所述非易失性存儲器取消配對,其中在所述取消配對之前,所述非易失性存儲器處于所述配對且已獲特權的狀態(tài)中。
28.如權利要求21所述的系統(tǒng),其中所述存儲器控制器可操作以響應來自所述主機的命令通過覆蓋所述私密密鑰,以將所述非易失性存儲器取消部署,其中在所述重新部署之前和之后,所述非易失性存儲器處于所述配對且已獲特權的狀態(tài)中。
29.如權利要求21所述的系統(tǒng),其中所述顯示器是觸摸屏平板。
30.如權利要求21所述的系統(tǒng),其中所述軟件是固件。
31.一種包含計算機可執(zhí)行指令的機器可讀存儲介質(zhì),所述指令在被執(zhí)行時,所述計算機可執(zhí)行指令促使處理器執(zhí)行包括如下的方法: 將軟件的備份映像存儲在非易失性存儲器的預留存儲區(qū)域中; 通過從主機部署私密和公共密鑰與該主機配對,以進入配對且未獲特權的狀態(tài);通過質(zhì)詢響應協(xié)議對主機進行認證以從配對且未獲特權的狀態(tài)進入配對且已獲特權的狀態(tài);以及 響應進入所述配對 且已獲特權的狀態(tài),對所述主機允許所述軟件的所述備份映像的安全訪問權。
【文檔編號】G06F11/14GK103946806SQ201180075091
【公開日】2014年7月23日 申請日期:2011年9月29日 優(yōu)先權日:2011年9月29日
【發(fā)明者】M.內(nèi)夫德梅弗涅斯, K.S.格林斯魯, S.D.格蒂, P.拉特恩, S.沙希扎德 申請人:英特爾公司