401將配對(duì)ID 904注入到一組現(xiàn)有密鑰 1401-1403中的每一個(gè)密鑰中以形成PID注入密鑰1411-1413的一個(gè)實(shí)施例。在一個(gè)實(shí)施 例中,該密鑰注入模塊1401通過(guò)生成對(duì)密鑰1401-1403的散列以及使用計(jì)數(shù)器MAC密鑰 822的配對(duì)ID 904來(lái)計(jì)算運(yùn)行時(shí)PID注入密鑰1411-1413。在一個(gè)實(shí)施例中,在配對(duì)環(huán)境 期間執(zhí)行該密鑰注入模塊1401,并且該密鑰注入模塊1401具有其在運(yùn)行時(shí)環(huán)境中可用的 數(shù)據(jù)。該密鑰注入模塊1401使用GETKEY(獲取密鑰)指令來(lái)獲取密鑰1401-1403(例如, 獲取每一個(gè)安全PairingEnvironmentKey)。然后,該密鑰注入模塊1401通過(guò)對(duì)由指令和 配對(duì)ID 904返回的密鑰執(zhí)行計(jì)數(shù)器MC密鑰操作來(lái)計(jì)算可掛起環(huán)境中可用的運(yùn)行時(shí)密鑰 1411-1413。
[0094] 通過(guò)使用上述受信任的軟件,可在計(jì)算系統(tǒng)中的多個(gè)組件之間執(zhí)行經(jīng)安全認(rèn)證的 密鑰交換(其過(guò)于復(fù)雜而不能由處理器邏輯自身來(lái)支持)。這允許配對(duì)操作發(fā)生在不安全 的生產(chǎn)設(shè)施中。此外,該系統(tǒng)能夠不需要處理器上的任何存儲(chǔ)而重新使用現(xiàn)有的多功能總 線(xiàn)(如,HECI總線(xiàn)),從而安全地從CSME 813中讀取計(jì)數(shù)器的值。該系統(tǒng)支持不損害安全 性而進(jìn)行翻新,因?yàn)榕c惡意硬件的重新配對(duì)會(huì)破壞全部這些密鑰。當(dāng)在經(jīng)授權(quán)環(huán)境中完成 時(shí),該環(huán)境可注冊(cè)新的配對(duì)與供應(yīng)(provisioning)服務(wù)以獲取供應(yīng)給該平臺(tái)的新密鑰,從 而將該平臺(tái)恢復(fù)到受信任狀態(tài)。
[0095] 本發(fā)明的多個(gè)實(shí)施例可以包括上述各個(gè)步驟??稍诳杀挥糜谑雇ㄓ没?qū)S锰幚砥?執(zhí)行這些步驟的機(jī)器可執(zhí)行指令中使這些步驟具體化。或者,可由包含用于執(zhí)行這些步驟 的硬連線(xiàn)邏輯的專(zhuān)用硬件組件,或可由被編程的計(jì)算機(jī)組件和自定義硬件組件的任何組合 來(lái)執(zhí)行這些步驟。如本文中所述,指令可以指硬件的具體配置,例如,被配置成執(zhí)行某些操 作或具有預(yù)定功能的專(zhuān)用集成電路(ASIC),或者被存儲(chǔ)在被具體化在非瞬態(tài)計(jì)算機(jī)可讀介 質(zhì)中的存儲(chǔ)器中的軟件指令。因此,可使用被存儲(chǔ)在一個(gè)或多個(gè)電子設(shè)備(例如,終端站、 網(wǎng)絡(luò)元件等)上并在其上被執(zhí)行的代碼和數(shù)據(jù)來(lái)執(zhí)行附圖中所示的技術(shù)。此類(lèi)電子設(shè)備使 用諸如非瞬態(tài)計(jì)算機(jī)機(jī)器可讀存儲(chǔ)介質(zhì)(例如,磁盤(pán);光盤(pán);隨機(jī)存取存儲(chǔ)器;只讀存儲(chǔ)器; 閃存設(shè)備;相變存儲(chǔ)器)之類(lèi)的計(jì)算機(jī)機(jī)器可讀介質(zhì)和瞬態(tài)計(jì)算機(jī)機(jī)器可讀通信介質(zhì)(例 如,電、光、聲或其他形式的傳播信號(hào)一一諸如載波、紅外信號(hào)、數(shù)字信號(hào)等)來(lái)(內(nèi)部地和 /或在網(wǎng)絡(luò)上與其他電子設(shè)備之間進(jìn)行)存儲(chǔ)和傳遞代碼和數(shù)據(jù)。另外,此類(lèi)電子設(shè)備一 般包括耦合至一個(gè)或多個(gè)其他組件的一個(gè)或多個(gè)處理器的集合,所述一個(gè)或多個(gè)其他組件 例如是一個(gè)或多個(gè)存儲(chǔ)設(shè)備(非瞬態(tài)機(jī)器可讀存儲(chǔ)介質(zhì))、用戶(hù)輸入/輸出設(shè)備(例如,鍵 盤(pán)、觸摸屏和/或顯示器)以及網(wǎng)絡(luò)連接。該組處理器和其他組件的耦合一般是通過(guò)一個(gè) 或多個(gè)總線(xiàn)和橋(也稱(chēng)為總線(xiàn)控制器)實(shí)現(xiàn)的。存儲(chǔ)設(shè)備和攜帶網(wǎng)絡(luò)話(huà)務(wù)的信號(hào)分別表示 一個(gè)或多個(gè)機(jī)器可讀存儲(chǔ)介質(zhì)和機(jī)器可讀通信介質(zhì)。因此,給定電子設(shè)備的存儲(chǔ)設(shè)備通常 存儲(chǔ)用于在該電子設(shè)備的一個(gè)或多個(gè)處理器的集合上執(zhí)行的代碼和/或數(shù)據(jù)。當(dāng)然,本發(fā) 明的實(shí)施例的一個(gè)或多個(gè)部分可使用軟件、固件和/或硬件的不同組合來(lái)實(shí)現(xiàn)。貫穿此具 體實(shí)施方式,為了進(jìn)行解釋?zhuān)愂隽吮姸嗑唧w細(xì)節(jié)以提供對(duì)本發(fā)明的透徹理解。然而,對(duì)本 領(lǐng)域技術(shù)人員顯而易見(jiàn)的是,沒(méi)有這些具體細(xì)節(jié)中的一些細(xì)節(jié)也可實(shí)施本發(fā)明。在某些實(shí) 例中,并不詳細(xì)描述公知的結(jié)構(gòu)和功能以免使本發(fā)明的主題模糊。因此,本發(fā)明的范圍和精 神應(yīng)根據(jù)所附權(quán)利要求書(shū)來(lái)判斷。
【主權(quán)項(xiàng)】
1. 一種方法,包括: 響應(yīng)于檢測(cè)到處理器恢復(fù)操作而讀取單調(diào)計(jì)數(shù)器值; 生成至少包括所述單調(diào)計(jì)數(shù)器值的數(shù)據(jù)結(jié)構(gòu); 使用第一密鑰生成對(duì)所述數(shù)據(jù)結(jié)構(gòu)的消息認(rèn)證碼(MC); 安全地將所述數(shù)據(jù)結(jié)構(gòu)和所述MAC提供給在所述處理器上被執(zhí)行的模塊; 所述模塊驗(yàn)證所述MAC,將所述單調(diào)計(jì)數(shù)器值與在前一掛起操作期間被存儲(chǔ)的計(jì)數(shù)器 值作比較,并且如果所述單調(diào)計(jì)數(shù)器值與所述在前一掛起操作期間被存儲(chǔ)的計(jì)數(shù)器值匹 配,則加載完成所述恢復(fù)操作所要求的處理器狀態(tài)。2. 如權(quán)利要求1所述的方法,其特征在于,驗(yàn)證所述MC包括:使用所述第一密鑰生成 對(duì)所述數(shù)據(jù)結(jié)構(gòu)的MAC ;以及確認(rèn)所生成的MAC與所提供的MAC相同。3. 如權(quán)利要求1所述的方法,其特征在于,進(jìn)一步包括: 傳送來(lái)自所述模塊的遞增命令,以使所述單調(diào)計(jì)數(shù)器響應(yīng)于掛起或恢復(fù)操作而遞增。4. 如權(quán)利要求3所述的方法,其特征在于,進(jìn)一步包括: 由所述模塊生成現(xiàn)時(shí)數(shù),并且將所述現(xiàn)時(shí)數(shù)傳送到處理器外組件; 所述處理器外組件使用所述單調(diào)計(jì)數(shù)器值和所述現(xiàn)時(shí)數(shù)兩者生成所述數(shù)據(jù)結(jié)構(gòu); 其中,所述模塊將所生成的現(xiàn)時(shí)數(shù)與所述數(shù)據(jù)結(jié)構(gòu)中接收到的現(xiàn)時(shí)數(shù)進(jìn)行比較,其中, 僅在所述所生成的現(xiàn)時(shí)數(shù)與所述數(shù)據(jù)結(jié)構(gòu)中接收到的現(xiàn)時(shí)數(shù)匹配的時(shí)候加載用于恢復(fù)操 作的所述處理器狀態(tài)。5. 如權(quán)利要求4所述的方法,其特征在于,所述模塊在加載所述處理器狀態(tài)之前進(jìn)一 步解密所述處理器狀態(tài)并校驗(yàn)所述處理器狀態(tài)的完整性。6. 如權(quán)利要求4所述的方法,其特征在于,所述處理器外組件包括芯片組可管理性引 擎(CSME),并且其中,所述模塊包括由所述處理器執(zhí)行的掛起/恢復(fù)程序代碼。7. 如權(quán)利要求4所述的方法,其特征在于,進(jìn)一步包括: 實(shí)現(xiàn)加密協(xié)議以在所述處理器和所述處理器外組件之間建立安全連接; 由所述處理器生成所述第一密鑰;以及 在所述安全連接上將所述第一密鑰從所述處理器傳送到所述處理器外組件。8. 如權(quán)利要求7所述的方法,其特征在于,所述加密協(xié)議包括基于增強(qiáng)型隱私 ID(EPID)的密鑰交換協(xié)議。9. 如權(quán)利要求7所述的方法,其特征在于,生成所述第一密鑰包括:使用數(shù)字隨機(jī)數(shù)生 成器(DRNG)生成將用于所述第一密鑰的隨機(jī)數(shù)。10. 如權(quán)利要求7所述的方法,其特征在于,所述處理器和所述處理器外組件兩者都對(duì) 所述第一密鑰的多個(gè)副本進(jìn)行加密,并將所述第一密鑰存儲(chǔ)在安全存儲(chǔ)設(shè)備中。11. 一種方法,包括: 生成第一密鑰; 安全地與處理器外組件共享所述第一密鑰;以及 使用所述第一密鑰以生成可用于標(biāo)識(shí)所述處理器和所述處理器外組件之間的配對(duì)的 配對(duì)ID。12. 如權(quán)利要求11所述的方法,其特征在于,進(jìn)一步包括: 將所述配對(duì)ID存儲(chǔ)在平臺(tái)數(shù)據(jù)庫(kù)中;并且 隨后查詢(xún)所述平臺(tái)數(shù)據(jù)庫(kù)以確定是否向包含所述配對(duì)的計(jì)算機(jī)系統(tǒng)供應(yīng)證實(shí)密鑰。13. 如權(quán)利要求11所述的方法,其特征在于,進(jìn)一步包括: 將所述配對(duì)ID注入包含所述配對(duì)的計(jì)算機(jī)系統(tǒng)中所使用的一個(gè)或多個(gè)其他安全密鑰 中。14. 如權(quán)利要求13所述的方法,其特征在于,所述一個(gè)或多個(gè)其他安全密鑰包括用于 在所述計(jì)算機(jī)系統(tǒng)上建立安全飛地的安全密鑰。15. 如權(quán)利要求11所述的方法,其特征在于,生成所述第一密鑰包括:使用數(shù)字隨機(jī)數(shù) 生成器(DRNG)生成將用于所述第一密鑰的隨機(jī)數(shù)。16. 如權(quán)利要求13所述的方法,其特征在于,注入操作包括:使用第二密鑰生成對(duì)所述 配對(duì)ID和所述一個(gè)和多個(gè)其他安全密鑰的消息認(rèn)證碼。17. -種處理器,包括: 第一邏輯,所述第一邏輯用于執(zhí)行至少一條指令,所述至少一條指令用于在掛起操作 之后的恢復(fù)操作時(shí)加載處理器狀態(tài); 所述至少一條指令用于使所述處理器驗(yàn)證利用第一密鑰對(duì)數(shù)據(jù)結(jié)構(gòu)生成的消息認(rèn)證 碼(MC),所述數(shù)據(jù)結(jié)構(gòu)包含第一單調(diào)計(jì)數(shù)器值,所述至少一條指令使所述處理器將所述第 一單調(diào)計(jì)數(shù)器值與在所述掛起操作期間被存儲(chǔ)的第二計(jì)數(shù)器值作比較,并且在所述第一單 調(diào)計(jì)數(shù)器值匹配所述第二計(jì)數(shù)器值的時(shí)候加載所述恢復(fù)操作所要求的處理器狀態(tài)。18. 如權(quán)利要求17所述的處理器,其特征在于,為了驗(yàn)證所述MAC,所述處理器用于:使 用所述第一密鑰生成對(duì)所述數(shù)據(jù)結(jié)構(gòu)的MAC,并且確認(rèn)所生成的MC與所提供的MC相同。19. 如權(quán)利要求17所述的處理器,其特征在于,所述處理器用于:將遞增命令傳送到處 理器外組件,以使所述單調(diào)計(jì)數(shù)器響應(yīng)于掛起或恢復(fù)操作而遞增。20. 如權(quán)利要求19所述的處理器,其特征在于,所述處理器用于生成現(xiàn)時(shí)數(shù),并且將所 述現(xiàn)時(shí)數(shù)傳送到所述處理器外組件;所述處理器外組件使用所述單調(diào)計(jì)數(shù)器值和所述現(xiàn)時(shí) 數(shù)兩者生成所述數(shù)據(jù)結(jié)構(gòu);其中,所述處理器用于將所生成的現(xiàn)時(shí)數(shù)和所述數(shù)據(jù)結(jié)構(gòu)中接 收到的現(xiàn)時(shí)數(shù)作比較,其中,僅在所述所生成的現(xiàn)時(shí)數(shù)和所述數(shù)據(jù)結(jié)構(gòu)中接收到的現(xiàn)時(shí)數(shù) 匹配的時(shí)候才加載所述處理器狀態(tài)。21. 如權(quán)利要求20所述的處理器,其特征在于,所述處理器在加載所述處理器狀態(tài)之 前進(jìn)一步解密所述處理器狀態(tài)并校驗(yàn)所述處理器狀態(tài)的完整性。22. 如權(quán)利要求20所述的處理器,其特征在于,所述處理器外組件包括芯片組可管理 性引擎(CSME)。23. 如權(quán)利要求20所述的處理器,其特征在于,所述處理器用于:實(shí)現(xiàn)加密協(xié)議以在所 述處理器和所述處理器外組件之間建立安全連接;生成所述第一密鑰;并且在所述安全連 接上將所述第一密鑰從所述處理器傳送到所述處理器外組件。24. 如權(quán)利要求23所述的處理器,其特征在于,所述加密協(xié)議包括基于增強(qiáng)型隱私 ID(EPID)的密鑰交換協(xié)議。25. 如權(quán)利要求23所述的處理器,其特征在于,生成所述第一密鑰包括:使用數(shù)字隨機(jī) 數(shù)生成器(DRNG)生成將用于所述第一密鑰的隨機(jī)數(shù)。26. 如權(quán)利要求23所述的處理器,其特征在于,所述處理器和所述處理器外組件兩者 都對(duì)所述第一密鑰的多個(gè)副本進(jìn)行加密,并將所述第一密鑰存儲(chǔ)在安全存儲(chǔ)設(shè)備中。
【專(zhuān)利摘要】本申請(qǐng)公開(kāi)了一種用于安全地保存并恢復(fù)計(jì)算平臺(tái)狀態(tài)的裝置和方法。一種用于安全地掛起并恢復(fù)處理器狀態(tài)的裝置和方法。例如,方法的一個(gè)實(shí)施例包括:生成數(shù)據(jù)結(jié)構(gòu),該數(shù)據(jù)結(jié)構(gòu)至少包括單調(diào)計(jì)數(shù)器值;使用第一密鑰生成對(duì)該數(shù)據(jù)結(jié)構(gòu)的消息認(rèn)證碼(MAC);向在處理器上被執(zhí)行的模塊安全地提供數(shù)據(jù)結(jié)構(gòu)和MAC;該模塊驗(yàn)證該MAC,將該單調(diào)計(jì)數(shù)器值與在前一個(gè)掛起操作期間被存儲(chǔ)的計(jì)數(shù)器值作比較,并且如果這兩個(gè)計(jì)數(shù)器值匹配,則加載完成恢復(fù)操作所要求的處理器狀態(tài)。方法的另一實(shí)施例包括:由處理器生成第一密鑰;安全地與處理器外組件共享該第一密鑰;并且使用該第一密鑰生成可用于標(biāo)識(shí)該處理器和處理器外組件之間的配對(duì)的配對(duì)ID。
【IPC分類(lèi)】G06F21/60
【公開(kāi)號(hào)】CN105095772
【申請(qǐng)?zhí)枴緾N201510186144
【發(fā)明人】V·R·斯卡拉塔, S·P·約翰遜, C·V·羅扎斯, F·X·麥克金, I·安奈蒂, I·埃里克山德洛維奇, R·M·勒斯列-赫德
【申請(qǐng)人】英特爾公司
【公開(kāi)日】2015年11月25日
【申請(qǐng)日】2015年4月17日
【公告號(hào)】US20150334114