專利名稱:評估令牌實現(xiàn)的計算機系統(tǒng)的機制的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算^/L系統(tǒng);更具體來說,本發(fā)明涉及可在可信或 安全環(huán)境中進行操作的計算機系統(tǒng)。
背景技術(shù):
在本地或遠(yuǎn)程微型計算機上執(zhí)行的不斷增加的金融和個人交易 數(shù)量為建立"可信"或"安全"微處理器環(huán)境提供了推動力。這些 環(huán)境嘗試解決的問題在于保密性的喪失或者數(shù)據(jù)被破壞或濫用。用 戶不希望使他們的私人數(shù)據(jù)公開。他們也不希望他們的數(shù)據(jù)被改變 或者用于不適當(dāng)?shù)慕灰?。這些方面的實例包括無意地發(fā)放病歷卡或 者從網(wǎng)上銀行或其它存儲機構(gòu)電子盜竊資金。類似地,內(nèi)容提供商 設(shè)法防止數(shù)字內(nèi)容(一般來說例如音樂、其它音頻、視頻或者其它類 型的數(shù)據(jù))在未經(jīng)授權(quán)的情況下被復(fù)制??尚怒h(huán)境包括信任根的固定物理令牌(例如可信平臺模塊或TPM) 以及對于在可信執(zhí)行分區(qū)中運行的操作系統(tǒng)和應(yīng)用程序的基于硬件 的加密服務(wù)。但是,對于這類可信平臺的預(yù)期普遍存在,目前沒有 機制允許平臺的用戶/所有者檢-瞼該平臺實際上是否可信。
通過實例來說明本發(fā)明,^旦本發(fā)明不限于附圖范圍,附圖中, 相似參考標(biāo)號表示相似元件,附圖包括圖1是計算機系統(tǒng)的一個實施例的框圖; 圖2說明中央處理器的一個實施例;
圖3是可信或安全軟件環(huán)境的一個實施例的簡圖;圖4是用于執(zhí)行固定令牌的評估的一個實施例的流程圖;以及圖5是用于執(zhí)行固定令牌的評估的一個實施例的事件圖。
具體實施方式
描述一種評估可信計算機系統(tǒng)中的物理(或固定)令牌的機制。根 據(jù)一個實施例中,識別固定令牌。隨后,對用戶進行認(rèn)證,并檢驗 計算機系統(tǒng)的信任度。最后,^f是供關(guān)于計算機系統(tǒng)通過還是未通過 評估的指示。在本發(fā)明的以下詳細(xì)描述中,闡述許多具體細(xì)節(jié),以便更透徹 地理解本發(fā)明。但是,本領(lǐng)域的技術(shù)人員非常清楚,即使沒有這些 具體細(xì)節(jié)也可實施本發(fā)明。在其它情況下,眾所周知的結(jié)構(gòu)和裝置 以框圖形式來表示而不是詳細(xì)表示,以免影響對本發(fā)明的理解。說明中提到"一個實施例"或"實施例"表示結(jié)合該實施例所 述的特定特征、結(jié)構(gòu)或特性包含在本發(fā)明的至少一個實施例中。詞 組"在一個實施例中"在本說明書的各個位置中的出現(xiàn)不一定都表 示同一個實施例。圖1是計算機系統(tǒng)100的一個實施例的框圖。計算機系統(tǒng)100 包括與總線105耦合的中央處理器(CPU)102。在一個實施例中,CPU 102是Pentium 系列處理器中的處理器,其中包括可向Intel Corporation(Santa Clara, California)購買的Pentium II處理器系列、 Penitium III處理器以及Pentium IV處理器?;蛘呖刹捎闷渌麮PU。根據(jù)一個實施例,CPU 102包括支持安全或可信操作的電路或邏 輯元件。例如,CPU 102可包括未示出的安全進入(SENTER)邏輯, 以便支持可發(fā)起可信操作的特殊SENTER指令的運行,這可能削弱 有潛在惡意的不可信代碼訪問計算機系統(tǒng)100中的安全資源的能力。另夕卜,CPU102可包括支持安全操作的安全存儲器。圖2是框圖, 說明CPU 102的一個實施例。CPU 102包括高速緩沖存儲器(高速緩
存)220、嵌入式密鑰230以及分頁表(PT)寄存器240。高速緩存220 的全部或部分可包括或者可轉(zhuǎn)換成專用存儲器(PM)225。根據(jù)一個實 施例,專用存儲器225是具有充分保護的存儲器,它在作為專用存 儲器啟動時阻止任何未經(jīng)授權(quán)裝置(例如除了關(guān)聯(lián)CPU 102之外的任 何裝置)對它進行訪問。在所述實施例中,高速緩存220可具有允許它作為專用存儲器 的選擇性隔離的各種特征。在未示出的另一個實施例中,專用存儲 器225可能是高速緩沖存儲器220外部的并且與其分離,但仍然與 CPU 102關(guān)聯(lián)。密鑰230可能是用于各種數(shù)據(jù)和/或代碼塊的加密、 解密和/或驗證的嵌入式密鑰。PT寄存器240可能是寄存器形式的表, 它識別僅由受保護代碼可訪問的存儲器分頁以及識別哪些存儲器分 頁不受保護。再參照圖1,芯片組107也與總線105耦合。芯片組107包括存 儲控制集線器(MCH)llO。 MCH IIO可包括與主系統(tǒng)存儲器115耦合 的存儲控制器112。主系統(tǒng)存儲器115存儲由CPU 102或者系統(tǒng)100 中包括的其它任何裝置運行的^t據(jù)和指令序列。在一個實施例中, 主系統(tǒng)存儲器115包括動態(tài)隨機存取存儲器(DRAM);但是,主系統(tǒng) 存儲器115可采用其它存儲器類型來實現(xiàn)。附加裝置也可耦合到總 線105 ,例如多個CPU和/或多個系統(tǒng)存儲器。存儲器115可包括受保護存儲器表,它定義存儲器115中的哪 些存儲塊(其中的一個存儲塊是一系列連續(xù)可尋址存儲位置)是直接存 儲器存取(DMA)傳輸不可訪問的。由于對存儲器115的所有訪問都 經(jīng)過MCH 110,所以MCH 110可在允許進行任何DMA傳輸之前檢 查受保護存儲器表。在一個具體實施例中,MCH 110可采用高速緩 存技術(shù)來減少對受保護存儲器表320的所需訪問的次數(shù)。才艮據(jù)一個實施例,MCH 110包括用于各種加密、解密和/或驗證 過程的密鑰116、受保護寄存器120和受保護存儲器表125。在一個 實施例中,受保護存儲器表125在MCH 110中實現(xiàn)為受保護存儲器
表125,并且可刪除存儲器115中的受保護存儲器表。在另一個實施例中,受保護存儲器表125如前面所述實現(xiàn)為存 儲器115中的受保護存儲器表,并且可刪除受保護表125。受保護存 儲器表也可通過未示出的其它方式來實現(xiàn)。不管物理位置,受保護 存儲器表的目的和基本操作實質(zhì)上可能如所述的那樣。在一個實施例中,受保護寄存器120是由可能僅通過CPU 102 中的可信微碼所發(fā)起的命令可寫入的寄存器。受保護微碼是其運行 可能由已授權(quán)指令和/或由未經(jīng)授權(quán)裝置不可控制的硬件來發(fā)起的微 碼。在一個實施例中,受保護寄存器120包括允許或禁止使用受保 護存儲器表的寄存器。受保護寄存器120還可包括標(biāo)識受保護存儲 器表的位置的可寫寄存器,使得該位置不需要硬連線到MCH 110。MCH 110經(jīng)由集線器接口與輸入/輸出控制集線器(ICH)140耦 合。ICH 140提供到計算機系統(tǒng)100中的輸入/輸出(I/0)裝置的接口。 ICH 140可支持通過諸如外設(shè)部件互連(PCI)、加速圖形端口(AGP)、 通用串行總線(USB)、低腳位數(shù)(LPC)總線或者其它任何種類的I/O總 線(未示出)之類的I/0總線的標(biāo)準(zhǔn)I/0操作。根據(jù)一個實施例中,ICH 與讀取器150耦合。在一個實施例中,讀取器150是智能卡讀取器, 它實現(xiàn)為讀取其中存儲有便攜信令的智能卡或者與其接口 。下面詳 細(xì)描述便攜令牌的實現(xiàn)。接口可用于將芯片組107與物理令牌130連接。物理令牌130 可能是保護與創(chuàng)建和維護受保護操作環(huán)境相關(guān)的數(shù)據(jù)的電路。在一 個具體實施例中,物理令牌130包括密鑰(未示出),它可能是用于特 定加密、解密和/或驗證過程的嵌入式密鑰。物理令牌130還可包括用來保存將用于受保護操作環(huán)境的摘要 值及其它信息的存儲空間。在一個實施例中,物理令牌130中的存 儲空間可包括非易失性存儲器(例如閃速存儲器),以便在物理令牌掉 電的情況下保持其內(nèi)容。
安全虛擬機監(jiān)視器130模塊可存儲在系統(tǒng)磁盤或其它大容量存 儲裝置中,以及根據(jù)需要移動或復(fù)制到其它位置。在一個實施例中,在開始之前,可將安全發(fā)起過程監(jiān)視器160移動或復(fù)制到存儲器115 的一個或多個存儲器分頁中。在安全進入過程之后,可創(chuàng)建虛擬機 環(huán)境,在其中,監(jiān)視器160可作為系統(tǒng)中的最有特權(quán)的代碼進行操 作,并且可用來允許或拒絕通過所創(chuàng)建虛擬機中的操作系統(tǒng)或應(yīng)用 程序?qū)δ承┫到y(tǒng)資源的直接訪問。一旦將執(zhí)行控制傳遞給監(jiān)視器160,計算機系統(tǒng)100則進入可信 或安全軟件環(huán)境(或平臺)。圖3 i兌明可信或安全平臺300的一個實施 例。在圖3的實施例中,可信或不可信軟件可能同時被加載,并且 可在單個計算機系統(tǒng)上同時運行。監(jiān)視器160有選擇地允許或阻止 通過一個或多個不可信#:作系統(tǒng)340和不可信應(yīng)用程序310對硬件 資源390的直接訪問。在這個上下文中,"不可信"不一定表示該操作系統(tǒng)或應(yīng)用程 序有意地不正當(dāng)操作,而是表示交互代碼的大小和種類使它不可能行的其它外部代碼。在一個典型實施例中,不可信代碼可能包括當(dāng) 今的個人計算機上存在的常規(guī)操作系統(tǒng)和應(yīng)用程序。監(jiān)視器160還有選擇地允許或阻止從一個或多個可信或安全內(nèi) 核360以及一個或多個可信應(yīng)用程序370對硬件資源380的直接訪 問。這樣一種可信或安全內(nèi)核360以及可信應(yīng)用程序370可能在幫 助執(zhí)行對它執(zhí)行信任分析能力的大小和功能性方面受到限制。可信 應(yīng)用程序370可能是在安全環(huán)境中可執(zhí)行的任何軟件代碼、程序、 例程或者例程集合。因此,可信應(yīng)用程序370可能是各種應(yīng)用程序 或代碼序列,或者可能是較小的應(yīng)用程序、如Java小應(yīng)用程序。通常由才乘作系統(tǒng)340或內(nèi)核360 ^L行的、可能改變系統(tǒng)資源保 護或特許的指令或操作可由監(jiān)視器160來捕獲,并且有選擇地被允 許、部分允許或拒絕。作為一個實例,在一個典型實施例中,通常 由操作系統(tǒng)340或內(nèi)核360所4丸行的改變CPU 102分頁表的指令也 可由瀏覽器160捕獲,這確保該請求沒有嘗試在其虛擬機的域之外 改變分頁特許。圖3還示出便攜令牌390。在一個實施例中,便攜令牌390是智 能卡中結(jié)合的憑證令牌,智能卡可插入智能卡讀取器150中,以便 使用戶能夠檢查計算機系統(tǒng)100是否為可信系統(tǒng)。在另一個實施例 中,便攜令牌390由與為用戶供應(yīng)計算機系統(tǒng)100的實體有密切關(guān) 系的信息技術(shù)(IT)部門來提供。圖4是用于實現(xiàn)執(zhí)行固定令牌130的評估的便攜令牌390的一 個實施例的流程圖。在處理框410,進行固定令牌標(biāo)識過程。這個過 程包括便攜令牌390通過識別固定令牌130來檢驗固定令牌130的 真實性。在一個實施例中,這種標(biāo)識可基于IT管理員在便攜令牌390以 及固定令牌130中提供的共享秘密。在另一個實施例中,標(biāo)識可通 過具有固定令牌130的公開密鑰的便攜令牌390來實現(xiàn)。圖5是事 件圖,說明用于執(zhí)行固定令牌的評估的更詳細(xì)序列。參照圖5,固定令牌標(biāo)識過程在時間tl-t4執(zhí)行。首先,在時間tl, 用戶經(jīng)由智能卡讀取器150將便攜令牌390插入計算機系統(tǒng)100。在 t2,確定固定令牌130是否可信。在O,檢驗固定令牌130的真實性。 在t4,確定固定令牌130是可信的。再參照圖4,在處理框420初始化認(rèn)證會話。在成功地將固定令 牌識別為有效令牌時,便攜令牌390發(fā)起與固定令牌130的認(rèn)證會 話。密碼短i吾可用于這個認(rèn)i正。才艮據(jù)一個實施例,這才羊一種密碼短 語預(yù)先存儲在便攜令牌390中。再參照圖5,在時間t547 4丸行認(rèn)證會話,在其中,在t5發(fā)起會 話,在t6檢驗用戶認(rèn)證,以及在t7對用戶認(rèn)證。在處理框430(圖4), 如果認(rèn)證成功,則便攜令牌390采用計算機系統(tǒng)100的狀態(tài)的規(guī)定 完整性測量(measurement)來檢驗計算機系統(tǒng)100的信任度。
根據(jù)便攜令牌390包括的計算機系統(tǒng)100的完整性測量,令牌390 判定平臺的信任度。在一個實施例中,便攜令牌390將特定PCR值 與其防篡改完整性容器(tamperproof integrity container)中存儲的值進 行比較。再參照圖5,在時間t8-tl0執(zhí)行完整性/信任度過程。在時間t8, 令牌390檢驗系統(tǒng)100的信任度。在t2,完整性測量在t9被檢索, 并在UO轉(zhuǎn)發(fā)給令牌390。再參照圖4,在處理框440,便攜令牌390 可顯示計算機系統(tǒng)100的詢問(challenge)會話成功或失敗。這個過程 如圖5中時間tll和U2所示,在其中,便攜令牌390檢驗完整性測 量,并表明是否已經(jīng)完成檢驗以及是否成功。在一個實施例中,便 攜令牌390包括表明4全驗結(jié)果的顯示器。顯示器可能是LED或者小 LCD屏幕。以上所述的機制使智能卡(例如便攜令牌)和固定令牌(例如TPM) 能夠相互補充,以便增強可信系統(tǒng)的信任度。便攜令牌與固定令牌完整性和信任度。雖然在閱讀以上描述之后,本領(lǐng)域的技術(shù)人員無疑會非常清楚 本發(fā)明的許多變更和修改,但是大家要理解,作為說明所表示和描 述的任何具體實施例決不是要理解為限制。因此,對各種實施例的 細(xì)節(jié)的參考不是要限制權(quán)利要求書的范圍,權(quán)利要求書本身僅列舉 認(rèn)為是本發(fā)明的要點的那些特征。
權(quán)利要求
1.一種計算機系統(tǒng),包括中央處理器(CPU),操作可信環(huán)境;芯片組,具有由通過所述CPU中的可信微碼所發(fā)起的命令可寫入的受保護寄存器;固定令牌,與所述芯片組耦合,保護與創(chuàng)建各維護所述可信操作環(huán)境相關(guān)的數(shù)據(jù);以及便攜令牌,與所述芯片組耦合,檢驗所述可信操作環(huán)境的完整性。
2. 如權(quán)利要求1所述的計算機系統(tǒng),其特征在于,所述便攜令 牌才全驗所述固定令牌的真實性。
3. 如權(quán)利要求2所述的計算機系統(tǒng),其特征在于,所述便攜令 牌檢驗所述可信環(huán)境的用戶的真實性。
4. 如權(quán)利要求3所述的計算機系統(tǒng),其特征在于,所述便攜令 牌通過從所述可信操作環(huán)境中才僉索完整性測量,來檢驗所述可信操 作環(huán)境的完整性。
5. 如權(quán)利要求1所述的計算機系統(tǒng),其特征在于,所述便攜令 牌是智能卡。
6. 如權(quán)利要求5所述的計算機系統(tǒng),其特征在于,還包括與所 述芯片組耦合以便讀取所述智能卡的接口 。
7. 如權(quán)利要求5所述的計算機系統(tǒng),其特征在于,所述便攜令 牌包括表明所述完整性檢驗結(jié)果的顯示器。
8. —種方法,包括便攜令牌識別可信操作環(huán)境中的固定令牌; 檢驗所述可信操作環(huán)境的用戶的真實性;以及 檢驗所述可信操作環(huán)境的完整性。
9. 如權(quán)利要求8所述的方法,其特征在于,識別所述固定令牌 的步驟包括檢驗所述固定令牌的真實性。
10. 如權(quán)利要求8所述的方法,其特征在于,檢驗所述可信操作 環(huán)境的完整性的步驟包括將所述便攜令牌上存儲的值的第一集合與 從所述固定令牌所接收的值的第二集合進行比較。
11. 如權(quán)利要求10所述的方法,其特征在于,還包括顯示表明 所述可信操作環(huán)境是否已經(jīng)被檢驗的指示。
12. —種智能卡,包括檢驗可信計算機系統(tǒng)平臺的完整性的便攜令牌。
13. 如權(quán)利要求12所述的智能卡,其特征在于,所述便攜令牌 檢驗所述固定令牌的真實性。
14. 如權(quán)利要求13所述的智能卡,其特征在于,所述便攜令牌 檢驗所述可信操作環(huán)境的用戶的真實性。
15. 如權(quán)利要求14所述的智能卡,其特征在于,所述便攜令牌 通過從所述可信操作環(huán)境中檢索完整性測量,來檢驗所述可信操作 環(huán)境的完整性。
16. 如權(quán)利要求12所述的智能卡,其特征在于,還包括顯示所 述完整性檢驗結(jié)果的顯示器。
17. —種制造產(chǎn)品,包括包含指令程序的一個或多個計算機可讀 介質(zhì),其中,所述指令程序在由處理單元運行時引起以下操作便攜令牌識別可信操作環(huán)境中的固定令牌; 所述便攜令牌檢驗所述可信操作環(huán)境的用戶的真實性;以及 所述便攜令牌檢驗所述可信操作環(huán)境的完整性。
18. 如權(quán)利要求17所述的制造產(chǎn)品,其特征在于,識別所述固 定令牌的步驟包括檢驗所述固定令牌的真實性。
19. 如權(quán)利要求17所述的制造產(chǎn)品,其特征在于,檢驗所述可 信操作環(huán)境的完整性的步驟包括將所述便攜令牌上存儲的值的第一 集合與從所述固定令牌所接收的值的第二集合進行比較。
20. 如權(quán)利要求17所述的制造產(chǎn)品,其特征在于,所述指令程 序在由處理單元運行時,還使所述便攜令牌顯示表明所述可信操作環(huán)境是否已經(jīng)纟皮^r驗的指示。
全文摘要
根據(jù)一個實施例中,公開一種計算機系統(tǒng)。計算機系統(tǒng)包括中央處理器(CPU),操作可信環(huán)境;芯片組,具有由通過CPU中的可信微碼所發(fā)起的命令可寫入的受保護寄存器;固定令牌,與芯片組耦合,保護與創(chuàng)建和維護可信操作環(huán)境相關(guān)的數(shù)據(jù);以及便攜令牌,與芯片組耦合,檢測可信操作環(huán)境的完整性。
文檔編號G06F21/00GK101213556SQ200680023837
公開日2008年7月2日 申請日期2006年6月28日 優(yōu)先權(quán)日2005年6月28日
發(fā)明者S·艾西 申請人:英特爾公司