專利名稱:受保護(hù)裝置管理的制作方法
技術(shù)領(lǐng)域:
本公開一般涉及通過(guò)加密、用戶認(rèn)證和密碼保護(hù)方案進(jìn)行保護(hù)的裝置的管理。
背景技術(shù):
公司數(shù)據(jù)正變得越來(lái)越具移動(dòng)性、分散性和豐富性。通常會(huì)從物理上安全的設(shè)施 取出數(shù)據(jù)以適應(yīng)旅行或具有靈活工作習(xí)慣的工作者。數(shù)據(jù)還在地理上具有分散性,因?yàn)楣镜纳虡I(yè)利益將它們帶到其它城市、州和國(guó)家。數(shù)據(jù)在生成速率和呈現(xiàn)它們的多媒體格式方面是豐富的。所有這些力量都推動(dòng)著在運(yùn)送和靜止時(shí)都需要保護(hù)數(shù)據(jù)的新型存儲(chǔ)介質(zhì)、更高帶寬子系統(tǒng)和網(wǎng)絡(luò)連接存儲(chǔ)設(shè)備的發(fā)展。靜態(tài)數(shù)據(jù)(DAR)加密技術(shù)防止存儲(chǔ)在丟失或被盜存儲(chǔ)裝置上的數(shù)據(jù)被未經(jīng)授權(quán)地使用,從而防止這些數(shù)據(jù)在互聯(lián)網(wǎng)或其它網(wǎng)絡(luò)上散播。DAR加密充當(dāng)防止存儲(chǔ)裝置的不可避免的丟失和被盜變成存儲(chǔ)在那些裝置上的數(shù)據(jù)的丟失和被盜的自動(dòng)且快速的響應(yīng)機(jī)制。保護(hù)存儲(chǔ)在與計(jì)算平臺(tái)相關(guān)聯(lián)的各種存儲(chǔ)裝置上的數(shù)據(jù)的挑戰(zhàn)之一是,加密技術(shù)和密鑰管理策略隨執(zhí)行加密的實(shí)體而有所區(qū)別。存儲(chǔ)硬件可具有對(duì)于存儲(chǔ)硬件供應(yīng)商而言唯一的內(nèi)置加密能力,從而需要使用存儲(chǔ)硬件供應(yīng)商的工具才能訪問(wèn)數(shù)據(jù)?;谲浖募用軇t需要不同于基于硬件的加密的密鑰生成和管理服務(wù),并且因此需要使用軟件供應(yīng)商的工具才能訪問(wèn)軟件加密的數(shù)據(jù)。因此,在發(fā)生被盜或丟失時(shí)的密鑰恢復(fù)和數(shù)據(jù)遷移計(jì)劃需要使用多個(gè)不同供應(yīng)商的工具才能保護(hù)和/或恢復(fù)與計(jì)算平臺(tái)相關(guān)聯(lián)的所有數(shù)據(jù)。保護(hù)存儲(chǔ)在存儲(chǔ)裝置上的數(shù)據(jù)的另一個(gè)挑戰(zhàn)是,存儲(chǔ)裝置本身可利用密碼保護(hù)方案進(jìn)行保護(hù)。例如,根據(jù)高級(jí)技術(shù)附連(ATA)規(guī)范,盤鎖定是硬盤驅(qū)動(dòng)器的內(nèi)置式安全性特征。ATA規(guī)范規(guī)定,一個(gè)盤有兩個(gè)密碼用戶密碼和主密碼。一個(gè)盤可以在兩種模式鎖定高安全性模式或最大安全性模式。在高安全性模式中,可利用“SE⑶RITY UNLOCK DEVICE(安全解鎖裝置)” ATA命令通過(guò)用戶密碼或主密碼來(lái)將盤解鎖。存在通常設(shè)置為5的嘗試極限,在嘗試極限之后,必須電源重啟或硬復(fù)位盤,然后才能再次嘗試解鎖。并且,在高安全性模式,SE⑶RITY ERASE UNIT (安全擦除單元)命令可與用戶密碼或主密碼一起使用。在最大安全性模式中,沒(méi)有用戶密碼就不可以解鎖盤。使盤回到可用狀態(tài)的唯一方法是先發(fā)出SECURITY ERASE PREPARE(安全擦除準(zhǔn)備)命令,緊接著發(fā)出SECURITY ERASEUNIT命令。在最大安全性模式中,SE⑶RITY ERASE UNIT命令需要用戶密碼,并且將完全擦除盤上的所有數(shù)據(jù)。因此,如果盤受密碼保護(hù),設(shè)置成最大安全性模式,并且用戶密碼未知,那么盤上的數(shù)據(jù)不可恢復(fù)。保護(hù)存儲(chǔ)在與計(jì)算平臺(tái)相關(guān)聯(lián)的存儲(chǔ)裝置上的數(shù)據(jù)的又一個(gè)挑戰(zhàn)是,平臺(tái)可能需要在認(rèn)證用戶憑證之后才允許訪問(wèn)相關(guān)聯(lián)的存儲(chǔ)裝置上的數(shù)據(jù)。例如,一些計(jì)算平臺(tái)利用Kerberos用戶認(rèn)證來(lái)進(jìn)行保護(hù)。Kerberos利用對(duì)稱Needham-Schroeder協(xié)議作為其基礎(chǔ)。它利用稱為密鑰分配中心(KDC)的可信第三方,可信第三方由兩個(gè)邏輯獨(dú)立的部分組成認(rèn)證服務(wù)器(AS)和票據(jù)許可服務(wù)器(TGS)。Kerberos在用于證實(shí)用戶身份的“票據(jù)”基礎(chǔ)上工作。KDC維護(hù)秘密密鑰的數(shù)據(jù)庫(kù);網(wǎng)絡(luò)上的每個(gè)實(shí)體(不管是客戶端還是服務(wù)器)共享只為它本身和KDC所知的秘密密鑰。對(duì)該密鑰的了解用于證實(shí)實(shí)體的身份。對(duì)于兩個(gè)實(shí)體之間的通信,KDC生成會(huì)話密鑰,它們可利用該會(huì)話密鑰來(lái)使它們的交互安全。協(xié)議的安全性很大程度上依賴于保持松散同步化時(shí)間的參與者和稱為Kerberos票據(jù)的短期真實(shí)性斷言。在Kerberos協(xié)議下,客戶端向認(rèn)證服務(wù)器認(rèn)證它本身并接收票據(jù)(所有票據(jù)都有時(shí)間標(biāo)記)。接著,客戶端聯(lián)系票據(jù)許可服務(wù)器,通過(guò)利用票據(jù),它證明它的身份并要求服務(wù)。如果客戶端有資格獲得服務(wù),那么票據(jù)許可服務(wù)器向客戶端發(fā)送另一票據(jù)。然后,客戶端聯(lián)系服務(wù)服務(wù)器,利用該票據(jù),證實(shí)已經(jīng)批準(zhǔn)它接收服務(wù)。
圖I是根據(jù)本發(fā)明一個(gè)實(shí)施例的系統(tǒng)的框圖,該系統(tǒng)配置成管理通過(guò)加密、用戶身份認(rèn)證和密碼保護(hù)方案進(jìn)行保護(hù)的裝置。圖2示出根據(jù)本發(fā)明一個(gè)實(shí)施例圖I中的系統(tǒng)在管理受保護(hù)裝置時(shí)的進(jìn)一步細(xì)節(jié)。圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例在重設(shè)(reset)具有通過(guò)加密、用戶身份認(rèn)證和密碼保護(hù)方案進(jìn)行保護(hù)的裝置的系統(tǒng)時(shí)執(zhí)行的方法的流程圖。圖4是根據(jù)本發(fā)明一個(gè)實(shí)施例在接收解鎖通過(guò)加密、用戶身份認(rèn)證和密碼保護(hù)方案進(jìn)行保護(hù)的裝置的命令時(shí)執(zhí)行的方法的流程圖。圖5A示出根據(jù)本發(fā)明一個(gè)實(shí)施例圖I中的系統(tǒng)在使得能夠動(dòng)態(tài)地附連通過(guò)加密、用戶身份認(rèn)證和密碼保護(hù)方案進(jìn)行保護(hù)的裝置并動(dòng)態(tài)地重新確認(rèn)用戶認(rèn)證憑證而無(wú)需重新引導(dǎo)時(shí)的進(jìn)一步細(xì)節(jié)。圖5B是在辨識(shí)裝置的熱插入事件時(shí)由圖5A的系統(tǒng)執(zhí)行的方法的流程圖。圖6示出根據(jù)本發(fā)明一個(gè)實(shí)施例圖I中的系統(tǒng)在管理受保護(hù)裝置時(shí)的進(jìn)一步細(xì)節(jié)。圖7是根據(jù)本發(fā)明一個(gè)實(shí)施例在檢測(cè)到在系統(tǒng)的安全分區(qū)內(nèi)發(fā)生潛在可審計(jì)事件時(shí)執(zhí)行的方法的流程圖。圖8示出根據(jù)本發(fā)明一個(gè)實(shí)施例用于實(shí)現(xiàn)安全分區(qū)以管理諸如利用加密、用戶身份認(rèn)證和密碼保護(hù)方案保護(hù)裝置的動(dòng)作的虛擬機(jī)環(huán)境。
具體實(shí)施例方式本發(fā)明的實(shí)施例可提供用于管理具有通過(guò)加密、用戶身份認(rèn)證和密碼保護(hù)方案進(jìn)行保護(hù)的裝置的系統(tǒng)的方法、設(shè)備、系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品。說(shuō)明書中提到本發(fā)明的“一個(gè)實(shí)施例”或“實(shí)施例”時(shí)表示,結(jié)合該實(shí)施例描述的特定特征、結(jié)構(gòu)或特性包含在本發(fā)明的至少一個(gè)實(shí)施例中。因此,在說(shuō)明書的各個(gè)地方出現(xiàn)短語(yǔ)“在一個(gè)實(shí)施例中”、“根據(jù)一個(gè)實(shí)施例”等時(shí)不一定都指相同的實(shí)施例。出于說(shuō)明的目的,闡述了特定配置和細(xì)節(jié)以便充分理解本發(fā)明。但是,本領(lǐng)域普通技術(shù)人員將明白,沒(méi)有本文介紹的這些特定細(xì)節(jié)也可實(shí)踐本發(fā)明的實(shí)施例。此外,公知的特征可省略或簡(jiǎn)化以免使本發(fā)明晦澀難懂。整篇描述中給出各種實(shí)例。它們只是描述本發(fā)明的特定實(shí)施例。本發(fā)明的范圍不限于給出的實(shí)例。在一個(gè)實(shí)施例中,在提供隔離且受控的環(huán)境的安全分區(qū)內(nèi)提供受保護(hù)裝置管理。安全分區(qū)可從可信管理應(yīng)用接收?qǐng)?zhí)行管理操作的命令。安全分區(qū)確保核實(shí)管理受保護(hù)裝置的命令源自經(jīng)過(guò)認(rèn)證的源??尚殴芾響?yīng)用可遠(yuǎn)離系統(tǒng),并且可經(jīng)由安全通信信道與安全分區(qū)通信。受保護(hù)裝置管理器的隔離且安全的環(huán)境可包括各種不同類型的分區(qū),包括完全分離硬件分區(qū)(例如,利用Intel 公司的可管理性引擎(“ME”)、主動(dòng)管理技術(shù)(“AMT”)、平臺(tái)資源層(“PRL”)和/或其它相當(dāng)?shù)幕蝾愃频募夹g(shù))和/或虛擬化分區(qū)(例如,Intel 公司的虛擬化技術(shù)(“VT”)方案中的虛擬機(jī))。本領(lǐng)域普通技術(shù)人員將明白,也可利用虛擬化主機(jī) 來(lái)實(shí)現(xiàn)ME、AMT和PRL技術(shù)(如下文參考圖8進(jìn)一步詳細(xì)描述)。在一個(gè)實(shí)施例中,受保護(hù)裝置管理器在與系統(tǒng)的主機(jī)操作系統(tǒng)隔離的安全分區(qū)中執(zhí)行。安全分區(qū)可接收將耦合到系統(tǒng)的加密裝置解鎖的請(qǐng)求。安全分區(qū)經(jīng)由在可信遠(yuǎn)程控制臺(tái)與安全分區(qū)之間建立的安全通信信道接收請(qǐng)求。安全分區(qū)響應(yīng)請(qǐng)求而在無(wú)需主機(jī)操作系統(tǒng)參與的情況下將加密裝置解鎖。安全分區(qū)可從可信遠(yuǎn)程控制臺(tái)接收令牌并利用令牌來(lái)解開用于將加密裝置的塊加密的密鑰。安全分區(qū)可從加密裝置的安全存儲(chǔ)區(qū)域獲得密鑰,其中安全存儲(chǔ)區(qū)域?qū)τ谥鳈C(jī)操作系統(tǒng)是隱藏的。安全分區(qū)可在將加密裝置解鎖之前確認(rèn)請(qǐng)求源自可信遠(yuǎn)程控制臺(tái)。安全分區(qū)可在將加密裝置解鎖之后執(zhí)行管理操作,其中請(qǐng)求還指定要執(zhí)行的管理操作,并在執(zhí)行管理操作之后引導(dǎo)主機(jī)操作系統(tǒng)。當(dāng)系統(tǒng)的主機(jī)操作系統(tǒng)發(fā)生故障時(shí),可在無(wú)需系統(tǒng)用戶參與的情況下執(zhí)行加密裝置的解鎖。圖I示出根據(jù)本發(fā)明一個(gè)實(shí)施例配置成管理通過(guò)加密、用戶身份認(rèn)證和密碼保護(hù)方案進(jìn)行保護(hù)的裝置的系統(tǒng)。平臺(tái)100包括經(jīng)由桌面管理接口(DMI) Illa連接到芯片組/安全分區(qū)120的處理器110。芯片組/安全分區(qū)120包括用于管理平臺(tái)100的配置和操作的可管理性引擎(ME)130,ME 130可作為微處理器來(lái)實(shí)現(xiàn)。在一個(gè)實(shí)施例中,可管理性引擎(ME) 130收集審計(jì)事件,認(rèn)證用戶,控制對(duì)外圍裝置的訪問(wèn),管理加密密鑰以保護(hù)存儲(chǔ)在平臺(tái)100的存儲(chǔ)裝置上的數(shù)據(jù),并經(jīng)由網(wǎng)絡(luò)控制器160與管理控制臺(tái)166接口。利用管理控制臺(tái)166,可管理性引擎(ME) 130對(duì)于平臺(tái)(如平臺(tái)100)的配置和管理保持與企業(yè)范圍的政策一致??晒芾硇砸?ME) 130經(jīng)由主機(jī)嵌入式控制器接口(HECI) Illb連接到處理器110。虛擬化引擎控制器接口(VECI) Illc將處理器110連接到芯片組/安全分區(qū)120的I/o命令解碼模塊140。在一個(gè)實(shí)施例中,I/O命令解碼模塊140是利用專門的固件配置成執(zhí)行存儲(chǔ)命令解碼和其它加速操作的通用控制器。I/O命令解碼模塊140的功能性也可完全以專用硬件來(lái)實(shí)現(xiàn)。I/O命令解碼模塊140提供保護(hù)寫入到與平臺(tái)100相關(guān)聯(lián)的存儲(chǔ)裝置的數(shù)據(jù)的管理功能性。例如,I/O命令解碼模塊140可與用于加密存儲(chǔ)裝置的加密引擎150交互,保護(hù)用于保護(hù)存儲(chǔ)裝置的元數(shù)據(jù),攔截和處理與存儲(chǔ)裝置有關(guān)的硬件中斷,并便于存儲(chǔ)裝置上的管理操作??晒芾硇砸?ME)130通過(guò)配置政策和加密密鑰來(lái)控制I/O命令解碼模塊140和加密引擎150的行為。下文將進(jìn)一步詳細(xì)描述可管理性引擎(ME) 130、I/O命令解碼模塊140和加密引擎150的操作。平臺(tái)100還包括存儲(chǔ)器裝置,例如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM) 114、芯片組/安全分區(qū)120內(nèi)的靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM) 122、以及閃速存儲(chǔ)器190。當(dāng)平臺(tái)100滿功率供電時(shí),稱為上存儲(chǔ)器區(qū)域(UMA)的DRAM 114的一部分ME-UMA 116可用于供可管理性引擎(ME) 130使用。一般來(lái)說(shuō),由于存在通過(guò)基本輸入輸出系統(tǒng)(BIOS)配置的存儲(chǔ)器隔離機(jī)制,所以平臺(tái)100的主機(jī)操作系統(tǒng)115不能訪問(wèn)ME-UMA 116。該存儲(chǔ)器隔離機(jī)制在主機(jī)操作系統(tǒng)運(yùn)行之前鎖定了對(duì)ME-UMA存儲(chǔ)器116的訪問(wèn)。通過(guò)將供可管理性引擎130使用的DRAM 114的該部分與主機(jī)操作系統(tǒng)隔離,保護(hù)了可管理性引擎130的完整性以免受可能感染主機(jī)操作系統(tǒng)115的病毒或其它惡意軟件的攻擊。
閃速存儲(chǔ)器190包含用于初始化平臺(tái)100的固件。該初始化固件包括BIOS固件192、用于配置網(wǎng)絡(luò)控制器160的網(wǎng)絡(luò)控制器固件194以及用于配置芯片組/安全分區(qū)120的芯片組固件196。在數(shù)字簽名存儲(chǔ)在閃速存儲(chǔ)器190上之前,可管理性引擎(ME) 130和I/O命令解碼模塊140的芯片組固件196的完整性通過(guò)該數(shù)字簽名來(lái)確保。供可管理性引擎(ME) 130使用的數(shù)據(jù)(例如,用戶認(rèn)證信息)可通過(guò)可管理性引擎(ME) 130內(nèi)的加密固件來(lái)加密并存儲(chǔ)在閃速存儲(chǔ)器190的數(shù)據(jù)區(qū)198內(nèi)。如圖I所示的平臺(tái)100的實(shí)施例還包括連接到通用串行總線(USB)裝置177的USB控制器175。USB裝置可包括定位裝置(如鼠標(biāo))、鍵盤、數(shù)字照相機(jī)、打印機(jī)、個(gè)人媒體播放器、閃速驅(qū)動(dòng)器和外部硬盤驅(qū)動(dòng)器。USB規(guī)范使得能夠在不打開計(jì)算機(jī)機(jī)箱(熱切換)或重啟計(jì)算機(jī)的情況下安裝和移除裝置,從而使得它可用于移動(dòng)外圍設(shè)備,包括各種種類的驅(qū)動(dòng)器。最初設(shè)想并且如今仍然用于光存儲(chǔ)裝置(CD-RW驅(qū)動(dòng)器、DVD驅(qū)動(dòng)器等)的是,若干制造商提供了具有與內(nèi)部驅(qū)動(dòng)器相當(dāng)?shù)男阅艿耐獠勘銛y式USB硬盤驅(qū)動(dòng)器或盤驅(qū)動(dòng)器的空殼,其受到所附連的USB裝置的當(dāng)前數(shù)量和類型以及USB接口的上限(實(shí)際上,對(duì)于USB 2. O為約40 MiB/s,而對(duì)于USB 3. O可能潛在地為400 MiB/s或更大)的限制。這些外部驅(qū)動(dòng)器通常包含橋接在驅(qū)動(dòng)器的接口(IDE、ATA、SATA、PATA、ATAPI或甚至SCSI)到USB接口端口之間的“轉(zhuǎn)化裝置”。在功能上,該驅(qū)動(dòng)器對(duì)于用戶來(lái)說(shuō)看起來(lái)很像是內(nèi)部驅(qū)動(dòng)器。外部驅(qū)動(dòng)器連接性的其它競(jìng)爭(zhēng)標(biāo)準(zhǔn)包括eSATA、ExpressCard (現(xiàn)在是2. O版本)和FireWire (IEEE1394)。如圖I所示的平臺(tái)100的實(shí)施例還包括可經(jīng)由I/O控制器170訪問(wèn)的不同類型的存儲(chǔ)裝置,包括可經(jīng)由存儲(chǔ)接口 171訪問(wèn)的非易失性存儲(chǔ)器存儲(chǔ)裝置172和可經(jīng)由存儲(chǔ)接口 181訪問(wèn)的串行高級(jí)技術(shù)附連(SATA)存儲(chǔ)裝置180。存儲(chǔ)接口 171可作為非易失性存儲(chǔ)器(NVM)的非易失性存儲(chǔ)器主機(jī)控制器接口(HCI)來(lái)實(shí)現(xiàn),而存儲(chǔ)接口 181可作為串行高級(jí)技術(shù)附連(SATA)存儲(chǔ)裝置180的高級(jí)HCI (AHCI)接口來(lái)實(shí)現(xiàn)。I/O控制器170包括NVM和SATA控制器功能性。存儲(chǔ)在存儲(chǔ)裝置172和180上的數(shù)據(jù)可通過(guò)芯片組/安全分區(qū)120的加密引擎150加密。SATA存儲(chǔ)裝置180用作芯片組加密的裝置的實(shí)例,并且還包括用于存儲(chǔ)元數(shù)據(jù)182的保留區(qū)域,元數(shù)據(jù)182包括存儲(chǔ)裝置180的至少一個(gè)裝置加密密鑰(DEK) 184以及供可管理性引擎(ME)130使用的其它元數(shù)據(jù)。在I/O命令解碼模塊140和I/O控制器170處理I/O命令期間,元數(shù)據(jù)182受到保護(hù)以防止被在處理器110上運(yùn)行的應(yīng)用覆寫。在一個(gè)實(shí)施例中,在通過(guò)芯片組/安全分區(qū)120的加密引擎150執(zhí)行數(shù)據(jù)的加密或解密之前,可管理性引擎(ME) 130將與輸入/輸出操作中所涉及的存儲(chǔ)裝置相關(guān)聯(lián)的裝置加密密鑰(DEK)(如DEK 184)插入到與加密引擎150相關(guān)聯(lián)的存儲(chǔ)器寄存器中。如果一個(gè)物理存儲(chǔ)裝置在邏輯上劃分成多個(gè)不同的邏輯裝置或分區(qū),那么每個(gè)邏輯裝置或分區(qū)可具有它自己的相應(yīng)的裝置加密密鑰(DEK),并且那些DEK中的每個(gè)DEK可插入到加密引擎150的相應(yīng)存儲(chǔ)器寄存器中。在一個(gè)實(shí)施例中,可管理性引擎(ME) 130管理與平臺(tái)100相關(guān)聯(lián)的所有數(shù)據(jù)的加密,包括由芯片組/安全分區(qū)120內(nèi)的加密引擎150執(zhí)行的加密以及不是由芯片組執(zhí)行而是由在處理器110上運(yùn)行的軟件或由存儲(chǔ)硬件本身執(zhí)行的數(shù)據(jù)加密。由可管理性引擎(ME)130提供的服務(wù)之一是管理公共框架和用戶接口中的加密密鑰,而與執(zhí)行數(shù)據(jù)加密的平臺(tái)100 的組件無(wú)關(guān)。發(fā)明人 Ned Smith 的題為“Enforcing Use of Chipset Key ManagementServices for Encrypted Storage Devices” 的專利申請(qǐng) 12/319210 中提供了關(guān)于芯片組 /安全分區(qū)120和可管理性引擎(ME) 130的框架以及在管理數(shù)據(jù)加密時(shí)的操作的進(jìn)一步細(xì)節(jié),該專利申請(qǐng)由此通過(guò)引用的方式全文結(jié)合于本文。圖2示出根據(jù)本發(fā)明一個(gè)實(shí)施例圖I中的芯片組/安全分區(qū)120的可管理性引擎(ME) 130和I/O命令解碼模塊140組件的進(jìn)一步細(xì)節(jié)。在芯片組/安全分區(qū)120內(nèi),可管理性引擎(ME) 130包括ME內(nèi)核231、ME公共服務(wù)233、受保護(hù)裝置管理器235、安全性/密鑰管理固件237和身份管理固件239。這些組件中的每個(gè)組件將在下文進(jìn)一步詳細(xì)論述。ME內(nèi)核231提供基本功能性,包括SRAM 122以及DRAM 112的部分(如ME-UMA114)的存儲(chǔ)器使用、閃速存儲(chǔ)器190內(nèi)持續(xù)不斷的數(shù)據(jù)存儲(chǔ)、以及訪問(wèn)控制。ME內(nèi)核231控制I/O命令解碼模塊140和加密引擎150的操作。ME公共服務(wù)233包括不同固件模塊共同所需的服務(wù),包括安全性服務(wù)、聯(lián)網(wǎng)服務(wù)和供應(yīng)服務(wù)。由ME公共服務(wù)233提供的安全性服務(wù)一般包括由HTTP摘要和Kerberos認(rèn)證組成的用戶認(rèn)證;利用微軟活動(dòng)目錄和/或其它服務(wù)的域名授權(quán);用于使客戶端和服務(wù)器時(shí)鐘同步的時(shí)鐘同步服務(wù);以及安全性審計(jì)服務(wù)。由ME公共服務(wù)233提供的聯(lián)網(wǎng)服務(wù)包括傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議(TCP/IP)堆、傳輸層安全性(TLS)、超文本傳輸協(xié)議(HTTP)、簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議(SOAP)、web服務(wù)可管理性(WS-MAN)和稱為本地可管理性服務(wù)(LMS)的基于主機(jī)的TLS接口。由ME公共服務(wù)233提供的供應(yīng)服務(wù)與圖I中的管理控制臺(tái)166 —起用于向平臺(tái)100供應(yīng)企業(yè)軟件。這些供應(yīng)服務(wù)支持兩種部署模式零觸摸和一次觸摸。在零觸摸模式下,將部署證書錨密鑰存儲(chǔ)在諸如圖I的閃速存儲(chǔ)器190的數(shù)據(jù)區(qū)198的數(shù)據(jù)存儲(chǔ)區(qū)域中,以允許利用公知的證書頒發(fā)機(jī)構(gòu)密鑰來(lái)驗(yàn)證IT憑證,然后可利用IT憑證來(lái)獲得平臺(tái)的擁有權(quán)。一次觸摸模式配置組織證書、對(duì)稱密鑰和可用于遠(yuǎn)程完成設(shè)置和部署任務(wù)的可信主機(jī)??晒芾硇砸?30還包括帶外(00B)通信模塊230。00B通信模塊230利于平臺(tái)100的組件與管理控制臺(tái)166的對(duì)應(yīng)組件之間經(jīng)由網(wǎng)絡(luò)控制器160通信。00B通信模塊230在芯片組/安全分區(qū)120與管理控制臺(tái)166之間建立安全的00B通信信道168。
可管理性引擎(ME) 130還包括身份管理固件239。身份管理固件239可將用戶的認(rèn)證信息與存儲(chǔ)在例如閃速存儲(chǔ)器190的數(shù)據(jù)區(qū)198中的用戶帳戶元數(shù)據(jù)進(jìn)行比較。身份管理固件239還可與可管理性引擎(ME)130的安全性/密鑰管理固件237交互以確認(rèn)用戶的信息還存儲(chǔ)在諸如SATA存儲(chǔ)裝置180的存儲(chǔ)裝置內(nèi)的容器中。用戶對(duì)諸如SATA存儲(chǔ)裝置180的特定存儲(chǔ)裝置的訪問(wèn)的該確認(rèn)提供了對(duì)存儲(chǔ)在SATA存儲(chǔ)裝置180上的數(shù)據(jù)的額外一層保護(hù)。安全性/密鑰管理固件237管理諸如由加密引擎150創(chuàng)建的加密密鑰的密鑰。安全性/密鑰管理固件237還可在允許訪問(wèn)存儲(chǔ)在與平臺(tái)100相關(guān)聯(lián)的存儲(chǔ)裝置上的數(shù)據(jù)之前認(rèn)證用戶。安全性/密鑰管理固件237管理密鑰管理信息,并將該密鑰管理信息存儲(chǔ)在與平臺(tái)相關(guān)聯(lián)的存儲(chǔ)器或存儲(chǔ)裝置(例如,閃速存儲(chǔ)器190或SATA存儲(chǔ)裝置180)中。存儲(chǔ)密鑰管理信息的位置取決于可用的存儲(chǔ)空間和待存儲(chǔ)的數(shù)據(jù)量,并且本發(fā)明不限于特定的配置來(lái)存儲(chǔ)密鑰管理信息。在一個(gè)實(shí)施例中,安全性/密鑰管理固件237利用捆綁到平臺(tái)100的平臺(tái)容器密鑰(PCK)來(lái)加密密鑰管理信息。
由安全性/密鑰管理固件237管理的密鑰管理信息包括由芯片組(即,由芯片組/安全分區(qū)120內(nèi)的加密引擎150)生成并存儲(chǔ)在元數(shù)據(jù)182中的加密密鑰,其稱為裝置加密密鑰(DEK) 184??晒芾硇砸?ME)130還示為包括受保護(hù)裝置管理器235。在一個(gè)實(shí)施例中,受保護(hù)裝置管理器235與I/O命令解碼模塊140通信以提供用于解鎖諸如SATA存儲(chǔ)裝置180的裝置的裝置密碼。下文將參考圖3和圖4進(jìn)一步詳細(xì)描述受保護(hù)裝置管理器235的操作。I/O命令解碼模塊140示為包括I/O模塊內(nèi)核241和SATA虛擬化固件243。I/O模塊內(nèi)核241向I/O命令解碼模塊140提供基本功能性,并從ME內(nèi)核231接收命令。盡管參考該實(shí)施例將SATA虛擬化固件243作為固件加以描述,但是SATA虛擬化固件243的功能性也可作為專用硬件來(lái)實(shí)現(xiàn)。SATA虛擬化固件243用于訪問(wèn)諸如SATA存儲(chǔ)裝置180的SATA存儲(chǔ)裝置,并使得可管理性引擎(ME) 130能夠執(zhí)行裝置管理功能。例如,SATA虛擬化固件243使得能夠通過(guò)將SARA控制分組注入到I/O數(shù)據(jù)流而在無(wú)需主機(jī)操作系統(tǒng)115或在處理器110上運(yùn)行的其它主機(jī)軟件參與的情況下由管理控制臺(tái)166遠(yuǎn)程訪問(wèn)受保護(hù)裝置??刂品纸M可用于例如經(jīng)由來(lái)自管理控制臺(tái)166的命令來(lái)解鎖SATA存儲(chǔ)裝置180。SATA虛擬化固件243還用于向主機(jī)操作系統(tǒng)115隱藏SATA存儲(chǔ)裝置180上的一定范圍的線性塊地址。本文將對(duì)于主機(jī)操作系統(tǒng)訪問(wèn)隱藏的該范圍的隱藏的線性塊地址稱為安全存儲(chǔ)區(qū)域,該安全存儲(chǔ)區(qū)域受保護(hù)以使得裝置元數(shù)據(jù)182可存儲(chǔ)在驅(qū)動(dòng)器上。裝置元數(shù)據(jù)182可包括使得能夠?qū)ATA存儲(chǔ)裝置180的塊進(jìn)行加密和解密的裝置加密密鑰184。SATA虛擬化固件243還可攔截由I/O控制器170檢測(cè)的事件,例如在新裝置附連到平臺(tái)100時(shí)生成的熱插入中斷。SATA虛擬化固件243還可監(jiān)視前往和來(lái)自存儲(chǔ)裝置的I/O流并檢測(cè)事件以進(jìn)行審計(jì)。在一個(gè)實(shí)施例中,利用加密和密碼(如ATA密碼)來(lái)保護(hù)SATA存儲(chǔ)裝置180,用戶必須輸入密碼才可訪問(wèn)裝置。密碼用于解鎖SATA存儲(chǔ)裝置180的固有鎖定機(jī)制。加密引擎150用于加密SATA存儲(chǔ)裝置180的塊。SATA裝置加密密鑰(DEK)(如DEK 184)存儲(chǔ)在SATA裝置上的對(duì)于主機(jī)操作系統(tǒng)隱藏的位置中。首先,通過(guò)對(duì)于固有鎖定機(jī)制利用密碼來(lái)解鎖裝置,然后可訪問(wèn)DEK以解密加密塊。當(dāng)重設(shè)平臺(tái)100時(shí),I/O命令解碼模塊140和可管理性引擎(ME) 130協(xié)作以便從裝置讀取諸如加密密鑰和用戶認(rèn)證憑證的裝置元數(shù)據(jù)并將裝置元數(shù)據(jù)存儲(chǔ)在安全存儲(chǔ)設(shè)備中,例如作為裝置元數(shù)據(jù)298存儲(chǔ)在閃速存儲(chǔ)器190數(shù)據(jù)區(qū)198中。在一個(gè)實(shí)施例中,對(duì)于可通過(guò)管理控制臺(tái)166認(rèn)證的每個(gè)用戶,有一個(gè)令牌,例如圖2中的令牌-I 266A,它用于導(dǎo)出特定裝置的包裝密鑰。而裝置包裝密鑰用于包裝該特定裝置的加密密鑰。用戶包裝密鑰和裝置包裝密鑰一起用于確定用戶是否可訪問(wèn)特定裝置,并且用戶包裝密鑰/裝置包裝密鑰對(duì)作為裝置元數(shù)據(jù)298存儲(chǔ)在閃速存儲(chǔ)器190數(shù)據(jù)區(qū)198中。相比之下,諸如DEK 184的裝置加密密鑰則存儲(chǔ)在存儲(chǔ)裝置本身上。當(dāng)要訪問(wèn)裝置時(shí),使用令牌-I的副本來(lái)從裝置元數(shù)據(jù)298確定合適的用戶包裝密鑰/裝置包裝密鑰對(duì)。密鑰對(duì)中的裝置包裝密鑰用于解密裝置上的元數(shù)據(jù)182,由此暴露裝置加密密鑰184。當(dāng)不存在任何用戶時(shí),或者當(dāng)用戶不能產(chǎn)生所需的認(rèn)證憑證時(shí),利用令牌-I來(lái)對(duì)存儲(chǔ)裝置執(zhí)行管理操作。
在一個(gè)實(shí)施例中,加密引擎150利用由存儲(chǔ)在諸如USB裝置177的USB裝置上的另一個(gè)令牌(本文稱為令牌-2)導(dǎo)出的另一個(gè)裝置包裝密鑰來(lái)加密裝置元數(shù)據(jù)182。USB裝置177是要安全地存儲(chǔ)在遠(yuǎn)離小偷可能訪問(wèn)的位置的物理位置。當(dāng)沒(méi)有網(wǎng)絡(luò)連接可供遠(yuǎn)程管理控制臺(tái)166連接到存儲(chǔ)裝置時(shí),利用令牌-2來(lái)對(duì)存儲(chǔ)裝置執(zhí)行管理操作。USB裝置177包含未加密的明碼文本形式的令牌_2,以使得暗示地授權(quán)令牌-2的持有者對(duì)存儲(chǔ)裝置執(zhí)行管理操作。如果提供了令牌_2,那么利用令牌-2來(lái)導(dǎo)出第二組用戶包裝密鑰,并將第二組用戶包裝密鑰/裝置包裝密鑰對(duì)也作為裝置元數(shù)據(jù)298的一部分存儲(chǔ)在閃速存儲(chǔ)器190中。令牌-I和令牌-2值都受到諸如身份管理固件239的用戶認(rèn)證系統(tǒng)的保護(hù),以使得只有授權(quán)用戶才能夠暴露裝置加密密鑰。在一個(gè)實(shí)施例中,將令牌-I 266A與裝置180密碼266B —起安全地存檔在與管理控制臺(tái)166相關(guān)聯(lián)的遠(yuǎn)程存儲(chǔ)設(shè)備266 (或目錄服務(wù))中。管理控制臺(tái)166利用裝置180密碼266B和令牌-I 266A來(lái)遠(yuǎn)程解鎖SATA裝置180。遠(yuǎn)程管理控制臺(tái)166將裝置180密碼266B提供給受保護(hù)裝置管理器235,受保護(hù)裝置管理器235利用裝置180密碼266B來(lái)解鎖裝置。受保護(hù)裝置管理器235將令牌-I 266A提供給安全性/密鑰管理固件237,安全性/密鑰管理固件237可利用身份管理固件239來(lái)解開用戶包裝密鑰。用戶包裝密鑰用于解開裝置包裝密鑰,裝置包裝密鑰用于解密元數(shù)據(jù)182并且由此提供對(duì)裝置加密密鑰184的訪問(wèn),加密引擎150可利用裝置加密密鑰184來(lái)解密SATA存儲(chǔ)裝置180的塊。通過(guò)依賴管理控制臺(tái)166與芯片組/安全分區(qū)120之間的安全通信信道(例如,OOB通信信道168)來(lái)保護(hù)令牌-I 266A以免受到網(wǎng)絡(luò)攻擊。可利用例如Kerberos會(huì)話密鑰來(lái)使OOB通信信道168安全。因?yàn)镾ATA存儲(chǔ)裝置180上的數(shù)據(jù)可加密,所以將裝置加密密鑰(DEK) 184存儲(chǔ)在可供可管理性引擎(ME)130的受保護(hù)裝置管理器235訪問(wèn)的位置中。通過(guò)使DEK可供受保護(hù)裝置管理器235使用,可為經(jīng)由HECI/VECI接口 Illb和Illc的SATA讀取/寫入請(qǐng)求服務(wù),即使SATA存儲(chǔ)裝置180上的數(shù)據(jù)被加密。一旦受保護(hù)裝置管理器235訪問(wèn)了密碼以解鎖SATA存儲(chǔ)裝置180,受保護(hù)裝置管理器235便可制作存儲(chǔ)在裝置元數(shù)據(jù)298中的裝置包裝密鑰的副本。裝置包裝密鑰可用于解開包含在附連到平臺(tái)的每個(gè)SATA裝置的裝置元數(shù)據(jù)中的裝置加密密鑰。
圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例在重設(shè)具有通過(guò)加密、用戶身份認(rèn)證和密碼保護(hù)方案進(jìn)行保護(hù)的裝置的系統(tǒng)時(shí)執(zhí)行的方法的流程圖。將把圖3中的方法作為通過(guò)圖2中的系統(tǒng)的組件來(lái)執(zhí)行而加以描述,但是該方法不限于這樣的實(shí)現(xiàn)。一旦發(fā)生系統(tǒng)重設(shè),控制繼續(xù)進(jìn)行至步驟310 “ME受保護(hù)裝置管理器通過(guò)MECI經(jīng)由I/O命令解碼模塊從SATA裝置間接讀取裝置元數(shù)據(jù)”。在步驟310,可管理性引擎130受保護(hù)裝置管理器235通過(guò)從諸如SATA存儲(chǔ)裝置180的SATA裝置讀取裝置元數(shù)據(jù)而獲得有關(guān)所附連的存儲(chǔ)裝置的信息。由于可管理性引擎130不直接連接到存儲(chǔ)裝置,所以可管理性引擎130受保護(hù)裝置管理器235通過(guò)MECI 131經(jīng)由I/O命令解碼模塊140間接訪問(wèn)裝置元數(shù)據(jù)??晒芾硇砸?30受保護(hù)裝置管理器235利用SATA虛擬化固件243來(lái)訪問(wèn)存儲(chǔ)在諸如SATA存儲(chǔ)裝置180的SATA裝置上的裝置元數(shù)據(jù)。SATA虛擬化固件243將存儲(chǔ)接口暴露給受保護(hù)裝置管理器235,以使得SATA存儲(chǔ)裝置180看起來(lái)就像是線性塊地址的塊存儲(chǔ)裝置。SATA虛擬化固件243向主機(jī)操作系統(tǒng)隱藏一些線性塊地址,并將它們暴露給受保護(hù)裝置管理器235。SATA虛擬化固件243利用SATA I/O協(xié)議與SATA存儲(chǔ)裝置180交互。從步驟310 “ME受保護(hù)裝置管理器通過(guò)MECI經(jīng)由I/O命令解碼模塊從SATA裝置間接讀取裝置元數(shù)據(jù)”,控制繼續(xù)進(jìn)行至步驟320 “I/O命令解碼模塊讀取包含元數(shù)據(jù)描述 符信息的虛擬驅(qū)動(dòng)器定義元數(shù)據(jù)”。在步驟320中,I/O命令解碼模塊140 SATA虛擬化固件243讀取包含存儲(chǔ)在元數(shù)據(jù)182 (其存儲(chǔ)在SATA存儲(chǔ)裝置180上)中的元數(shù)據(jù)描述符信息的虛擬驅(qū)動(dòng)器定義元數(shù)據(jù)。在一個(gè)實(shí)施例中,SATA虛擬化固件243將存儲(chǔ)裝置虛擬化,以使得可以辨識(shí)多個(gè)虛擬驅(qū)動(dòng)器分區(qū)。這些虛擬驅(qū)動(dòng)器分區(qū)中的每個(gè)分區(qū)將在虛擬驅(qū)動(dòng)器定義數(shù)據(jù)中加以描述。包含在第一虛擬硬盤驅(qū)動(dòng)器(HDD)定義內(nèi)的可以是傳統(tǒng)的驅(qū)動(dòng)器幾何元素。例如,在線性塊地址(LBA)零開始,可存儲(chǔ)主引導(dǎo)記錄(MBR),接著存儲(chǔ)驅(qū)動(dòng)器數(shù)據(jù),例如操作系統(tǒng)文件和用戶文件。一些系統(tǒng)具有可供BIOS或其它系統(tǒng)設(shè)施使用的隱藏分區(qū)。主機(jī)受保護(hù)區(qū)域(HPA)可用于存儲(chǔ)緊急恢復(fù)OS (R0S)、多媒體工具、診斷工具或其它程序。實(shí)現(xiàn)廉價(jià)磁盤冗余陣列(RAID)的系統(tǒng)可在虛擬驅(qū)動(dòng)器的末端放置RAID元數(shù)據(jù)。通過(guò)在虛擬驅(qū)動(dòng)器的末端放置RAID元數(shù)據(jù),RAID可選ROM可在系統(tǒng)初始化時(shí)容易地定位RAID元數(shù)據(jù)。在一個(gè)實(shí)施例中,諸如DEK 184的單個(gè)裝置加密密鑰將每個(gè)虛擬HDD橫跨在裝置上,從而導(dǎo)致用相同的密鑰來(lái)加密所有虛擬HDD。將虛擬驅(qū)動(dòng)器定義(VDD)數(shù)據(jù)放置在物理驅(qū)動(dòng)器的末端,例如放置在最后一個(gè)線性塊地址LBA-n處。VDD數(shù)據(jù)包含驅(qū)動(dòng)器幾何形狀,以便標(biāo)記每個(gè)虛擬HDD的起點(diǎn)和終點(diǎn)。VDD還標(biāo)識(shí)可管理性引擎元數(shù)據(jù)區(qū)域的起始和結(jié)束位置,例如元數(shù)據(jù)182的起始和結(jié)束位置。VDD和ME元數(shù)據(jù)可以不通過(guò)加密引擎150加密,而是元數(shù)據(jù)182的內(nèi)容通過(guò)I/O命令解碼模塊140和可管理性引擎(ME) 130進(jìn)行保護(hù)。在一個(gè)實(shí)施例中,元數(shù)據(jù)182包含AHCI文件系統(tǒng)塊、預(yù)引導(dǎo)認(rèn)證(PBA)碼和PBA元數(shù)據(jù)。AHCI文件系統(tǒng)供固件存儲(chǔ)驅(qū)動(dòng)器使用,其可由處理器110執(zhí)行。元數(shù)據(jù)182還可包括包裝好的DEK 184、裝置配置數(shù)據(jù)、驅(qū)動(dòng)器轉(zhuǎn)換狀態(tài)信息和可用于將諸如SATA存儲(chǔ)裝置180的裝置遷移到另一平臺(tái)的驅(qū)動(dòng)器遷移包。遷移包還包含利用與平臺(tái)無(wú)特定關(guān)連的恢復(fù)密鑰包裝的DEK 184的副本。元數(shù)據(jù)182還可包含PBA可執(zhí)行文件以及包括將在加載主機(jī)操作系統(tǒng)之前在主機(jī)處理器110上預(yù)引導(dǎo)期間執(zhí)行的PBA碼的存儲(chǔ)區(qū)域的標(biāo)識(shí)符。例如,包含PBA碼的該存儲(chǔ)區(qū)域可以是閃速存儲(chǔ)器190的一部分。通過(guò)在主機(jī)處理器110上執(zhí)行的代碼經(jīng)由I/o命令解碼模塊140利用VECI Illc或經(jīng)由可管理性引擎(ME)130通過(guò)利用HECI 11 Ib的主機(jī)命令接口而允許訪問(wèn)PBA區(qū)域。I/O命令解碼模塊140確保將訪問(wèn)PBA存儲(chǔ)區(qū)域的請(qǐng)求局限在存儲(chǔ)PBA可執(zhí)行文件的存儲(chǔ)范圍,因?yàn)镻BA碼在主機(jī)處理器110上執(zhí)行。當(dāng)I/O命令解碼模塊140 SATA虛擬化固件243在步驟320 “ I/O命令解碼模塊讀取包含元數(shù)據(jù)描述符信息的虛擬驅(qū)動(dòng)器定義元數(shù)據(jù)”中讀取包含存儲(chǔ)在元數(shù)據(jù)182 (其存儲(chǔ)在SATA存儲(chǔ)裝置180上)中的元數(shù)據(jù)描述符信息的虛擬驅(qū)動(dòng)器定義元數(shù)據(jù)時(shí),元數(shù)據(jù)描述符信息可包括裝置元數(shù) 據(jù)182內(nèi)的諸如DEK 184的包裝好的裝置加密密鑰的多個(gè)示例。例如,DEK 184可通過(guò)平臺(tái)特有的裝置包裝密鑰以及與平臺(tái)100無(wú)關(guān)的恢復(fù)密鑰來(lái)包裝。由于可存在裝置加密密鑰的多個(gè)示例,所以需要確定可利用在執(zhí)行系統(tǒng)重設(shè)時(shí)所涉及的用戶認(rèn)證憑證來(lái)解開的特定裝置加密密鑰的位置。如上所述,執(zhí)行系統(tǒng)重設(shè)的用戶將具有用于包裝裝置包裝密鑰的相關(guān)聯(lián)的用戶包裝密鑰。用戶包裝密鑰/裝置包裝密鑰存儲(chǔ)在閃速存儲(chǔ)器190的裝置元數(shù)據(jù)289中。控制繼續(xù)進(jìn)行至步驟330 “I/O命令解碼模塊定位用戶認(rèn)證元數(shù)據(jù)偏移并讀取裝置元數(shù)據(jù)”。在步驟330中,I/O命令解碼模塊140利用元數(shù)據(jù)描述符信息來(lái)定位閃速存儲(chǔ)器190內(nèi)的用戶認(rèn)證元數(shù)據(jù)偏移以便利用用戶憑證來(lái)執(zhí)行系統(tǒng)重設(shè)。從由該偏移標(biāo)識(shí)的閃速存儲(chǔ)器190的位置讀取用戶認(rèn)證元數(shù)據(jù)和其它裝置元數(shù)據(jù)。在步驟330 “I/O命令解碼模塊定位用戶認(rèn)證元數(shù)據(jù)偏移并讀取裝置元數(shù)據(jù)”中從閃速存儲(chǔ)器190讀取裝置元數(shù)據(jù)298之后,控制繼續(xù)進(jìn)行至步驟340 “ME受保護(hù)裝置管理器將裝置元數(shù)據(jù)存儲(chǔ)在安全存儲(chǔ)設(shè)備中”。例如,ME受保護(hù)裝置管理器235可將包括SATA存儲(chǔ)裝置180的用戶認(rèn)證憑證的裝置元數(shù)據(jù)存儲(chǔ)在閃速存儲(chǔ)器190的裝置元數(shù)據(jù)298中以便供可管理性引擎(ME) 130稍后訪問(wèn)。然后,控制繼續(xù)進(jìn)行至步驟350 “ME受保護(hù)裝置管理器等待發(fā)出可管理性操作命令”。例如,ME受保護(hù)裝置管理器235等待諸如解鎖命令的可管理性操作命令以便訪問(wèn)SATA存儲(chǔ)裝置180。當(dāng)接收到可管理性操作命令時(shí),ME受保護(hù)裝置管理器235可訪問(wèn)所存儲(chǔ)的元數(shù)據(jù)以獲得訪問(wèn)SATA存儲(chǔ)裝置180所需的用戶認(rèn)證憑證和/或其它信息。圖4是根據(jù)本發(fā)明一個(gè)實(shí)施例在接收到解鎖通過(guò)加密、用戶身份認(rèn)證和密碼保護(hù)方案進(jìn)行保護(hù)的裝置的命令時(shí)執(zhí)行的方法的流程圖。將把圖4中的方法作為由圖2中的系統(tǒng)的組件來(lái)執(zhí)行而加以描述,但是該方法不限于這樣的實(shí)現(xiàn)。圖4中提供了方法流程的兩個(gè)實(shí)例,這取決于解鎖受保護(hù)裝置的請(qǐng)求的起源。遠(yuǎn)程解鎖方框402中所包含的方法步驟涉及處理遠(yuǎn)程解鎖命令,例如經(jīng)由諸如OOB通信信道168的安全通信信道從管理控制臺(tái)166接收的解鎖命令。USB解鎖方框418中所包含的方法步驟涉及結(jié)合存儲(chǔ)令牌的USB裝置來(lái)處理解鎖命令以解鎖存儲(chǔ)裝置。用于處理遠(yuǎn)程解鎖命令的遠(yuǎn)程解鎖方框402中的方法步驟從步驟404 “管理控制臺(tái)對(duì)SATA裝置觸發(fā)遠(yuǎn)程解鎖請(qǐng)求”開始。管理控制臺(tái)166可響應(yīng)于企業(yè)管理政策而發(fā)起該請(qǐng)求,或者管理控制臺(tái)166可響應(yīng)于來(lái)自可管理性引擎(ME)130的應(yīng)當(dāng)解鎖諸如SATA存儲(chǔ)裝置180的裝置的通知而行動(dòng)。在鍵盤處不存在任何用戶時(shí)、在存在用戶但用戶不能夠成功地通過(guò)平臺(tái)的認(rèn)證時(shí)、在平臺(tái)處于低功率狀態(tài)(例如,高級(jí)配置電源接口(ACPI) Sx功率狀態(tài)SI至S5之一)時(shí)、在系統(tǒng)經(jīng)由有線或無(wú)線網(wǎng)絡(luò)連接或位于公司防火墻之外但裝置不可訪問(wèn)時(shí)、以及在系統(tǒng)的主機(jī)操作系統(tǒng)發(fā)生故障時(shí)的情況下,管理控制臺(tái)166觸發(fā)經(jīng)由可管理性引擎(ME) 130和芯片組/安全分區(qū)120來(lái)解鎖加密的SATA裝置的請(qǐng)求??刂茝牟襟E404 “管理控制臺(tái)對(duì)SATA裝置觸發(fā)遠(yuǎn)程解鎖請(qǐng)求”繼續(xù)進(jìn)行至步驟406“管理控制臺(tái)連接到安全分區(qū);發(fā)送包含令牌-I和裝置密碼的盤解鎖命令”。管理控制臺(tái)166可利用諸如OOB通信信道168的獨(dú)立地安全且加密的信道來(lái)發(fā)送安全命令,安全命令向由芯片組/安全分區(qū)120提供的嵌入式安全性子系統(tǒng)指示解鎖操作。當(dāng)在管理控制臺(tái)166與芯片組/安全分區(qū)120之間建立諸如OOB通信信道168的安全通信信道時(shí),身份管理固件239利用Kerberos認(rèn)證來(lái)認(rèn)證管理控制臺(tái)166和可管理性引擎(ME) 130。如果由可管理性引擎(ME)130發(fā)起遠(yuǎn)程解鎖請(qǐng)求,那么在建立安全通信信道之后,管理控制臺(tái)166可獲得用戶憑證,例如與平臺(tái)100相關(guān)聯(lián)的用戶的用戶名和密碼。如果由管理控制臺(tái)166發(fā)起遠(yuǎn)程解鎖請(qǐng)求,那么可對(duì)平臺(tái)100使用管理員用戶憑證。管理控制臺(tái)166利用這些用戶憑證來(lái)從管理數(shù)據(jù)庫(kù)266獲得裝置的相關(guān)聯(lián)的密碼(例如,裝置180密碼266B)以及用于解密裝置的令牌(例如,令牌-I 266A)。
在步驟406 “管理控制臺(tái)連接到安全分區(qū);發(fā)送包含令牌-I和裝置密碼的盤解鎖命令”中,裝置密碼包含在解鎖命令中,以使得可利用裝置密碼來(lái)解鎖裝置。通過(guò)在命令中包含令牌-1,可在例如裝置元數(shù)據(jù)298中標(biāo)識(shí)用戶包裝密鑰/裝置包裝密鑰。用戶包裝密鑰/裝置包裝密鑰可用于解密加密的存儲(chǔ)裝置的塊,包括包含裝置加密密鑰184的元數(shù)據(jù)182。從步驟406 “管理控制臺(tái)連接到安全分區(qū);發(fā)送包含令牌-I和裝置密碼的盤解鎖命令”,控制繼續(xù)進(jìn)行至步驟408 “ME受保護(hù)裝置管理器驗(yàn)證源自可信控制臺(tái)的命令”??衫迷诠芾砜刂婆_(tái)166與芯片組/安全分區(qū)120之間建立安全通信信道所必需的Kerberos認(rèn)證憑證來(lái)驗(yàn)證命令源自可信管理控制臺(tái)166。然后,控制繼續(xù)進(jìn)行至步驟410“ME受保護(hù)裝置管理器利用令牌-I來(lái)解開裝置元數(shù)據(jù)中的DEK的副本”。如上所述,一旦受保護(hù)裝置管理器235訪問(wèn)裝置180密碼266B以解鎖SATA存儲(chǔ)裝置180,受保護(hù)裝置管理器235便可制作存儲(chǔ)在閃速存儲(chǔ)器190的裝置元數(shù)據(jù)298中的裝置包裝密鑰的副本。裝置包裝密鑰可用于解開包含在附連到平臺(tái)的每個(gè)SATA裝置的裝置元數(shù)據(jù)中的裝置加密密鑰。一旦ME受保護(hù)裝置管理器235獲得加密的存儲(chǔ)裝置的裝置加密密鑰,控制便繼續(xù)進(jìn)行至步驟412“ME安全性/密鑰管理固件將DEK寫入到加密引擎的對(duì)應(yīng)于SATA裝置的鍵槽寄存器中”。如發(fā)明人 Ned Smith 的題為 “Enforcing Use of Chipset Key ManagementServices for Encrypted Storage Devices” 的專利申請(qǐng) 12/319210 中所描述(上文將該專利申請(qǐng)以引用的方式結(jié)合于本文),裝置加密密鑰可存儲(chǔ)在加密引擎150內(nèi)的鍵槽寄存器中。然后,當(dāng)訪問(wèn)裝置時(shí),加密引擎150利用來(lái)自對(duì)應(yīng)鍵槽寄存器的存儲(chǔ)的裝置加密密鑰來(lái)解密存儲(chǔ)在對(duì)應(yīng)裝置上的數(shù)據(jù)。在步驟412 “ME安全性/密鑰管理固件將DEK寫入到加密引擎的對(duì)應(yīng)于SATA裝置的鍵槽寄存器”中使裝置加密密鑰可供加密引擎150訪問(wèn)之后,控制繼續(xù)進(jìn)行至步驟414 “ME受保護(hù)裝置管理器執(zhí)行可管理性操作(其可包括引導(dǎo)OS)”。例如,響應(yīng)于遠(yuǎn)程解鎖命令,ME受保護(hù)裝置管理器235解鎖裝置,這可包括提供裝置密碼以解鎖裝置并利用加密引擎150來(lái)解密加密裝置的塊。如果通過(guò)主機(jī)軟件進(jìn)一步加密裝置,那么可管理性操作可能需要管理控制臺(tái)166與可信的主機(jī)軟件通信以進(jìn)一步解密裝置。響應(yīng)于USB解鎖命令,ME受保護(hù)裝置管理器235類似地解鎖裝置,包括利用裝置密碼來(lái)解鎖裝置并利用加密引擎150來(lái)解密加密裝置的塊。取決于所處理的特定可管理性操作命令,可重新引導(dǎo)平臺(tái),包括引導(dǎo)主機(jī)操作系統(tǒng)。在步驟414 “ME受保護(hù)裝置管理器執(zhí)行可管理性操作(其可包括引導(dǎo)OS)”中執(zhí)行可管理性操作之后,控制繼續(xù)進(jìn)行至步驟416 “ME受保護(hù)裝置管理器重設(shè)平臺(tái)而導(dǎo)致SATA裝置再次變成鎖定”。ME受保護(hù)裝置管理器235執(zhí)行參考圖3所描述的步驟以重設(shè)系統(tǒng),由此導(dǎo)致再次鎖定存儲(chǔ)裝置。如上所述,圖4還包括利用USB解鎖命令來(lái)手動(dòng)解鎖裝置的方法步驟。用于處理USB解鎖命令的USB解鎖方框418中的方法步驟從步驟420 “BIOS應(yīng)用提示用戶插入包含令牌-2的USB裝置”開始。一旦系統(tǒng)啟動(dòng),BIOS應(yīng)用便提示用戶插入包含令牌-2的USB裝置以使得用戶能夠訪問(wèn)諸如SATA存儲(chǔ)裝置180的裝置。例如,如果用戶不能提供訪問(wèn)裝置的密碼,那么便可能提供這樣的BIOS提示??刂评^續(xù)進(jìn)行至步驟422 “BIOS讀取令牌-2并經(jīng)由HECI/DHCI將它發(fā)送給ME受保護(hù)裝置管理器”。BIOS應(yīng)用讀取由用戶提供的令牌-2并經(jīng)由HECI Illb將令牌-2發(fā)送給ME受保護(hù)裝置管理器235。然后,控制繼續(xù)進(jìn) 行至步驟424 “ME受保護(hù)裝置管理器利用令牌-2來(lái)解開裝置元數(shù)據(jù)中的DEK的副本”。如上所述,一旦受保護(hù)裝置管理器235訪問(wèn)了解鎖令牌以解鎖SATA存儲(chǔ)裝置180,受保護(hù)裝置管理器235便可制作存儲(chǔ)在諸如閃速存儲(chǔ)器190數(shù)據(jù)區(qū)198的裝置元數(shù)據(jù)中的裝置包裝密鑰(DWK)的副本。DWK可用于解密包含在附連到平臺(tái)的每個(gè)SATA裝置的裝置元數(shù)據(jù)中的DEK0在步驟412 “ME安全性/密鑰管理固件將DEK寫入到加密引擎的對(duì)應(yīng)于SATA裝置的鍵槽寄存器”中使裝置加密密鑰可供加密引擎150訪問(wèn)之后,控制如上所述那樣地繼續(xù)進(jìn)行。圖2、圖3和圖4中的系統(tǒng)使得能夠在無(wú)需主機(jī)操作系統(tǒng)參與的情況下解鎖裝置。如果希望在認(rèn)證系統(tǒng)的用戶的憑證之后才允許訪問(wèn)附連到系統(tǒng)的任何裝置,那么必需有特殊考慮。該認(rèn)證通常是在引導(dǎo)系統(tǒng)時(shí)進(jìn)行的,以使得在沒(méi)有重新引導(dǎo)系統(tǒng)的情況下動(dòng)態(tài)附連的裝置省略對(duì)用戶的認(rèn)證憑證的確認(rèn)。優(yōu)選的是,可認(rèn)證用戶對(duì)熱插入裝置的訪問(wèn),但重新引導(dǎo)系統(tǒng)以確認(rèn)用戶的憑證則過(guò)于繁重。使得能夠?qū)Υ鎯?chǔ)裝置的動(dòng)態(tài)附連進(jìn)行認(rèn)證可用于例如確保由授權(quán)的用戶執(zhí)行作為RAID陣列的一部分的存儲(chǔ)裝置的動(dòng)態(tài)替換。在利用ATA命令鎖定或加密的裝置中存在類似的問(wèn)題。ATA鎖定或ATA加密的裝置由BIOS在系統(tǒng)啟動(dòng)時(shí)解鎖,并且因而不能熱插入到系統(tǒng)中。重新引導(dǎo)系統(tǒng)對(duì)于在可訪問(wèn)裝置上的數(shù)據(jù)之前解鎖或解密裝置是必需的。圖5A和5B的系統(tǒng)使得能夠在認(rèn)證系統(tǒng)的用戶的憑證時(shí)調(diào)節(jié)對(duì)熱插入裝置的訪問(wèn)。可解鎖和/或解密熱插入裝置,并且可確認(rèn)用戶的憑證,而無(wú)需重新引導(dǎo)系統(tǒng),即使利用ATA命令鎖定或加密裝置。圖5A和5B的系統(tǒng)需要首先認(rèn)證系統(tǒng)的用戶的憑證才允許訪問(wèn)附連到系統(tǒng)的多個(gè)裝置中的任何裝置。與系統(tǒng)的主機(jī)操作系統(tǒng)隔離的系統(tǒng)的安全分區(qū)攔截指示新裝置附連到系統(tǒng)的事件。在不引導(dǎo)系統(tǒng)的情況下請(qǐng)求用于訪問(wèn)新裝置的第二憑證,認(rèn)證第二憑證,并在認(rèn)證第二憑證之后啟用對(duì)新裝置的訪問(wèn)。將新裝置的熱插入事件從安全分區(qū)遞送到主機(jī)操作系統(tǒng)。請(qǐng)求用于訪問(wèn)新裝置的第二憑證可包括利用到顯示裝置的可信路徑連接來(lái)顯示對(duì)第二憑證的請(qǐng)求并利用用戶輸入裝置來(lái)接收第二憑證。認(rèn)證第一和第二憑證可包括利用可信第三方來(lái)認(rèn)證第一和第二憑證。第二憑證可包括新裝置的密碼,并且啟用對(duì)新裝置的訪問(wèn)可包括利用密碼來(lái)解鎖新裝置。第二憑證可包括用戶標(biāo)識(shí)符,并且啟用對(duì)新裝置的訪問(wèn)可包括向可信第三方提供用戶標(biāo)識(shí)符,并且如果可信第三方認(rèn)證了用戶標(biāo)識(shí)符,那么啟用對(duì)新裝置的訪問(wèn)。圖5A示出根據(jù)本發(fā)明一個(gè)實(shí)施例圖I中的系統(tǒng)在使得能夠動(dòng)態(tài)地附連通過(guò)加密、用戶身份認(rèn)證和密碼保護(hù)方案進(jìn)行保護(hù)的裝置并且動(dòng)態(tài)地重新確認(rèn)用戶認(rèn)證憑證而無(wú)需重新引導(dǎo)時(shí)的進(jìn)一步細(xì)節(jié)??晒芾硇砸鎯?nèi)核531、可管理性引擎公共服務(wù)533、安全性/密鑰管理固件537、I/O模塊內(nèi)核541和SATA虛擬化固件543的操作如參考圖2的系統(tǒng)的對(duì)應(yīng)組件所描述。在可管理性引擎(ME) 130內(nèi),身份管理固件Kerberos客戶端539A與身份管理固件Kerberos服務(wù)器539B交互以認(rèn)證用戶。Kerberos客戶端539A對(duì)密鑰分配中心(例如,圖I的密鑰分配中心164)實(shí)現(xiàn)Kerberos協(xié)議。Kerberos客戶端539A可利用可信1/0固件 536 (如果可用的話)來(lái)利用到顯示裝置的可信路徑連接和用戶輸入裝置而獲得來(lái)自系統(tǒng)的用戶的憑證。Kerberos客戶端539A可向密鑰分配中心164提供用戶憑證并獲得Kerberos票據(jù)以訪問(wèn)諸如Kerberos服務(wù)器539B的Kerberos服務(wù)。一旦接收到指示用于訪問(wèn)裝置的用戶的憑證已通過(guò)認(rèn)證的Kerberos票據(jù),Kerberos服務(wù)器539B便啟用對(duì)SATA存儲(chǔ)裝置180的訪問(wèn)。Kerberos票據(jù)可包括包含諸如圖2的令牌-I 266A的用戶令牌的擴(kuò)展字段,用戶令牌使得能夠生成如上文參考圖2所描述地可用于解開裝置包裝密鑰和裝置加密密鑰的用戶包裝密鑰。Kerberos票據(jù)還可包括包含可用于解鎖裝置的諸如圖2的裝置180密碼266B的裝置密碼的擴(kuò)展字段。在1/0命令解碼模塊140內(nèi),熱插入虛擬化固件545解碼由1/0控制器170接收的熱插入事件,并在處理那些事件之后將熱插入事件轉(zhuǎn)發(fā)給主機(jī)操作系統(tǒng)115。將參考圖5B進(jìn)一步詳細(xì)描述熱插入虛擬化固件545的操作。圖5B是在辨識(shí)裝置的熱插入事件時(shí)由圖5A的系統(tǒng)執(zhí)行的方法的流程圖。在動(dòng)作5. 1,1/0控制器170檢測(cè)SATA熱插入事件,其中SATA存儲(chǔ)裝置180已經(jīng)動(dòng)態(tài)地附連到平臺(tái)100。在動(dòng)作5. 2,熱插入虛擬化固件545攔截?zé)岵迦胧录?,并與SATA虛擬化固件543交互以發(fā)現(xiàn)裝置的屬性。熱插入虛擬化固件545請(qǐng)求從身份管理固件539的Kerberos客戶端539A訪問(wèn)熱插入裝置。如果利用ATA密碼方案、ATA加密、和/或基于芯片組的加密來(lái)鎖定裝置,那么熱插入虛擬化固件545還可通知Kerberos客戶端539A作為用于訪問(wèn)裝置的請(qǐng)求的一部分鎖定SATA存儲(chǔ)裝置180。在動(dòng)作5. 4,Kerberos客戶端539A獲得諸如用戶認(rèn)證憑證的用戶信息。Kerberos客戶端539A可確定用戶的憑證是否本地緩存在可管理性引擎(ME)130內(nèi),例如是否本地緩存在SRAM 122內(nèi)。如果本地緩存了用戶的憑證,那么可省略動(dòng)作5. 4和5. 5。如果不是本地緩存用戶的憑證,那么可經(jīng)由平臺(tái)100上的可信1/0固件536 (如果可用的話)獲得這些用戶認(rèn)證憑證??尚?/0固件536利用可信路徑連接(例如,到顯示裝置的可信路徑連接)來(lái)顯示對(duì)憑證的請(qǐng)求,并利用到用戶輸入裝置(如鍵盤)的可信路徑連接來(lái)接收憑證。在可信1/0固件536在平臺(tái)100上不可用的實(shí)施例中,可向在處理器110上運(yùn)行的主機(jī)代理(未示出)發(fā)送已經(jīng)附連了新裝置的通知。主機(jī)代理可收集用戶的憑證并連接到芯片組/安全分區(qū)120以解鎖裝置并使裝置對(duì)于主機(jī)操作系統(tǒng)115可見(jiàn)。在動(dòng)作5. 5,Kerberos客戶端539A從密鑰分配中心164獲得Kerberos票據(jù)。在一個(gè)實(shí)施例中,Kerberos票據(jù)與SATA存儲(chǔ)裝置180的用戶的解鎖令牌(例如,圖2中的令牌-I 266A)以及屬于用戶的ATA密碼(例如,圖2中的裝置180密碼266B) —起提供。該解鎖令牌和用戶的ATA密碼可從諸如圖I和圖2中的管理控制臺(tái)166的目錄服務(wù)獲得。Kerberos票據(jù)確認(rèn)用戶憑證的真實(shí)性以從Kerberos服務(wù)器539B接收服務(wù)。在一個(gè)實(shí)施例中,Kerberos服務(wù)器539B使得Kerberos客戶端539A能夠訪問(wèn)可管理性引擎(ME) 130內(nèi)的所有其它服務(wù),例如來(lái)自安全性/密鑰管理固件537和受保護(hù)裝置管理器539的服務(wù)。在其它實(shí)施例中,可獲得單獨(dú)的Kerberos票據(jù)以訪問(wèn)由諸如安全性/密鑰管理固件537的其它可管理性引擎(ME) 130組件提供的服務(wù)。在一個(gè)實(shí)施例中,用戶對(duì)于SATA存儲(chǔ)裝置180的解鎖令牌和屬于用戶的ATA密碼作為是Kerberos會(huì)話密鑰的一部分的擴(kuò)展字段進(jìn)行遞送。在動(dòng)作5. 6, Kerberos客戶端539A向Kerberos服務(wù)器539B確認(rèn)用戶的憑證。在備選實(shí)施例中,Kerberos客戶端539A可向密鑰分配中心164直接確認(rèn)用戶的憑證,而無(wú)需 經(jīng)過(guò)諸如Kerberos服務(wù)器539B的本地Kerberos服務(wù)器。例如,Kerberos客戶端539A可獲得Kerberos票據(jù)以訪問(wèn)不同的用戶認(rèn)證服務(wù),例如將在隨后交換中返回令牌_1 266A和裝置180密碼266B的活動(dòng)目錄服務(wù)。在一個(gè)實(shí)施例中,圖I和圖2中的管理控制臺(tái)166可代理到不同用戶認(rèn)證服務(wù)的連接和/或主控用戶認(rèn)證服務(wù)本身。動(dòng)作5. 7至5. 10描述在通過(guò)諸如ATA密碼或ATA加密的固有鎖定機(jī)制保護(hù)熱插入SATA存儲(chǔ)裝置180時(shí)采取的動(dòng)作。如果沒(méi)有通過(guò)諸如ATA密碼或ATA加密的固有鎖定機(jī)制來(lái)保護(hù)裝置,那么步驟5. 7至5. 10將省略。在動(dòng)作5. 7,在利用ATA密碼鎖定了熱插入SATA存儲(chǔ)裝置180的情形中,Kerberos客戶端539A向受保護(hù)裝置管理器535提供用戶的ATA密碼。在動(dòng)作5. 8,受保護(hù)裝置管理器535向1/0命令解碼模塊140的SATA虛擬化固件543提供用戶的ATA密碼。在動(dòng)作5. 9,SATA虛擬化固件543向1/0控制器170發(fā)送ATA命令以解鎖SATA存儲(chǔ)裝置180。在動(dòng)作5. 10,1/0控制器170利用ATA命令來(lái)解鎖SATA存儲(chǔ)裝置180。如上所述,如果通過(guò)加密引擎150加密了 SATA存儲(chǔ)裝置180,那么安全性/密鑰管理固件/Kerberos服務(wù)器537可與身份管理固件/Kerberos客戶端539 —起工作以利用包含在Kerberos票據(jù)的擴(kuò)展字段中的用戶的解鎖令牌來(lái)導(dǎo)出用戶包裝密鑰。用戶包裝密鑰可用于從SATA存儲(chǔ)裝置180訪問(wèn)裝置包裝密鑰和裝置加密密鑰。動(dòng)作5. 11和5. 12描述在通過(guò)加密引擎150加密熱插入SATA存儲(chǔ)裝置180時(shí)采取的動(dòng)作。如果沒(méi)有通過(guò)加密引擎150來(lái)加密熱插入SATA存儲(chǔ)裝置,那么步驟5. 11和5. 12將省略。如果通過(guò)芯片組/安全分區(qū)120加密引擎150來(lái)加密熱插入SATA存儲(chǔ)裝置180,那么在動(dòng)作5. 11, Kerberos客戶端539A可請(qǐng)求安全性/密鑰管理固件537以便對(duì)熱插入SATA存儲(chǔ)裝置180啟用裝置解密。如上文參考圖2所描述,可利用用戶憑證來(lái)獲得裝置加密密鑰。在動(dòng)作5. 12,將裝置加密密鑰184提供給加密引擎150。如上所述,裝置加密密鑰可寫入到加密引擎150的鍵槽寄存器并供加密引擎150用于解密熱插入裝置、SATA存儲(chǔ)裝置180的塊。如果熱插入SATA存儲(chǔ)裝置180還通過(guò)ATA密碼進(jìn)行保護(hù),那么利用上文參考動(dòng)作5. 7至5. 10所描述的用于解鎖SATA存儲(chǔ)裝置180的步驟來(lái)解鎖裝置,然后才可訪問(wèn)存儲(chǔ)在裝置上的裝置加密密鑰。在動(dòng)作5. 13, Kerberos客戶端539A通知熱插入虛擬化固件545已經(jīng)批準(zhǔn)了對(duì)SATA存儲(chǔ)裝置180的訪問(wèn)。如參考動(dòng)作5. 7至5. 10所描述,如果利用ATA密碼來(lái)鎖定SATA存儲(chǔ)裝置180,那么裝置便已解鎖。如參考動(dòng)作5. 11和5. 12所描述,如果由加密引擎150來(lái)加密裝置,那么便已啟用解密。在動(dòng)作5. 14,熱插入虛擬化固件545將熱插入事件遞送給主機(jī)操作系統(tǒng)115。然后,主機(jī)操作系統(tǒng)115訪問(wèn)來(lái)自SATA存儲(chǔ)裝置180的經(jīng)解鎖且經(jīng)解密的數(shù)據(jù)。響應(yīng)于接收到熱插入事件,主機(jī)操作系統(tǒng)115可調(diào)用文件系統(tǒng)以安裝SATA存儲(chǔ)裝置180和/或?qū)ATA存儲(chǔ)裝置180結(jié)合于RAID陣列。在上文參考圖I至圖5B所描述的系統(tǒng)中,在芯片組/安全分區(qū)120內(nèi)由加密引擎150執(zhí)行存儲(chǔ)裝置的加密。此外,上文參考圖I至圖5B描述的系統(tǒng)在與主機(jī)操作系統(tǒng)隔離的系統(tǒng)的安全分區(qū)內(nèi)提供加密和受保護(hù)裝置管理功能性。例如,加密引擎150駐留在芯片組/安全分區(qū)120內(nèi),圖2的受保護(hù)裝置管理器235駐留在芯片組/安全分區(qū)120的可管理性引擎(ME) 130中,并且圖5B的SATA虛擬化固件543和熱插入虛擬化固件545駐留在 芯片組/安全分區(qū)120的I/O命令解碼模塊140內(nèi)。通常,在主機(jī)操作系統(tǒng)和/或BIOS的控制之下運(yùn)行的審計(jì)軟件中捕獲可審計(jì)事件。由于本文描述的管理和加密功能性與主機(jī)操作系統(tǒng)和BIOS隔離,所以不是通過(guò)典型的審計(jì)軟件來(lái)捕獲在安全分區(qū)內(nèi)執(zhí)行的事件。但是,希望捕獲和審計(jì)影響受保護(hù)裝置的管理和存儲(chǔ)數(shù)據(jù)的加密的事件。還希望在受到保護(hù)以免受主機(jī)操作系統(tǒng)和/或BIOS的潛在破壞的環(huán)境中執(zhí)行審計(jì)操作。還優(yōu)選的是在發(fā)生可審計(jì)事件的安全環(huán)境內(nèi)及時(shí)捕獲審計(jì)信息。圖6示出根據(jù)本發(fā)明一個(gè)實(shí)施例圖I中的系統(tǒng)在管理受保護(hù)裝置時(shí)的進(jìn)一步細(xì)節(jié)??晒芾硇砸鎯?nèi)核631、可管理性引擎公共服務(wù)633、受保護(hù)裝置管理器635、安全性/密鑰管理固件637和身份管理固件639的操作如關(guān)于圖2和圖5A的對(duì)應(yīng)組件所描述。在圖6所示的實(shí)施例中,可管理性引擎(ME) 130包括可管理性引擎審計(jì)子系統(tǒng)638,并且I/O命令解碼模塊140包括I/O模塊審計(jì)子系統(tǒng)648。可管理性引擎審計(jì)子系統(tǒng)638和I/O模塊審計(jì)子系統(tǒng)648標(biāo)識(shí)和處理在芯片組/安全分區(qū)120的它們的相應(yīng)組件內(nèi)發(fā)生的可審計(jì)動(dòng)作。由于由I/o命令解碼模塊140準(zhǔn)備I/O到存儲(chǔ)裝置的數(shù)據(jù)并直接與加密引擎150 —起工作以在數(shù)據(jù)寫入到存儲(chǔ)裝置時(shí)加密數(shù)據(jù),所以I/O模塊審計(jì)子系統(tǒng)648捕獲在I/O期間發(fā)生的可審計(jì)事件。相比之下,可管理性引擎(ME) 130不直接涉及到存儲(chǔ)裝置的1/0,并且因此可管理性引擎審計(jì)子系統(tǒng)638捕獲與受保護(hù)裝置的管理有關(guān)的可審計(jì)事件。例如,可管理性引擎審計(jì)子系統(tǒng)638捕獲涉及系統(tǒng)的配置和設(shè)置的事件以管理加密、用戶認(rèn)證、裝置初始化和故障、加密密鑰、偷盜檢測(cè)和其它企業(yè)平臺(tái)管理政策??晒芾硇砸鎸徲?jì)子系統(tǒng)638和I/O模塊審計(jì)子系統(tǒng)648經(jīng)由可管理性引擎控制器接口(ME) 131通信??晒芾硇砸鎸徲?jì)子系統(tǒng)638還可經(jīng)由OOB通信信道168、網(wǎng)絡(luò)控制器160和帶外通信模塊630與管理控制臺(tái)166內(nèi)的遠(yuǎn)程審計(jì)管理服務(wù)640通信。在一個(gè)實(shí)施例中,在審計(jì)政策中定義可審計(jì)事件。審計(jì)政策可定義將生成審計(jì)事件記錄的可審計(jì)事件以及其它可忽略的不可審計(jì)事件。由于審計(jì)在系統(tǒng)內(nèi)發(fā)生的每個(gè)事件會(huì)使系統(tǒng)的性能大大降級(jí),所以利用審計(jì)政策來(lái)根據(jù)組織優(yōu)先級(jí)和政策選擇性地捕獲特別感興趣的事件。在一個(gè)實(shí)施例中,利用審計(jì)位掩碼作為選擇器來(lái)激活和去激活能夠檢測(cè)可審計(jì)事件的不同硬件和/或固件組件。
審計(jì)政策中的事件類型可包括加密系統(tǒng)供應(yīng)/取消供應(yīng)事件;用戶管理事件;裝置管理事件;密鑰管理事件;裝置初始化事件;偷盜檢測(cè)事件;以及裝置故障事件。特定的可審計(jì)事件可包括由位于系統(tǒng)的安全分區(qū)外部的動(dòng)作觸發(fā)的事件,例如由主機(jī)操作系統(tǒng)觸發(fā)的造成安全分區(qū)內(nèi)的活動(dòng)的事件;和/或在安全分區(qū)內(nèi)部發(fā)生的動(dòng)作,例如中斷。外部觸發(fā)的事件可包括啟用或禁用偷盜保護(hù)服務(wù);創(chuàng)建、刪除或修改用戶帳戶;用戶登錄/注銷成功或失??;對(duì)于諸如裝置加密密鑰、裝置包裝密鑰和恢復(fù)密鑰的各種類型的加密密鑰生成或刪除的加密密鑰;配置成用于加密或解密的裝置;作為安全性管理的裝置的裝置轉(zhuǎn)換或取消轉(zhuǎn)換;PASS_THR0UGH的裝置配置;裝置遷移或裝置遷移準(zhǔn)備;裝置加密密鑰(DEK)插入或從加密引擎寄存器刪除;審計(jì)事件政策登記或撤銷登記;平臺(tái)或裝置元數(shù)據(jù)的恢復(fù);本地平臺(tái)令牌的用戶;加密政策的改變,例如密鑰強(qiáng)度的改變、密鑰刷新或加密政策的遠(yuǎn)程配置;經(jīng)過(guò)認(rèn)證和未經(jīng)認(rèn)證的加密之間的轉(zhuǎn)變;裝置解鎖操作;裝置故障。內(nèi)部觸發(fā)的可審計(jì)事件可包括可管理性引擎、I/O命令解碼模塊、加密引擎和/或到安全分區(qū)的接口的自我測(cè)試故障;同盟信息處理標(biāo)準(zhǔn)自我測(cè)試成功或失敗;審計(jì)初始化故障;和/或存儲(chǔ)器故障。
當(dāng)可管理性引擎審計(jì)子系統(tǒng)638或I/O模塊審計(jì)子系統(tǒng)648檢測(cè)到事件時(shí),可確定檢測(cè)的事件是否是在審計(jì)政策中定義的可審計(jì)事件之一。如果檢測(cè)的事件是審計(jì)政策中的可審計(jì)事件之一,那么將該事件標(biāo)識(shí)為可審計(jì)事件。審計(jì)政策可包括為每個(gè)可審計(jì)事件的審計(jì)事件記錄服務(wù)的指令。審計(jì)政策還可指定在無(wú)法記錄可審計(jì)事件的日志時(shí)要采取的動(dòng)作。例如,可管理性引擎審計(jì)子系統(tǒng)638或I/O模塊審計(jì)子系統(tǒng)648可配置成暫?;驈?fù)原(使其效果倒退)無(wú)法將審計(jì)事件記錄寫入到審計(jì)日志的操作。此外,審計(jì)政策可指定耗盡的審計(jì)存儲(chǔ)日志資源的處理,以使得可管理性引擎審計(jì)子系統(tǒng)638或I/O模塊審計(jì)子系統(tǒng)648可配置成覆寫審計(jì)日志或停止將審計(jì)事件記錄寫入到審計(jì)日志。在一個(gè)實(shí)施例中,可管理性引擎審計(jì)子系統(tǒng)638和I/O模塊審計(jì)子系統(tǒng)648中的每個(gè)都為標(biāo)識(shí)的可審計(jì)事件生成審計(jì)事件記錄。將審計(jì)事件記錄寫入到與主機(jī)操作系統(tǒng)隔離的審計(jì)日志。在如圖6所示的實(shí)施例中,可管理性引擎審計(jì)子系統(tǒng)638將可審計(jì)事件寫入到審計(jì)日志610,而I/O模塊審計(jì)子系統(tǒng)將可審計(jì)事件寫入到審計(jì)日志620。在一個(gè)實(shí)施例中,審計(jì)日志610存儲(chǔ)在閃速存儲(chǔ)器的隔離區(qū)域中,例如存儲(chǔ)在圖I的閃速存儲(chǔ)器190的數(shù)據(jù)區(qū)198的隔離區(qū)域中,而審計(jì)日志620則存儲(chǔ)在非易失性存儲(chǔ)器的隔離區(qū)域中,例如存儲(chǔ)在圖I的非易失性存儲(chǔ)器存儲(chǔ)裝置172的隔離區(qū)域中。由于非易失性存儲(chǔ)器比閃速存儲(chǔ)器快,所以在一個(gè)實(shí)施例中,如果非易失性存儲(chǔ)器可用,那么首先將審計(jì)事件記錄寫入到存儲(chǔ)在非易失性存儲(chǔ)器中的審計(jì)日志(在該實(shí)例中為審計(jì)日志620)。由于I/O命令解碼模塊140準(zhǔn)備I/O到存儲(chǔ)裝置的數(shù)據(jù)并且與加密引擎150直接一起工作以在數(shù)據(jù)寫入到存儲(chǔ)裝置時(shí)加密數(shù)據(jù),所以I/O模塊審計(jì)子系統(tǒng)648耦合到存儲(chǔ)在非易失性存儲(chǔ)器中的較快速的審計(jì)日志620以減少處理I/O事件的等待時(shí)間。由于可管理性引擎審計(jì)子系統(tǒng)638不直接涉及1/0,所以可管理性引擎審計(jì)子系統(tǒng)638將審計(jì)事件記錄寫入到存儲(chǔ)在諸如閃速存儲(chǔ)器190的閃速存儲(chǔ)器中的較慢的審計(jì)日志610。當(dāng)審計(jì)日志610和/或?qū)徲?jì)日志620達(dá)到閾值時(shí),可管理性引擎審計(jì)子系統(tǒng)638可通知遠(yuǎn)程審計(jì)管理服務(wù)640為審計(jì)日志服務(wù)。在一個(gè)實(shí)施例中,審計(jì)管理服務(wù)640將審計(jì)日志610和620的內(nèi)容復(fù)制到遠(yuǎn)程存儲(chǔ)設(shè)備并重設(shè)閾值。審計(jì)管理服務(wù)640不會(huì)中斷可管理性引擎審計(jì)子系統(tǒng)638或I/O模塊審計(jì)子系統(tǒng)648的操作,由此繼續(xù)在標(biāo)識(shí)可審計(jì)事件的同時(shí)將審計(jì)事件記錄寫入到它們的相應(yīng)審計(jì)日志610和620。當(dāng)審計(jì)日志620接近閾值時(shí),I/O模塊審計(jì)子系統(tǒng)648經(jīng)由MECI 131通知可管理性引擎審計(jì)子系統(tǒng)638,以使得可管理性引擎審計(jì)子系統(tǒng)638可向?qū)徲?jì)管理服務(wù)640發(fā)送服務(wù)請(qǐng)求。在一個(gè)實(shí)施例中,可管理性引擎審計(jì)子系統(tǒng)638與審計(jì)管理服務(wù)640 —起工作以管理在安全分區(qū)內(nèi)活動(dòng)的所有審計(jì)子系統(tǒng)。當(dāng)諸如I/o模塊審計(jì)子系統(tǒng)648的其它審計(jì)子系統(tǒng)過(guò)載并且無(wú)法處理可審計(jì)事件時(shí),可管理性引擎審計(jì)子系統(tǒng)638可執(zhí)行這些其它審計(jì)子系統(tǒng)的功能??晒芾硇砸鎸徲?jì)子系統(tǒng)638還可為其它審計(jì)子系統(tǒng)的審計(jì)日志服務(wù)。在一個(gè)實(shí)施例中,可管理性引擎審計(jì)子系統(tǒng)638需要登記其它審計(jì)子系統(tǒng)。登記用于通知可管理性引擎審計(jì)子系統(tǒng)638存在由其它審計(jì)子系統(tǒng)保持的本地審計(jì)日志,例如審計(jì)日志620。登記還可用于通知可管理性審計(jì)子系統(tǒng)638是否重新路由離散的可審計(jì)事件以用于處理和/或是否請(qǐng)求審計(jì)日志的服務(wù)。
在一個(gè)實(shí)施例中,可管理性引擎審計(jì)子系統(tǒng)638和I/O模塊審計(jì)子系統(tǒng)648的操作由企業(yè)域特權(quán)利用Kerberos票據(jù)來(lái)加以控制。在一個(gè)實(shí)施例中,標(biāo)識(shí)在系統(tǒng)的安全分區(qū)中執(zhí)行的可審計(jì)事件,其中安全分區(qū)與系統(tǒng)的主機(jī)操作系統(tǒng)隔離。為可審計(jì)事件生成審計(jì)事件記錄,并將審計(jì)事件記錄寫入到與主機(jī)操作系統(tǒng)隔離的審計(jì)日志。在一個(gè)實(shí)施例中,在審計(jì)政策中定義多個(gè)可審計(jì)事件,審計(jì)政策包括為這多個(gè)可審計(jì)事件中的每個(gè)可審計(jì)事件服務(wù)的指令,并且標(biāo)識(shí)可審計(jì)事件包括確定檢測(cè)的事件是否是在審計(jì)政策中定義的多個(gè)可審計(jì)事件之一。審計(jì)日志可以是只可從安全分區(qū)內(nèi)訪問(wèn)的多個(gè)審計(jì)日志中的第一審計(jì)日志。這多個(gè)審計(jì)日志中的每個(gè)審計(jì)日志與主機(jī)操作系統(tǒng)隔離。在一個(gè)實(shí)施例中,確定第一審計(jì)日志是否可用。如果第一審計(jì)日志可用,那么將審計(jì)事件記錄發(fā)送到與第一審計(jì)日志相關(guān)聯(lián)的第一審計(jì)子系統(tǒng),并且第一審計(jì)子系統(tǒng)執(zhí)行將審計(jì)事件記錄寫入到第一審計(jì)日志。如果第一審計(jì)日志不可用,那么將審計(jì)事件記錄發(fā)送到與這多個(gè)審計(jì)日志中的第二審計(jì)日志相關(guān)聯(lián)的第二審計(jì)子系統(tǒng),并且第二審計(jì)子系統(tǒng)執(zhí)行將審計(jì)事件記錄寫入到第二審計(jì)日志。在一個(gè)實(shí)施例中,監(jiān)測(cè)對(duì)第一審計(jì)日志的寫入操作的等待時(shí)間。如果等待時(shí)間達(dá)到預(yù)定閾值,那么將隨后的寫入操作轉(zhuǎn)移到第二審計(jì)子系統(tǒng),以使得可以將隨后寫入操作的隨后審計(jì)事件記錄寫入到第二審計(jì)日志。在另一個(gè)實(shí)施例中,如果等待時(shí)間達(dá)到預(yù)定閾值,那么向第二審計(jì)子系統(tǒng)發(fā)送為第一審計(jì)日志服務(wù)的請(qǐng)求。第二審計(jì)子系統(tǒng)通過(guò)將審計(jì)事件記錄從第一審計(jì)日志移動(dòng)到諸如第三審計(jì)日志的另一位置來(lái)為第一審計(jì)日志服務(wù)。在一個(gè)實(shí)施例中,第二審計(jì)子系統(tǒng)調(diào)度遠(yuǎn)程管理應(yīng)用以便為第三審計(jì)日志服務(wù),遠(yuǎn)程管理應(yīng)用與安全分區(qū)建立安全通信信道,并且遠(yuǎn)程管理應(yīng)用經(jīng)由安全通信信道為第三審計(jì)日志服務(wù)。在一個(gè)實(shí)施例中,從請(qǐng)求系統(tǒng)的安全分區(qū)接收為審計(jì)日志服務(wù)的請(qǐng)求,其中安全分區(qū)與請(qǐng)求系統(tǒng)的主機(jī)操作系統(tǒng)隔離,審計(jì)日志包含在安全分區(qū)中執(zhí)行的可審計(jì)事件的審計(jì)事件記錄,并且審計(jì)日志與請(qǐng)求系統(tǒng)的主機(jī)操作系統(tǒng)隔離。與安全分區(qū)建立安全通信信道;并經(jīng)由安全通信信道為審計(jì)日志服務(wù)。為審計(jì)日志服務(wù)可包括根據(jù)審計(jì)政策處理可審計(jì)事件。
圖7是根據(jù)本發(fā)明一個(gè)實(shí)施例在檢測(cè)到在系統(tǒng)的安全分區(qū)內(nèi)發(fā)生的潛在的可審計(jì)事件時(shí)執(zhí)行的方法的流程圖。在步驟702 “檢測(cè)事件”中檢測(cè)到在諸如芯片組/安全分區(qū)120的安全分區(qū)內(nèi)發(fā)生事件時(shí),控制繼續(xù)進(jìn)行至判定點(diǎn)704“是否是可審計(jì)事件? ”。在判定點(diǎn)704“是否是可審計(jì)事件? ”處,在硬件中編碼的邏輯和/或相應(yīng)的審計(jì)子系統(tǒng)(可管理性引擎審計(jì)子系統(tǒng)638或I/O模塊審計(jì)子系統(tǒng)648)可檢查審計(jì)政策以確定事件是否可審計(jì)。在一個(gè)實(shí)施例中,利用審計(jì)位掩碼來(lái)激活能夠檢測(cè)可審計(jì)事件的不同硬件和/或固件組件。在判定點(diǎn)704 “是否是可審計(jì)事件? ”處對(duì)審計(jì)位掩碼的評(píng)估確定事件是否可審計(jì)。在判定點(diǎn)704“是否是可審計(jì)事件? ”處,如果事件可審計(jì),那么控制繼續(xù)進(jìn)行至步驟706“生成審計(jì)事件記錄”。審計(jì)事件記錄可通過(guò)在硬件中編碼的邏輯和/或相應(yīng)的審計(jì)子系統(tǒng)(可管理性引擎審計(jì)子系統(tǒng)638或I/O模塊審計(jì)子系統(tǒng)648)來(lái)生成。在生成審計(jì)事件記錄之后,控制繼續(xù)進(jìn)行至判定點(diǎn)708 “NVM日志是否可用? ”。如之前所論述,如果非易失性存儲(chǔ)器日志可用,那么優(yōu)選的是將審計(jì)事件記錄寫入到非易失性存儲(chǔ)器以減少與處理事件相關(guān)聯(lián)的等待時(shí)間。在判定點(diǎn)708 “NVM日志是否可用? ”處,如果NVM日志可用,那么控制繼續(xù)進(jìn)行至步驟710 “將事件記錄發(fā)送到I/O模塊審計(jì)子系統(tǒng)”。在步驟710 “將事件記錄發(fā)送到I/O模塊審計(jì)子系統(tǒng)”處,將事件記錄發(fā)送到I/O模塊審計(jì)子系統(tǒng)648。 從步驟710 “將事件記錄發(fā)送到I/O模塊審計(jì)子系統(tǒng)”,控制繼續(xù)進(jìn)行至判定點(diǎn)712 “是否達(dá)到閾值? ”。達(dá)到閾值的實(shí)例是當(dāng)I/O模塊利用率降到低于正常水平和/或?qū)徲?jì)日志變滿時(shí)。當(dāng)達(dá)到閾值時(shí),控制繼續(xù)進(jìn)行至步驟718“將閾值狀態(tài)發(fā)送給可管理性引擎審計(jì)子系統(tǒng)”。例如,當(dāng)I/O模塊利用率降到低于閾值水平時(shí),審計(jì)活動(dòng)可能需要卸載至可管理性引擎審計(jì)子系統(tǒng)638,和/或需要為審計(jì)日志620服務(wù)。當(dāng)執(zhí)行步驟718 “將閾值狀態(tài)發(fā)送給可管理性引擎審計(jì)子系統(tǒng)”時(shí),可管理性引擎審計(jì)子系統(tǒng)638采取合適的動(dòng)作以根據(jù)審計(jì)政策對(duì)達(dá)到閾值進(jìn)行管理。例如,可管理性引擎審計(jì)子系統(tǒng)638可調(diào)度審計(jì)管理服務(wù)640以便為日志服務(wù)和/或?qū)⑦_(dá)到閾值的日志復(fù)制到其它檔案存儲(chǔ)設(shè)備。從步驟718 “將閾值狀態(tài)發(fā)送給可管理性引擎審計(jì)子系統(tǒng)”,控制繼續(xù)進(jìn)行至步驟715 “將事件記錄寫入到審計(jì)日志”,其中通過(guò)可管理性引擎審計(jì)子系統(tǒng)638將造成達(dá)到閾值的審計(jì)事件記錄寫入到日志。從判定點(diǎn)712 “是否達(dá)到閾值? ”,如果沒(méi)有達(dá)到閾值,那么控制繼續(xù)進(jìn)行至步驟715 “將事件記錄寫入到審計(jì)日志”,其中相應(yīng)的審計(jì)子系統(tǒng)將審計(jì)事件記錄寫入到其相應(yīng)的日志。然后,控制繼續(xù)進(jìn)行至步驟714 “執(zhí)行事件”,其中執(zhí)行事件并完成處理可審計(jì)事件。在判定點(diǎn)708“NVM日志是否可用”處,如果NVM日志不可用,那么控制繼續(xù)進(jìn)行至步驟716“將事件記錄發(fā)送到可管理性引擎審計(jì)子系統(tǒng)”。將審計(jì)事件記錄發(fā)送到可管理性引擎審計(jì)子系統(tǒng)638。然后,可管理性引擎審計(jì)子系統(tǒng)638在步驟715 “將事件記錄寫入到審計(jì)日志”中將事件記錄寫入到審計(jì)日志610??刂评^續(xù)進(jìn)行至步驟714 “執(zhí)行事件”,其中執(zhí)行事件并完成處理可審計(jì)事件。在判定點(diǎn)704“是否是可審計(jì)事件? ”處,如果事件不可審計(jì),那么控制繼續(xù)進(jìn)行至步驟714 “執(zhí)行事件”。執(zhí)行事件并完成事件的處理??蓪徲?jì)事件的處理可由在硬件中編碼的邏輯和/或由固件來(lái)執(zhí)行。諸如可管理性引擎(ME)130、I/0命令解碼模塊140和加密引擎150的芯片組/安全分區(qū)120組件的初始化是可審計(jì)事件,它們可編碼到那些相應(yīng)組件的硬件中和/或包含在那些相應(yīng)組件的固件中。類似地,諸如HECI 11 lb、VECI 111c、網(wǎng)絡(luò)控制器160、USB控制器175、I/O控制器170的控制器和接口的硬件和/或固件可包括用于處理可審計(jì)事件的邏輯。在初始配置時(shí)以及在可管理性引擎(ME) 130的組件的操作期間,例如在圖2的安全性/密鑰管理固件237的操作期間,可在可管理性引擎(ME) 130內(nèi)執(zhí)行審計(jì)事件處理。例如,當(dāng)安全性/密鑰管理固件237將裝置加密密鑰(DEK)寫入到加密引擎150的對(duì)應(yīng)寄存器中時(shí),當(dāng)要加密存儲(chǔ)裝置或從加 密引擎150的對(duì)應(yīng)寄存器移除DEK時(shí),當(dāng)禁用加密時(shí),可觸發(fā)審計(jì)事件。當(dāng)數(shù)據(jù)以明碼文本形式從I/O控制器170傳送到加密引擎150時(shí)(對(duì)于寫入操作)以及當(dāng)加密引擎150以密碼文本形式返回?cái)?shù)據(jù)時(shí),也可執(zhí)行審計(jì)事件處理。經(jīng)由I/O控制器170與加密引擎150之間的信道進(jìn)行的審計(jì)事件提供正在對(duì)數(shù)據(jù)進(jìn)行加密的證據(jù),但審計(jì)政策可將審計(jì)這些事件限制為定期符合性測(cè)試。審計(jì)事件處理可在可管理性引擎控制器接口(MECI) 131處執(zhí)行,因?yàn)閷徲?jì)子系統(tǒng)之間的協(xié)調(diào)可經(jīng)由MECI 131通信。I/O命令解碼模塊140的初始配置也經(jīng)由MECI 131執(zhí)行,并將生成可審計(jì)事件。審計(jì)事件處理可通過(guò)經(jīng)由接口 HECI 11 Ib和VECI Illc的來(lái)自處理器110的通信而生成。例如,關(guān)于裝置的鎖定狀態(tài)的ATA安全性命令以及經(jīng)由這些接口傳播到I/O控制器170或USB控制器175的命令產(chǎn)生可審計(jì)事件。此外,關(guān)于用戶認(rèn)證、加密、安全性、密鑰管理和狀態(tài)的HECI命令也是可審計(jì)事件。用于初始化諸如I/O控制器170、USB控制器175和網(wǎng)絡(luò)控制器160的控制器的命令也是可審計(jì)事件。審計(jì)日志存儲(chǔ)和配置命令也是可審計(jì)的,如同與圖6中的遠(yuǎn)程審計(jì)管理服務(wù)640的審計(jì)子系統(tǒng)通信一樣。經(jīng)由USB控制器175和/或I/O控制器170將裝置附連到平臺(tái)100也是可審計(jì)事件。通過(guò)在審計(jì)政策中將特定事件配置成可審計(jì)或不可審計(jì),審計(jì)系統(tǒng)可微調(diào)以平衡性能、存儲(chǔ)容量和安全性。通過(guò)經(jīng)由安全通信信道利用遠(yuǎn)程管理控制臺(tái)和審計(jì)管理服務(wù)管理審計(jì)子系統(tǒng),可保護(hù)審計(jì)信息的完整性。圖8示出根據(jù)本發(fā)明一個(gè)實(shí)施例用于實(shí)現(xiàn)安全分區(qū)以管理諸如利用加密、用戶身份認(rèn)證和密碼保護(hù)方案保護(hù)裝置的動(dòng)作的虛擬機(jī)環(huán)境。如果平臺(tái)800經(jīng)虛擬化,那么它可只包括單個(gè)處理器,但是主機(jī)上的虛擬機(jī)監(jiān)視器(“VMM 830”)可呈現(xiàn)主機(jī)的多個(gè)抽象和/或視圖,以使得主機(jī)的基礎(chǔ)硬件看起來(lái)就像是一個(gè)或多個(gè)獨(dú)立操作的虛擬機(jī)(“VM”)。VMM830能以軟件(例如,作為獨(dú)立程序和/或主機(jī)操作系統(tǒng)的組件)、硬件、固件和/或其任意組合來(lái)實(shí)現(xiàn)。VMM 830管理主機(jī)上的資源分配,并根據(jù)輪替或其它預(yù)定方案按照在各種VM之間循環(huán)所需執(zhí)行上下文切換。本領(lǐng)域普通技術(shù)人員將容易地明白,盡管只示出一個(gè)處理器(“處理器805”),但本發(fā)明的實(shí)施例不限于此,而是也可在虛擬化環(huán)境中使用多個(gè)處理器。盡管只示出兩個(gè)VM分區(qū)(“VM 810”和“VM 820”,此后統(tǒng)稱為“VM”),但這些VM只是說(shuō)明性的,可以在主機(jī)中增加額外的虛擬機(jī)。VM 810和VM 820可分別用作自包含平臺(tái),以運(yùn)行它們自己的“訪客操作系統(tǒng)”(即,由VMM 830主控的操作系統(tǒng),圖中示為“訪客OS811”和“訪客OS 821”,此后統(tǒng)稱為“訪客OS”)和其它軟件(圖中示為“訪客軟件812”和“訪客軟件822”,此后統(tǒng)稱為“訪客軟件”)。每個(gè)訪客OS和/或訪客軟件就像是它在專用計(jì)算機(jī)而不是虛擬機(jī)上運(yùn)行那樣操作。S卩,每個(gè)訪客OS和/或訪客軟件可預(yù)期控制各種事件,并訪問(wèn)平臺(tái)800上的硬件資源。在每個(gè)VM內(nèi),訪客OS和/或訪客軟件可就像它們實(shí)際上是在平臺(tái)800的物理硬件(“主機(jī)硬件840”,其可包括網(wǎng)絡(luò)控制器860)上運(yùn)行一樣表現(xiàn)。本領(lǐng)域普通技術(shù)人員將容易地明白,具有諸如圖I中的可管理性引擎(ME) 130的專用處理器的物理硬件分區(qū)可提供高于虛擬化分區(qū)(如圖8所示)的安全性等級(jí),但是本發(fā)明的實(shí)施例也可在提供不同的安全性等級(jí)的環(huán)境和/或這些環(huán)境的組合中實(shí)現(xiàn)。本領(lǐng)域普通技術(shù)人員還將容易地明白,ME、AMT或PRL平臺(tái)可在虛擬化環(huán)境內(nèi)實(shí)現(xiàn)。例如,VM 820可專用作主機(jī)上的ME分區(qū),而VM 810在主機(jī)上運(yùn)行典型應(yīng)用。在這種情形中,主機(jī)可以或者可以不包括多個(gè)處理器。例如,如果主機(jī)確實(shí)包括兩個(gè)處理器,那么可將VM 820指派給另一處理器,而VM 810 (和主機(jī)上的其它VM)可共享處理器805的資源。另一方面,如果主機(jī)只包括單個(gè)處理器,那么該處理器可為這兩個(gè)VM服務(wù),而VM 820仍可與VMM 830協(xié)作并與主機(jī)上的其它VM隔離。出于簡(jiǎn)化的目的,在可管理性引擎(ME)環(huán)境中描述本發(fā)明的實(shí)施例,但是本發(fā)明的實(shí)施例不限于此。相反,任何時(shí)候提到可管理性引擎、ME、“分區(qū)”、“安全分區(qū)”、“安全性分區(qū)”和/或“管理分區(qū)”時(shí)應(yīng)包括任何物理和/或虛擬分區(qū)(如上所述)。 在啟動(dòng)時(shí)或者當(dāng)將新裝置熱插入到平臺(tái)中時(shí),VMM 830將裝置指派給VM 810或820。為了在虛擬化環(huán)境(例如,在圖8中描述的虛擬化環(huán)境)中在芯片組/安全分區(qū)120內(nèi)執(zhí)行審計(jì),VMM 830管理VM 810和820中的每個(gè)的審計(jì)掩碼簡(jiǎn)要表。當(dāng)將裝置指派給VM810或820時(shí),將VM的相應(yīng)的審計(jì)掩碼簡(jiǎn)要表與芯片組/安全分區(qū)120相關(guān)聯(lián)。每次與芯片組/安全分區(qū)120相關(guān)聯(lián)的VM審計(jì)掩碼簡(jiǎn)要表發(fā)生改變時(shí),VMM 830生成審計(jì)事件記錄。這樣,便在審計(jì)事件記錄中表示發(fā)起可審計(jì)事件的VM 810或820。例如,在審計(jì)事件記錄中標(biāo)識(shí)向裝置發(fā)出存儲(chǔ)I/O命令的VM 810或820。如果將裝置熱插入到平臺(tái)中,那么在審計(jì)事件記錄中標(biāo)識(shí)接收裝置指派的VM 810或820。當(dāng)檢測(cè)到熱插入事件時(shí),I/O命令解碼模塊140可能需要確定是否授權(quán)當(dāng)前與芯片組/安全分區(qū)120相關(guān)聯(lián)的VM 810或820接收裝置指派。在指派裝置并可確定指派給芯片組/安全分區(qū)120的正確的審計(jì)掩碼簡(jiǎn)要表之前,可利用內(nèi)部審計(jì)掩碼簡(jiǎn)要表來(lái)審計(jì)熱插入事件之后的事件直到發(fā)生裝置指派。VMM 830可通過(guò)將當(dāng)前活動(dòng)的審計(jì)掩碼簡(jiǎn)要表寫入到閃速存儲(chǔ)器190來(lái)向芯片組/安全分區(qū)標(biāo)識(shí)當(dāng)前活動(dòng)的VM審計(jì)掩碼簡(jiǎn)要表。閃速存儲(chǔ)器190還用于保存與每個(gè)VM相關(guān)聯(lián)的用戶帳戶元數(shù)據(jù)。當(dāng)利用裝置密碼或裝置加密密鑰來(lái)解鎖存儲(chǔ)裝置時(shí),可執(zhí)行額外的檢查以確保閃速存儲(chǔ)器190中的用戶帳戶元數(shù)據(jù)對(duì)應(yīng)于指派給裝置的VM。VMM 830確保瞬息VM環(huán)境不會(huì)導(dǎo)致驅(qū)動(dòng)器的未經(jīng)授權(quán)的指派。在一個(gè)實(shí)施例中,VMM 830為每個(gè)VM 810和820生成⑶ID (全局唯一 ID)。⑶ID用于閃速存儲(chǔ)器190中的分區(qū)元數(shù)據(jù)。本文公開的機(jī)制的實(shí)施例能以硬件、軟件、固件或這些實(shí)現(xiàn)方法的組合來(lái)實(shí)現(xiàn)。本發(fā)明的實(shí)施例可作為在可編程系統(tǒng)上執(zhí)行的計(jì)算機(jī)程序來(lái)實(shí)現(xiàn),可編程系統(tǒng)包括至少一個(gè)處理器、數(shù)據(jù)存儲(chǔ)系統(tǒng)(包括易失性和非易失性存儲(chǔ)器和/或存儲(chǔ)元件)、至少一個(gè)輸入裝置和至少一個(gè)輸出裝置。可對(duì)輸入數(shù)據(jù)運(yùn)用程序代碼以執(zhí)行本文描述的功能并生成輸出信息。本發(fā)明的實(shí)施例還包括包含用于執(zhí)行本發(fā)明的操作的指令或包含定義本文描述的結(jié)構(gòu)、電路、設(shè)備、處理器和/或系統(tǒng)特征的諸如HDL的設(shè)計(jì)數(shù)據(jù)的機(jī)器可訪問(wèn)介質(zhì)。這些實(shí)施例也可稱為程序
女口
廣叩ο這些機(jī)器可訪問(wèn)存儲(chǔ)介質(zhì)可包括但不限于由機(jī)器或裝置制造或形成的有形微粒布置,包括諸如下列的存儲(chǔ)介質(zhì)硬盤;任何其它類型的盤,包括軟盤、光盤、致密盤只讀存儲(chǔ)器(⑶-ROM)、可重寫致密盤(⑶-RW)和磁光盤;半導(dǎo)體裝置,例如只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)(例如,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM))、可擦除可編程只讀存儲(chǔ)器(EPR0M)、閃速可編程存儲(chǔ)器(FLASH)、電可擦除可編程只讀存儲(chǔ)器(EEPR0M)、磁卡或光卡;或任何其它類型的適于存儲(chǔ)電子指令的介質(zhì)??梢园匆阎绞綄?duì)一個(gè)或多個(gè)輸出裝置運(yùn)用輸出信息。出于本申請(qǐng)的目的,處理系統(tǒng)包括具有處理器的任何系統(tǒng),處理器可以是例如數(shù)字信號(hào)處理器(DSP)、微控制器、專用集成電路(ASIC)或微處理器。 程序能以高級(jí)程序或面向?qū)ο缶幊陶Z(yǔ)言來(lái)實(shí)現(xiàn)以與處理系統(tǒng)通信。如果需要,程序也能以匯編或機(jī)器語(yǔ)言來(lái)實(shí)現(xiàn)。實(shí)際上,本文描述的機(jī)制在范圍方面不限于任何特定的編程語(yǔ)目。在任何情況下,語(yǔ)目可以是編譯或解釋語(yǔ)目。本文介紹了用于管理通過(guò)加密、用戶認(rèn)證和密碼保護(hù)方案進(jìn)行保護(hù)的裝置的方法和系統(tǒng)的實(shí)施例。盡管示出和描述了本發(fā)明的特定實(shí)施例,但對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)說(shuō)顯而易見(jiàn)的是,在不背離隨附權(quán)利要求的范圍的情況下,可進(jìn)行眾多改變、變化和修改。因此,本領(lǐng)域普通技術(shù)人員將意識(shí)到,在不背離本發(fā)明的情況下,可在其更廣方面進(jìn)行改變和修改。隨附權(quán)利要求要在其范圍內(nèi)涵蓋所有落在本發(fā)明真實(shí)范圍和精神內(nèi)的這些改變、變化和修改。
權(quán)利要求
1.一種計(jì)算機(jī)實(shí)現(xiàn)的方法,包括 接收將耦合到系統(tǒng)的加密裝置解鎖的請(qǐng)求,其中所述請(qǐng)求由所述系統(tǒng)的安全分區(qū)經(jīng)由在可信遠(yuǎn)程控制臺(tái)與所述安全分區(qū)之間建立的安全通信信道接收,并且所述安全分區(qū)與所述系統(tǒng)的主機(jī)操作系統(tǒng)隔離;以及 所述安全分區(qū)響應(yīng)所述請(qǐng)求而在無(wú)需所述主機(jī)操作系統(tǒng)參與的情況下將所述加密裝置解鎖。
2.如權(quán)利要求I所述的方法,還包括 由所述安全分區(qū)從所述可信遠(yuǎn)程控制臺(tái)接收令牌;以及 利用所述令牌來(lái)解開用于加密所述加密裝置的塊的密鑰。
3.如權(quán)利要求2所述的方法,還包括 從所述加密裝置的安全存儲(chǔ)區(qū)域獲得所述密鑰,其中所述安全存儲(chǔ)區(qū)域?qū)τ谒鲋鳈C(jī)操作系統(tǒng)是隱藏的。
4.如權(quán)利要求I所述的方法,還包括 在將所述加密裝置解鎖之前,確認(rèn)所述請(qǐng)求源自所述可信遠(yuǎn)程控制臺(tái)。
5.如權(quán)利要求I所述的方法,還包括 在將所述加密裝置解鎖之后執(zhí)行管理操作,其中所述請(qǐng)求還指定要執(zhí)行的管理操作;以及 在執(zhí)行所述管理操作之后引導(dǎo)所述主機(jī)操作系統(tǒng)。
6.如權(quán)利要求I所述的方法,其中,當(dāng)所述系統(tǒng)的主機(jī)操作系統(tǒng)發(fā)生故障時(shí),執(zhí)行將所述加密裝置解鎖。
7.如權(quán)利要求I所述的方法,其中,在無(wú)需所述系統(tǒng)的用戶參與的情況下執(zhí)行將所述加密裝置解鎖。
8.如權(quán)利要求I所述的方法,其中, 所述請(qǐng)求包括所述加密裝置的密碼;并且 將所述加密裝置解鎖包括利用所述密碼來(lái)將所述加密裝置解鎖。
9.一種設(shè)備,包括 至少一個(gè)處理器; 與在所述處理器上執(zhí)行的主機(jī)操作系統(tǒng)隔離的安全分區(qū);以及 包括用于在所述安全分區(qū)中執(zhí)行的裝置管理器的指令的存儲(chǔ)器,所述指令執(zhí)行以下步驟 接收將耦合到所述設(shè)備的加密裝置解鎖的請(qǐng)求,其中所述請(qǐng)求由所述安全分區(qū)經(jīng)由在可信遠(yuǎn)程控制臺(tái)與所述安全分區(qū)之間建立的安全通信信道接收,并且所述安全分區(qū)與所述主機(jī)操作系統(tǒng)隔離;以及 響應(yīng)所述請(qǐng)求而在無(wú)需所述主機(jī)操作系統(tǒng)參與的情況下將所述加密裝置解鎖。
10.一種計(jì)算機(jī)程序產(chǎn)品,包括 計(jì)算機(jī)可讀存儲(chǔ)介質(zhì);以及 所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的指令,其中所述指令在處理系統(tǒng)的安全分區(qū)中執(zhí)行時(shí)使所述安全分區(qū)執(zhí)行包括以下步驟的操作 接收將耦合到所述處理系統(tǒng)的加密裝置解鎖的請(qǐng)求,其中所述請(qǐng)求由所述安全分區(qū)經(jīng)由在可信遠(yuǎn)程控制臺(tái)與所述安全分區(qū)之間建立的安全通信信道接收,并且所述安全分區(qū)與所述處理系統(tǒng)的主機(jī)操作系統(tǒng)隔離;以及 響應(yīng)所述請(qǐng)求而在無(wú)需所述主機(jī)操作系統(tǒng)參與的情況下將所述加密裝置解鎖。
11.一種計(jì)算機(jī)實(shí)現(xiàn)的方法,包括 在可信遠(yuǎn)程控制臺(tái)與系統(tǒng)的安全分區(qū)之間建立安全通信信道,其中所述安全分區(qū)與所述系統(tǒng)的主機(jī)操作系統(tǒng)隔離;以及 發(fā)送將耦合到所述系統(tǒng)的加密裝置解鎖的請(qǐng)求,其中經(jīng)由所述安全通信信道將所述請(qǐng)求發(fā)送到所述安全分區(qū),并且其中通過(guò)所述安全分區(qū)在無(wú)需所述系統(tǒng)的主機(jī)操作系統(tǒng)參與的情況下將所述加密裝置解鎖。
12.如權(quán)利要求11所述的方法,還包括 在所述請(qǐng)求中將來(lái)自所述可信遠(yuǎn)程控制臺(tái)的令牌提供給所述安全分區(qū),其中所述安全分區(qū)利用所述令牌來(lái)解開用于解密存儲(chǔ)在所述加密裝置上的塊的密鑰。
13.如權(quán)利要求11所述的方法,還包括 在所述請(qǐng)求中提供所述加密裝置的密碼,其中所述安全分區(qū)利用所述密碼來(lái)將所述加密裝置解鎖。
14.如權(quán)利要求11所述的方法,還包括 在所述請(qǐng)求中指定在將所述加密裝置解鎖之后要執(zhí)行的管理操作,其中所述安全分區(qū)在將所述加密裝置解鎖之后執(zhí)行所述管理操作。
15.—種計(jì)算機(jī)實(shí)現(xiàn)的方法,包括 在允許訪問(wèn)附連到系統(tǒng)的多個(gè)裝置中的任何裝置之前認(rèn)證所述系統(tǒng)的用戶的第一憑證; 攔截指示有新裝置附連到所述系統(tǒng)的事件,其中所述攔截由所述系統(tǒng)的安全分區(qū)執(zhí)行,并且所述安全分區(qū)與所述系統(tǒng)的主機(jī)操作系統(tǒng)隔離; 請(qǐng)求用于訪問(wèn)所述新裝置的第二憑證,其中在不引導(dǎo)所述系統(tǒng)的情況下請(qǐng)求所述第二憑證; 認(rèn)證所述第二憑證; 在認(rèn)證所述第二憑證之后啟用對(duì)所述新裝置的訪問(wèn);以及 將所述新裝置的熱插入事件遞送給所述主機(jī)操作系統(tǒng)。
16.如權(quán)利要求15所述的方法,其中, 請(qǐng)求用于訪問(wèn)所述新裝置的所述第二憑證包括利用到顯示裝置的可信路徑連接來(lái)顯示對(duì)所述第二憑證的請(qǐng)求并利用用戶輸入裝置來(lái)接收所述第二憑證。
17.如權(quán)利要求15所述的方法,其中,啟用對(duì)所述新裝置的訪問(wèn)包括對(duì)所述裝置利用固有命令以啟用對(duì)所述新裝置的解密。
18.如權(quán)利要求15所述的方法,其中, 所述第二憑證包括所述新裝置的密碼;并且 啟用對(duì)所述新裝置的訪問(wèn)包括利用所述密碼來(lái)將所述新裝置解鎖。
19.如權(quán)利要求15所述的方法,其中, 所述第二憑證包括用戶標(biāo)識(shí)符;并且 啟用對(duì)所述新裝置的訪問(wèn)包括將所述用戶標(biāo)識(shí)符提供給可信第三方,并且如果所述可信第三方認(rèn)證了所述用戶標(biāo)識(shí)符,則啟用對(duì)所述新裝置的訪問(wèn)。
20.—種設(shè)備,包括 至少一個(gè)處理器; 與在所述處理器上執(zhí)行的主機(jī)操作系統(tǒng)隔離的安全分區(qū);以及 包括用于在所述安全分區(qū)中執(zhí)行的固件的指令的存儲(chǔ)器,所述指令用于執(zhí)行以下步驟 在允許訪問(wèn)附連到系統(tǒng)的多個(gè)裝置中的任何裝置之前認(rèn)證所述系統(tǒng)的用戶的第一憑證; 攔截指示有新裝置附連到所述系統(tǒng)的事件,其中所述攔截由所述安全分區(qū)執(zhí)行; 請(qǐng)求用于訪問(wèn)所述新裝置的第二憑證,其中在不引導(dǎo)所述系統(tǒng)的情況下請(qǐng)求所述第二憑證; 認(rèn)證所述第二憑證; 在認(rèn)證所述第二憑證之后啟用對(duì)所述新裝置的訪問(wèn);以及 將所述新裝置的熱插入事件遞送給所述主機(jī)操作系統(tǒng)。
21.一種計(jì)算機(jī)程序產(chǎn)品,包括 計(jì)算機(jī)可讀存儲(chǔ)介質(zhì);以及 所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的指令,其中所述指令在處理系統(tǒng)的安全分區(qū)中執(zhí)行時(shí)使所述安全分區(qū)執(zhí)行包括以下步驟的操作 在允許訪問(wèn)附連到系統(tǒng)的多個(gè)裝置中的任何裝置之前認(rèn)證所述系統(tǒng)的用戶的第一憑證; 攔截指示有新裝置附連到所述系統(tǒng)的事件,其中所述攔截由所述安全分區(qū)執(zhí)行,并且所述安全分區(qū)與所述系統(tǒng)的主機(jī)操作系統(tǒng)隔離; 請(qǐng)求用于訪問(wèn)所述新裝置的第二憑證,其中在不引導(dǎo)所述系統(tǒng)的情況下請(qǐng)求所述第二憑證; 認(rèn)證所述第二憑證; 在認(rèn)證所述第二憑證之后啟用對(duì)所述新裝置的訪問(wèn);以及 將所述新裝置的熱插入事件遞送給所述主機(jī)操作系統(tǒng)。
22.—種計(jì)算機(jī)實(shí)現(xiàn)的方法,包括 標(biāo)識(shí)在系統(tǒng)的安全分區(qū)中執(zhí)行的可審計(jì)事件,其中所述安全分區(qū)與所述系統(tǒng)的主機(jī)操作系統(tǒng)隔離; 生成所述可審計(jì)事件的審計(jì)事件記錄;以及 將所述審計(jì)事件記錄寫入到審計(jì)日志,其中所述審計(jì)日志與所述主機(jī)操作系統(tǒng)隔離。
23.如權(quán)利要求22所述的方法,其中, 所述審計(jì)日志是多個(gè)審計(jì)日志中的第一審計(jì)日志, 所述多個(gè)審計(jì)日志只可從所述安全分區(qū)內(nèi)訪問(wèn),以及 所述多個(gè)審計(jì)日志中的每個(gè)審計(jì)日志與所述主機(jī)操作系統(tǒng)隔離; 并且所述方法還包括 確定所述第一審計(jì)日志是否可用; 如果所述第一審計(jì)日志可用,則將所述審計(jì)事件記錄發(fā)送到與所述第一審計(jì)日志相關(guān)聯(lián)的第一審計(jì)子系統(tǒng),其中所述第一審計(jì)子系統(tǒng)執(zhí)行將所述審計(jì)事件記錄寫入到所述第一審計(jì)日志;以及 如果所述第一審計(jì)日志不可用,則將所述審計(jì)事件記錄發(fā)送到與所述多個(gè)審計(jì)日志中的第二審計(jì)日志相關(guān)聯(lián)的第二審計(jì)子系統(tǒng),其中所述第二審計(jì)子系統(tǒng)執(zhí)行將所述審計(jì)事件記錄寫入到所述第二審計(jì)日志。
24.一種計(jì)算機(jī)實(shí)現(xiàn)的方法,包括 從請(qǐng)求系統(tǒng)的安全分區(qū)接收為審計(jì)日志服務(wù)的請(qǐng)求,其中所述安全分區(qū)與所述請(qǐng)求系統(tǒng)的主機(jī)操作系統(tǒng)隔離,所述審計(jì)日志包含在所述安全分區(qū)中執(zhí)行的可審計(jì)事件的審計(jì)事件記錄,并且所述審計(jì)日志與所述請(qǐng)求系統(tǒng)的所述主機(jī)操作系統(tǒng)隔離; 與所述安全分區(qū)建立安全通信信道;以及 經(jīng)由所述安全通信信道為所述審計(jì)日志服務(wù)。
全文摘要
用于在虛擬化和非虛擬化環(huán)境中管理通過(guò)加密、用戶認(rèn)證以及密碼保護(hù)和審計(jì)方案進(jìn)行保護(hù)的存儲(chǔ)裝置的方法、設(shè)備、系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品。
文檔編號(hào)H04L9/08GK102884535SQ201080058803
公開日2013年1月16日 申請(qǐng)日期2010年11月29日 優(yōu)先權(quán)日2009年12月21日
發(fā)明者N.M.史密斯, V.C.穆爾, 史蒂文·L·格羅布曼 申請(qǐng)人:英特爾公司