專利名稱:保護(hù)客戶端平臺(tái)上的內(nèi)容的制作方法
技術(shù)領(lǐng)域:
本公開總體上涉及數(shù)字內(nèi)容的保護(hù)。
背景技術(shù):
數(shù)字版權(quán)管理是對(duì)科技和娛樂業(yè)的挑戰(zhàn)。通過從互聯(lián)網(wǎng)非法下載電影和音樂文 件,每天會(huì)損失數(shù)百萬美元。到目前為止,實(shí)施的解決方案(例如,內(nèi)容編碼方案和高級(jí)訪 問內(nèi)容系統(tǒng))對(duì)這些數(shù)據(jù)損失沒有提供足夠的保護(hù)。擴(kuò)大這些損失是由嘗試獲得計(jì)算機(jī)系統(tǒng)的控制和/或竊取數(shù)字內(nèi)容的惡意軟件 發(fā)起的復(fù)雜以及進(jìn)化的攻擊。這些攻擊可以呈現(xiàn)各種不同的形式,包括從嘗試使得軟件崩 潰到擾亂程序以用于其它目的。運(yùn)行時(shí)間數(shù)據(jù)的保護(hù)(例如,軟件程序的代碼、配置信息和 /或保護(hù)在主存儲(chǔ)器中以及傳送中的內(nèi)容的密鑰)是對(duì)科技和娛樂業(yè)的特殊的挑戰(zhàn)。
圖1說明了根據(jù)本發(fā)明實(shí)施例的用于提供對(duì)執(zhí)行環(huán)境內(nèi)的軟件部件的保護(hù)的平臺(tái)。圖2說明了根據(jù)本發(fā)明實(shí)施例的使用并行執(zhí)行環(huán)境的平臺(tái)。圖3是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于安全平臺(tái)的架構(gòu)的框圖。圖4是內(nèi)容播放器(例如,圖3的內(nèi)容播放器)的操作的方法的流程圖,其用于在 由圖3的安全平臺(tái)架構(gòu)提供的環(huán)境中工作。圖5是用于與由圖3的安全平臺(tái)架構(gòu)提供的安全環(huán)境一起工作的內(nèi)容服務(wù)器的操 作的方法的流程圖。圖6是用于提供圖3的安全平臺(tái)架構(gòu)的客戶端安全管理層的操作的方法的流程 圖。
具體實(shí)施例方式本發(fā)明的實(shí)施例可以提供一種方法、系統(tǒng)和具有指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其 用于保護(hù)從內(nèi)容服務(wù)器接收的內(nèi)容并且為接收內(nèi)容播放器提供保護(hù)服務(wù)。安全客戶端平臺(tái) 向內(nèi)容服務(wù)器提供其完整性的證明。該完整性的證明證明包括證明證明受保護(hù)的“已知 的”內(nèi)容播放器的存在以及對(duì)抗設(shè)計(jì)用于竊取內(nèi)容的、被稱為“內(nèi)容抓取器(ripper),,的軟 件的保護(hù)。內(nèi)容播放器向受到完整性保護(hù)的“已知的”內(nèi)容播放器提供內(nèi)容密鑰。各種實(shí)施例可以包括一個(gè)或多個(gè)元件。元件可以包括安排來執(zhí)行一些功能的任何 結(jié)構(gòu)。按照期望的設(shè)計(jì)參數(shù)或性能約束的給定的組,每個(gè)元件可以被實(shí)現(xiàn)為硬件、軟件或其任何組合。盡管通過示例在某個(gè)拓?fù)渲杏糜邢迶?shù)量的元件描述了實(shí)施例,但是按照期望的 給定的實(shí)現(xiàn),在備選拓?fù)渲?,?shí)施例可以包括更多或更少的元件。值得注意的是,任何提及 的“一個(gè)實(shí)施例”或“實(shí)施例”意味著結(jié)合實(shí)施例描述的特定特征、結(jié)構(gòu)或特性被包括在至 少一個(gè)實(shí)施例中。在說明書中各種地方中短語“在一個(gè)實(shí)施例中”的出現(xiàn)并非必然都是指 相同的實(shí)施例。圖1說明了根據(jù)本發(fā)明的實(shí)施例的用于保護(hù)從內(nèi)容服務(wù)器接收的內(nèi)容的平臺(tái) 100。平臺(tái)100可以具有執(zhí)行環(huán)境104,其可以是執(zhí)行操作系統(tǒng)(OS) 108的域。OS 108可以 是用于執(zhí)行并控制在執(zhí)行環(huán)境104內(nèi)的其它部件(例如,軟件部件112)的普通操作的部 件,其受到由下面的管理模塊116提供給選定部件的內(nèi)部分區(qū)(intra-partition)存儲(chǔ)器 訪問保護(hù),這將在下文進(jìn)一步詳細(xì)討論。在一些實(shí)施例中,部件112可以是管理級(jí)部件,例如內(nèi)核部件。在各種實(shí)施例中, 內(nèi)核部件可以是服務(wù)(例如,加載程序、調(diào)度程序、存儲(chǔ)器管理器等)、擴(kuò)展/驅(qū)動(dòng)程序(例 如,用于網(wǎng)卡、通用串行總線(USB)接口、磁盤驅(qū)動(dòng)器等)或服務(wù)驅(qū)動(dòng)程序的混合(例如,用 于監(jiān)視代碼的執(zhí)行的入侵檢測(cè)器)。可選地,在實(shí)施例中,部件112可以是應(yīng)用進(jìn)程、線程或 其它用戶空間程序、服務(wù)或庫。如本文使用的,術(shù)語“部件”旨在是指可以使用以獲得期望的結(jié)果的編程邏輯和關(guān) 聯(lián)的數(shù)據(jù)。術(shù)語部件可以與“模塊”或“代理”同義并可以是指編程邏輯,其可以體現(xiàn)在硬 件或固件中或在軟件指令的集合中,可以具有入口和出口點(diǎn),用例如C++、Intel 32位架構(gòu) (IA-32)可執(zhí)行代碼等的編程語言來編寫。軟件部件可以被編譯并且被連接成可執(zhí)行程序,或被安裝在動(dòng)態(tài)鏈接庫中,或可 以用解釋性語言(例如,BASIC)來編寫。將理解,軟件部件可以從其它部件或從它們自身調(diào) 用,和/或可以響應(yīng)于檢測(cè)事件或中斷而被調(diào)用??梢栽跈C(jī)器可存取介質(zhì)中提供軟件指令, 當(dāng)所述指令被訪問時(shí)可以導(dǎo)致機(jī)器進(jìn)行結(jié)合本發(fā)明的實(shí)施例的部件描述的操作或執(zhí)行。機(jī) 器可存取介質(zhì)可以是固件,例如電可擦除可編程只讀存儲(chǔ)器(EEPR0M)或其它可記錄/不 可記錄介質(zhì),例如只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)、磁盤存儲(chǔ)設(shè)備、光盤存儲(chǔ)設(shè)備 等。將進(jìn)一步理解,硬件部件可以由連接邏輯單元(例如,門電路和觸發(fā)器)組成,和/或 可以由可編程單元(例如,可編程門陣列或處理器)組成。在一些實(shí)施例中,本文描述的部 件被實(shí)現(xiàn)為軟件模塊,但仍然可以用硬件或固件來表示。此外,雖然可以說明和/或描述了 僅給定數(shù)目的離散軟件/硬件部件,但是可以在不脫離本發(fā)明實(shí)施例的精神和范圍的情況 下,通過額外的部件或更少的部件來表示這種部件。除了執(zhí)行環(huán)境104的內(nèi)部分區(qū)選定部件之外,管理模塊116還可以仲裁對(duì)硬件資 源118 (例如,一個(gè)或多個(gè)處理器120、網(wǎng)絡(luò)接口控制器(NIC) 124、存儲(chǔ)設(shè)備128和/或存儲(chǔ) 器132)的普通部件的訪問。處理器120可以執(zhí)行平臺(tái)100的部件的編程指令。處理器120可以是單個(gè)和/或 多核心處理器、控制器、專用集成電路(ASIC)等。在實(shí)施例中,存儲(chǔ)設(shè)備128可以代表非易失性存儲(chǔ)設(shè)備,其用于存儲(chǔ)用于平臺(tái)100 上的部件的執(zhí)行的持久性內(nèi)容,例如但不限于操作系統(tǒng)、程序文件、配置文件等。在實(shí)施例 中,存儲(chǔ)設(shè)備128可以包括存儲(chǔ)內(nèi)容136,其可以代表持久性存儲(chǔ)用于部件112的源內(nèi)容。 源內(nèi)容的持久性存儲(chǔ)可以包括例如,可以具有可執(zhí)行文件和/或代碼段的可執(zhí)行的代碼存儲(chǔ)、到其它例程的鏈接(例如,對(duì)動(dòng)態(tài)鏈接庫(DLL)的調(diào)用)、數(shù)據(jù)段等。在各種實(shí)施例中,存儲(chǔ)設(shè)備128可以包括集成和/或外圍存儲(chǔ)設(shè)備,例如但不限于 盤和關(guān)聯(lián)的驅(qū)動(dòng)器(例如,磁的、光的)、通用串行總線(USB)存儲(chǔ)設(shè)備和關(guān)聯(lián)的端口、閃存 存儲(chǔ)器、ROM、非易失性半導(dǎo)體器件等。在各種實(shí)施例中,存儲(chǔ)設(shè)備128可以是物理上為平臺(tái)100的一部分的存儲(chǔ)資源,或 可以由平臺(tái)100訪問而不必是平臺(tái)100的一部分。例如,可以由平臺(tái)100在網(wǎng)絡(luò)140上經(jīng) 由網(wǎng)絡(luò)接口控制器124來訪問存儲(chǔ)設(shè)備128。在加載請(qǐng)求(例如,從加載部件或OS 108的代理)時(shí),管理模塊116和/或OS 108 可以將存儲(chǔ)內(nèi)容136從存儲(chǔ)設(shè)備128加載到存儲(chǔ)器132作為活動(dòng)內(nèi)容144以操作執(zhí)行環(huán)境 104中的部件112。在各種實(shí)施例中,存儲(chǔ)器132可以是易失性存儲(chǔ)設(shè)備,其用于提供用于平臺(tái)100上 的部件的操作的活動(dòng)內(nèi)容。在各種實(shí)施例中,存儲(chǔ)器132可以包括RAM、動(dòng)態(tài)RAM (DRAM)、靜 態(tài)RAM (SRAM)、同步DRAM (SDRAM)、雙倍數(shù)據(jù)速率RAM(DDRRAM)、高速緩存等。在一些實(shí)施例中,存儲(chǔ)器132可以將其中存儲(chǔ)的內(nèi)容組織到多組存儲(chǔ)器單元中。 可以是固定和/或可變大小的這些組織的組可以便于虛擬存儲(chǔ)器管理。存儲(chǔ)單元的組可以 是頁、段或其組合。使用分頁的虛擬存儲(chǔ)器可以便于對(duì)具有較小的物理存儲(chǔ)器頁的大的邏輯/線性 地址空間進(jìn)行仿真。所以,執(zhí)行環(huán)境104可以提供虛擬的執(zhí)行環(huán)境,其中部件可以工作,然 后可以將所述部件映射到存儲(chǔ)器132的物理頁面。由OS 108和/或管理模塊116維護(hù)的 頁表可以將由執(zhí)行環(huán)境104的部件提供的邏輯/線性地址映射到存儲(chǔ)器132的物理地址。在各種實(shí)施例中,可以選擇部件112或其部分以進(jìn)行內(nèi)部分區(qū)以將保護(hù)服務(wù)提供 給部件112。例如,部件112可以代表內(nèi)容播放器,其用于從內(nèi)容服務(wù)器接收內(nèi)容。管理模 塊116可以識(shí)別并隔開部件112的部分以由0S108或其它部件控制對(duì)部件112的訪問。分 區(qū)的部分可以包括特定部件的任何部分,直到全部。分區(qū)的部分可以物理地或虛擬地與在 相同執(zhí)行環(huán)境內(nèi)的其它部件隔離,以使得如果需要的話,可以由下面的平臺(tái)監(jiān)視并限制內(nèi) 部執(zhí)行環(huán)境訪問。內(nèi)部分區(qū)可以在不需要部件112工作在具有獨(dú)立的OS的完全獨(dú)立的執(zhí) 行環(huán)境的情況下,便于例如部件112與0S 108的隔離。內(nèi)部分區(qū)還可以在以某種方式(例 如,由惡意軟件、rootkit、關(guān)鍵運(yùn)行時(shí)間故障等)損害的執(zhí)行環(huán)境104內(nèi),向部件112提供 來自其它部件的相似或更高特權(quán)級(jí)別的保護(hù)。本發(fā)明的實(shí)施例可以提供保護(hù)服務(wù)同時(shí)仍允 許在部件112與執(zhí)行環(huán)境104的其它部件(例如,0S 108)之間許可的交互。由0S 108控 制對(duì)部件112的訪問可以包括各種級(jí)別的訪問限制。在各種實(shí)施例中,用于保護(hù)執(zhí)行環(huán)境內(nèi)的內(nèi)容的部件的內(nèi)部分區(qū)可以用于具有多 執(zhí)行環(huán)境(例如,工作在允許虛擬化技術(shù)(VT)的平臺(tái)中的虛擬機(jī))的平臺(tái)。在這種實(shí)施例 中,管理模塊可以包括虛擬機(jī)監(jiān)視器(VMM)或是虛擬機(jī)監(jiān)視器(VMM)的一部分。在可信計(jì)算組(TCG)標(biāo)準(zhǔn)化團(tuán)體中定義了硬件的平臺(tái)證明和管理程序。由TCG定 義的證明機(jī)制包括提供對(duì)“測(cè)量的代碼”運(yùn)行在客戶端平臺(tái)上的事實(shí)的證明。通過比較當(dāng) 前版本的代碼與原始的“金標(biāo)準(zhǔn)(goldstandard) ”版本的代碼來“測(cè)量”代碼。來自原始的 “金標(biāo)準(zhǔn)”的代碼中的任何變化指示了代碼被篡改,可能由病毒或其它惡意軟件對(duì)其進(jìn)行了 改寫。
8
在TCG標(biāo)準(zhǔn)下為了平臺(tái)證明通常測(cè)量的代碼包括代碼,例如識(shí)別并初始化系統(tǒng) 硬件部件的BIOS代碼以及管理程序代碼。管理程序允許多個(gè)操作系統(tǒng)運(yùn)行在主計(jì)算機(jī)系 統(tǒng)上,并且還被稱為“虛擬機(jī)監(jiān)視器”。對(duì)平臺(tái)證明的測(cè)量通常不會(huì)擴(kuò)展到操作系統(tǒng)或應(yīng)用 程序,因?yàn)楫?dāng)今極多版本的操作系統(tǒng)和應(yīng)用程序是可用的。有如此多可用的版本的操作系 統(tǒng)和應(yīng)用程序,維護(hù)每個(gè)版本代碼的確認(rèn)原始“金標(biāo)準(zhǔn)”副本以與測(cè)量的代碼進(jìn)行比較被認(rèn) 為是難以管理的負(fù)擔(dān)。于2007 年 8 月 2 日遞交的、名稱為 “Secure Vault Service for SoftwareComponents within an Execution Environment,,的專禾丨J申請(qǐng) 11/229,126被轉(zhuǎn)讓 給本申請(qǐng)的受讓人,并通過引用全文將其并入到本文中。專利申請(qǐng)11/229,126描述了可以 用于測(cè)量并保護(hù)在虛擬機(jī)內(nèi)的操作系統(tǒng)和應(yīng)用程序部件的安全保險(xiǎn)庫服務(wù)(Secure Vault Service)。由運(yùn)行在比操作系統(tǒng)高的特權(quán)級(jí)的虛擬機(jī)監(jiān)視器來提供安全保險(xiǎn)庫服務(wù)。因 此,安全保險(xiǎn)庫服務(wù)可以即使在系統(tǒng)中操作系統(tǒng)被損害的情況下保護(hù)系統(tǒng)上的數(shù)據(jù)和程序 部件。提供安全保險(xiǎn)庫服務(wù)的虛擬機(jī)監(jiān)視器在本文被稱為“客戶端安全管理層”。圖2說明了根據(jù)本發(fā)明的實(shí)施例的使用虛擬化來為部件提供并行執(zhí)行環(huán)境和保 護(hù)服務(wù)的平臺(tái)200。在各種實(shí)施例中,平臺(tái)200可以類似于圖1的平臺(tái)100并且基本上可以 與圖1的平臺(tái)100互換。此外,下文所述的元件可以類似于如上所描述的相同命名的元件 并且基本上可以與如上所描述的相同命名的元件互換,并且反之亦然。在該實(shí)施例中,平臺(tái)200上的管理模塊(例如,虛擬機(jī)監(jiān)視器(VMM) 204)可以向一 個(gè)或多個(gè)獨(dú)立運(yùn)行的執(zhí)行環(huán)境或“虛擬機(jī)(VM)”(例如,客戶VM 228和輔助VM 232)呈現(xiàn) 平臺(tái)硬件208 (例如,一個(gè)或多個(gè)處理器212、網(wǎng)絡(luò)接口控制器(NIC) 216、存儲(chǔ)設(shè)備220和/ 或存儲(chǔ)器224)的多個(gè)抽象和/或視圖。輔助VM 232可以用于執(zhí)行從客戶VM 228獨(dú)立地 或安全地分離的代碼,并且可以防止客戶VM 228的部件執(zhí)行可以改變、修改、讀取或影響 輔助VM 232的部件的操作。雖然平臺(tái)200示出了兩個(gè)VM,但是其它實(shí)施例可以使用任何數(shù) 量的VM。在客戶VM 228和輔助VM 232中工作的部件中的每一個(gè)可以如同它們運(yùn)行在專用 計(jì)算機(jī)而不是虛擬機(jī)上一樣工作。也就是說,在客戶VM 228和輔助VM 232中工作的部件 中的每一個(gè)可以期望控制各種事件并且具有對(duì)硬件208的完全訪問。VMM 204可以管理對(duì) 硬件208的VM訪問??梢砸攒浖?例如,作為獨(dú)立程序和/或主機(jī)操作系統(tǒng)的部件)、硬 件、固件和/或其任何組合來實(shí)現(xiàn)VMM 204??蛻鬡M 228可以包括0S 236和部件240。在指定的事件發(fā)生時(shí),VMM204可以識(shí) 別并隔開部件240的不同部分以控制0S 236或其它部件對(duì)分區(qū)部分的訪問。一個(gè)或多個(gè)這 些分區(qū)部分可以用于代表內(nèi)容播放器,其用于從內(nèi)容服務(wù)器接收內(nèi)容。在各種實(shí)施例中,指 定的事件可以是何時(shí)將存儲(chǔ)內(nèi)容244從存儲(chǔ)設(shè)備220加載到存儲(chǔ)器224作為活動(dòng)內(nèi)容248 或者何時(shí)部件240請(qǐng)求保護(hù)。然而,在各種實(shí)施例中,可以額外/可選地使用其它指定的事 件。部件240可以向VMM 204注冊(cè),并且更具體地說,向用于保護(hù)的VMM204的完整性 服務(wù)模塊(ISM)252注冊(cè)。在各種實(shí)施例中,注冊(cè)可以在發(fā)生注冊(cè)事件(例如,周期性地將 活動(dòng)內(nèi)容248加載到存儲(chǔ)器224)時(shí)發(fā)生,和/或以一些其它事件驅(qū)動(dòng)方式發(fā)生。在各種實(shí) 施例中,可以由部件240、VM 228內(nèi)的另一個(gè)部件(例如,0S 236) VMM 204或VM 232的部件來啟動(dòng)注冊(cè)。在接收注冊(cè)時(shí),ISM 252可以與工作在VM 232中的完整性測(cè)量模塊(IMM) 256合 作來認(rèn)證并驗(yàn)證部件240的完整性。部件240的完整性的認(rèn)證和驗(yàn)證可以有助于防止未授 權(quán)的修改和/或惡意的終止,并且可以確保如由管理員、用戶或其它策略所定義的,可以僅 向識(shí)別的部件提供保護(hù)。IMM256可以工作在OS 260的上下文中的VM域232中或工作在獨(dú) 立的硬件中,所以可以很大程度上獨(dú)立于OS 236。通過在VM 228的上下文之外運(yùn)行,IMM 256可以具有不出現(xiàn)在OS 236的上下文中或可能在OS 236的上下文中被損害的準(zhǔn)確并可 靠的存儲(chǔ)器測(cè)量能力。MM 256可以向ISM 252提供對(duì)驗(yàn)證請(qǐng)求的響應(yīng),例如通過、失敗、有條件的通過 (pass w/qualification)、有條件的失敗(fail w/qualification)等。在各種實(shí)施例中, 條件可以反映在通過和失敗之間的完整性驗(yàn)證的程度。IMM 256有效地識(shí)別或認(rèn)證部件及 其數(shù)據(jù),并且保證其在存儲(chǔ)器中具有期望的、正確的形式。在一些實(shí)施例中,活動(dòng)內(nèi)容248可以包括完整性清單,其可以是在部件240的完整 性的驗(yàn)證中使用的信息的集合。在各種實(shí)施例中,完整性清單可以包括一個(gè)或多個(gè)完整性 校驗(yàn)值和/或?qū)潭ㄎ恢玫闹囟ㄎ唬涓采w存儲(chǔ)內(nèi)容244(例如,代碼存儲(chǔ)和/或靜態(tài)的和 /或配置設(shè)置/數(shù)據(jù))。IMM 256可以訪問來自活動(dòng)內(nèi)容248的完整性清單,并且驗(yàn)證部件 240全部或部分地對(duì)應(yīng)于完整性清單。IMM 256可以通過驗(yàn)證在完整性清單結(jié)構(gòu)上的加密 簽名來驗(yàn)證完整性清單自身的可靠性以確保沒有改變其正確形式??梢酝ㄟ^例如逐字節(jié)分 析或通過加密散列分析來完成對(duì)映像的比較。在各種實(shí)施例中,IMM 256可以例如通過直接存儲(chǔ)器訪問(DMA)或直接物理存儲(chǔ) 器訪問來在存儲(chǔ)器224中直接搜索活動(dòng)內(nèi)容248。在各種實(shí)施例中,可以例如通過ISM 252 將部件240的線性地址提供給IMM 256,并且IMM 256可以執(zhí)行虛擬到物理映射以識(shí)別活動(dòng) 內(nèi)容248的物理存儲(chǔ)單元。在實(shí)施例中,VMM 204可以提供向IMM 256提供特殊接口以提 供對(duì)活動(dòng)內(nèi)容248的訪問。在各種實(shí)施例中,可以在當(dāng)部件240正在執(zhí)行時(shí),周期性地和/或以某種其它事件 驅(qū)動(dòng)方式進(jìn)行初始的注冊(cè),對(duì)活動(dòng)內(nèi)容248進(jìn)行完整性測(cè)量。在初始的注冊(cè)請(qǐng)求或?qū)κ录?處理的請(qǐng)求時(shí)的完整性測(cè)量可以有助于基于在其被制造或最后加載時(shí)的內(nèi)容的狀態(tài)來確 定活動(dòng)內(nèi)容248和/或存儲(chǔ)內(nèi)容244的初始狀態(tài)。周期性的或事件驅(qū)動(dòng)的完整性測(cè)量可以 有助于檢測(cè)不適當(dāng)?shù)馗淖兓顒?dòng)內(nèi)容248和/或存儲(chǔ)內(nèi)容244的保護(hù)屬性的攻擊。在2005 年 6 月 30 日遞交的、名稱為 “Signed Manifest for Run-timeVerifixation of Software Program Identity and Integrity,,的美國專利申 it No. 11/173, 851 ;2005 年 12 月 30 日遞交的名稱為"Identifier Associated withmemory Locations for Managing Memory Accesses” 的美國專利申請(qǐng) No. 11/322,669 以及 2006 ip 3 30 H Intra-Partitioning of SoftwareComponents within an Execution Environment”的美國專利申請(qǐng)No. 11/395,488中描述了部件的完整性測(cè)量的其 它細(xì)節(jié),所有所述專利申請(qǐng)通過引用其實(shí)體并入到本文中。再參考圖2,ISM 252可以從MM 256接收反映對(duì)活動(dòng)內(nèi)容248的存儲(chǔ)器中的完整 性和位置的驗(yàn)證的響應(yīng)。如果驗(yàn)證失敗,則ISM 252拒絕請(qǐng)求并可以觸發(fā)警報(bào)。如果驗(yàn)證 通過,則ISM 252可以與存儲(chǔ)器管理器264合作以對(duì)部件240的部分進(jìn)行內(nèi)部分區(qū)以保護(hù)
10服務(wù)。這里,可以在存儲(chǔ)器中的保險(xiǎn)庫或隱藏頁周圍建立保護(hù),所以可以僅由驗(yàn)證的部件和 /或部件自身的全部來訪問它們。雖然圖2說明了執(zhí)行環(huán)境是虛擬分區(qū),但是其它實(shí)施例可以通過其它機(jī)制(例如, 使用服務(wù)處理器、保護(hù)執(zhí)行模式(例如,系統(tǒng)管理模式SMM或安全執(zhí)行模式SMX)和/或嵌 入式微控制器)提供各種執(zhí)行環(huán)境。在各種實(shí)施例中,可以經(jīng)由各種不同類型的分區(qū)將輔 助環(huán)境與主機(jī)環(huán)境隔開,所述分區(qū)包括如上所述的虛擬分區(qū)(例如,虛擬化技術(shù)(VT)方 案中的虛擬機(jī))和/或完全獨(dú)立的硬件分區(qū)(例如,使用活動(dòng)管理技術(shù)(AMT)、“可管理引 擎”(ME)、使用隔離平臺(tái)資源的平臺(tái)資源層(PRL)、系統(tǒng)管理模式(SMM)和/或其它類似的 或相似的技術(shù))。在各種實(shí)施例中,VT平臺(tái)還可以用于實(shí)現(xiàn)AMT、ME和PRL技術(shù)。參考圖1和2如上所描述的平臺(tái)可以用于保護(hù)從內(nèi)容服務(wù)器接收的內(nèi)容并為接收 內(nèi)容播放器提供保護(hù)服務(wù)。圖3是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于安全平臺(tái)300的架構(gòu)的框圖。安全 平臺(tái)300將其完整性的證明提供給遠(yuǎn)程處理系統(tǒng)(例如,內(nèi)容服務(wù)器360)。該完整性的證 明包括證明受保護(hù)的“已知的”內(nèi)容播放器330的存在以及對(duì)被稱為設(shè)計(jì)用于竊取內(nèi)容的 “內(nèi)容抓取器”的軟件的防護(hù)。內(nèi)容服務(wù)器360將加密內(nèi)容隨內(nèi)容密鑰一起提供給受完整性 保護(hù)的“已知的”內(nèi)容播放器330。安全平臺(tái)300包括客戶端安全管理層310,其用于保護(hù) 系統(tǒng)存儲(chǔ)器340中的內(nèi)容和內(nèi)容密鑰。由客戶端安全管理層310將內(nèi)容密鑰僅發(fā)布給其代 碼被驗(yàn)證并確認(rèn)的授權(quán)“已知的”內(nèi)容播放器330。客戶端安全管理層310在用于內(nèi)容播放器的存儲(chǔ)器的保護(hù)部分342中提供對(duì)存儲(chǔ) 器340內(nèi)的內(nèi)容播放器的代碼、數(shù)據(jù)和幀緩沖的保護(hù)。例如,為了由內(nèi)容播放器330來使 用,由操作系統(tǒng)內(nèi)核320分配的保護(hù)代碼344、保護(hù)數(shù)據(jù)346和保護(hù)的幀緩沖存儲(chǔ)器348僅 可以由內(nèi)容播放器330訪問并與其它應(yīng)用程序隔離。客戶端安全管理層310確保不可以通 過截取由內(nèi)容播放器330放入幀緩沖器的幀、讀取存儲(chǔ)器340或從持久性存儲(chǔ)設(shè)備或從網(wǎng) 絡(luò)信道(例如,通信鏈路350)讀取文件來“竊取”內(nèi)容。防止由未授權(quán)的應(yīng)用程序以及由 操作系統(tǒng)訪問用于內(nèi)容播放器的存儲(chǔ)器的保護(hù)部分342。安全平臺(tái)300可以使用如上所描述的專利申請(qǐng)11/229,126的客戶端安全管理層 的功能來測(cè)量并保護(hù)客戶端內(nèi)容播放器330、包括保護(hù)的幀緩沖存儲(chǔ)器348的、由客戶端內(nèi) 容播放器330使用的存儲(chǔ)器340以及存儲(chǔ)在存儲(chǔ)器340中的數(shù)據(jù)(例如,保護(hù)代碼344和 保護(hù)數(shù)據(jù)346)。此外,安全平臺(tái)300使用由客戶端安全管理層310提供的平臺(tái)證明來向內(nèi) 容供應(yīng)者(例如,內(nèi)容服務(wù)器360)確保動(dòng)態(tài)內(nèi)容將在客戶平臺(tái)300上受到保護(hù)。安全平臺(tái)300向遠(yuǎn)程內(nèi)容服務(wù)器360證明即使內(nèi)容的授權(quán)用戶是惡意的或客戶 端平臺(tái)300安裝了惡意軟件,也不可以以未授權(quán)的方式來復(fù)制由遠(yuǎn)程服務(wù)器提供的內(nèi)容。 可以提供該證明,因?yàn)榭蛻舳税踩芾韺?10防止了對(duì)其中存儲(chǔ)了內(nèi)容的存儲(chǔ)器340的未 授權(quán)訪問(使用用于內(nèi)容播放器的存儲(chǔ)器的保護(hù)部分342)。響應(yīng)于所述證明,內(nèi)容服務(wù)器 360將用內(nèi)容密鑰加密的內(nèi)容提供給客戶端平臺(tái)300。由于由客戶端安全管理層310在安全 平臺(tái)300中提供的保護(hù),即使授權(quán)用戶也不能使用內(nèi)容抓取軟件來對(duì)內(nèi)容進(jìn)行非法拷貝。在一個(gè)實(shí)施例中,內(nèi)容播放器330用于在不將用戶限定到特定硬件實(shí)例的情況下 將內(nèi)容密鑰從一個(gè)平臺(tái)轉(zhuǎn)移到另一個(gè)平臺(tái)。例如,如果發(fā)生系統(tǒng)故障,則可以使用該遷移功 能,以使得已知的并驗(yàn)證的內(nèi)容播放器330可以重新安裝在不同的硬件上。這種遷移除了內(nèi)容播放器330的所需的認(rèn)證之外,還需要測(cè)量、驗(yàn)證并認(rèn)證的新硬件平臺(tái)。在另一個(gè)實(shí)施 例中,安全平臺(tái)300包括另一個(gè)授權(quán)并保護(hù)的應(yīng)用程序(未示出),其用于允許將內(nèi)容密鑰 從一個(gè)平臺(tái)上的授權(quán)內(nèi)容播放器330轉(zhuǎn)移到另一個(gè)平臺(tái)上。在下文進(jìn)一步詳細(xì)討論平臺(tái)的 測(cè)量和認(rèn)證。在一個(gè)實(shí)施例中,安全平臺(tái)300包括平臺(tái)硬件302,其是提供了硬件擴(kuò)展以增強(qiáng)平 臺(tái)的安全能力的Intel 可信執(zhí)行技術(shù)(TXT)平臺(tái)。在BIOS中允許測(cè)量的引導(dǎo)以提供平 臺(tái)證明能力。通過允許測(cè)量引導(dǎo),在以系統(tǒng)重置指令開始的引導(dǎo)處理期間執(zhí)行的所有指令 被測(cè)量,并且測(cè)量被記錄。然后,測(cè)量可以與期望的軟件和固件的“金標(biāo)準(zhǔn)”副本進(jìn)行比較 以確定指令是否與期望的軟件和固件一致。可選地,在一個(gè)實(shí)施例中,平臺(tái)硬件302包括由用戶允許的可信平臺(tái)模塊 (TPM) 304。將概括地描述TPM的功能,隨后是對(duì)當(dāng)其工作在平臺(tái)300內(nèi)時(shí)TPM 304的說明。 TPM是硬件部件,通常是微控制器,其駐留在處理系統(tǒng)內(nèi)并提供用于增強(qiáng)處理系統(tǒng)的安全性 的各種設(shè)施和服務(wù)??梢愿鶕?jù)規(guī)范(例如,日期為2003年10月2日的可信計(jì)算組(TCG) TPM規(guī)范版本1. 2 (下文稱為“TPM規(guī)范”),其可以從互聯(lián)網(wǎng)www. trustedcomputinggroup. org/home獲得)來實(shí)現(xiàn)TPM。TCG兼容的TPM安全地存儲(chǔ)密鑰、口令和數(shù)字證書。TPM提供可以生成在數(shù)字證書 中使用的密鑰、創(chuàng)建數(shù)字簽名并且提供加密的核心安全技術(shù)。通過使用定義的接口的安全 子系統(tǒng)來訪問和控制安全操作。像硬盤加密、安全電子郵件和身份/訪問管理的應(yīng)用程序 受益于由TPM提供的安全功能。TPM基于特征(例如,包括處理器和芯片組的平臺(tái)的硬件部件以及駐留在平臺(tái)中 的軟件(例如,固件和操作系統(tǒng))來證明平臺(tái)的身份和/或完整性。TPM還可以支持軟件進(jìn) 程的審核和記錄以及平臺(tái)引導(dǎo)完整性、文件完整性和軟件許可證的驗(yàn)證。TPM通常被描述為 為平臺(tái)提供信任的根。TPM通過存儲(chǔ)關(guān)于平臺(tái)的配置的信息來提供安全功能。然后,該信息可以用于TPM 的主要功能、平臺(tái)證明和受保護(hù)的存儲(chǔ)。平臺(tái)可以將信息提供給需要的遠(yuǎn)程實(shí)體以允許遠(yuǎn) 程實(shí)體確定平臺(tái)的可信賴性。平臺(tái)還可以指示TPM確保僅在系統(tǒng)處于已知的“好的”配置 時(shí)才發(fā)布密鑰或敏感數(shù)據(jù)。為了存儲(chǔ)平臺(tái)狀態(tài),TPM使用平臺(tái)配置寄存器(PCR,例如圖3的TPM304的PCR 306),其用于存儲(chǔ)以軟件的160位SHAl (安全散列算法1)散列的形式的測(cè)量以及對(duì)平臺(tái)的 配置信息。這些測(cè)量在引導(dǎo)模塊處開始。每個(gè)引導(dǎo)部件測(cè)量下一個(gè)部件,將測(cè)量記錄在TPM 中,然后運(yùn)行該部件直到操作系統(tǒng)接管其核心的測(cè)量為止。因?yàn)橄騊CR的每次寫入都將測(cè) 量增加到寄存器而不是覆蓋先前的測(cè)量,所以沒有實(shí)體可以改變由前面的部件所作出的對(duì) 其代碼的測(cè)量。因此,得到測(cè)量的鏈,以使得如果鏈的開始(被稱為測(cè)量的信任的根)和每 個(gè)鏈路都是可信賴的,那么整個(gè)鏈?zhǔn)强尚刨嚨摹WC明是指允許平臺(tái)以可信賴的方式將其配置報(bào)告給遠(yuǎn)程方的TPM功能和協(xié)議的 設(shè)置。例如,TPM提供了對(duì)用于存儲(chǔ)平臺(tái)狀態(tài)的PCR進(jìn)行簽名的能力。例如,平臺(tái)可以使用 證明身份密鑰(AIK)來對(duì)PCR進(jìn)行簽名。這種簽名的PCR可以被稱為引用。為了將由真實(shí)TPM對(duì)引用進(jìn)行簽名的證據(jù)提供給遠(yuǎn)程實(shí)體,每個(gè)TPM具有一組證 書。例如,由TPM制造商簽名的簽注證書說明了 TPM滿足TPM規(guī)范。制造商還將被稱為簽注密鑰(EK)的唯一密鑰存儲(chǔ)在TPM中,并且制造商使用EK來對(duì)簽注證書進(jìn)行簽名。理論 上,可以直接使用EK來對(duì)PCR的引用進(jìn)行簽名。然而,因?yàn)镋K是唯一的,所以在一些實(shí)現(xiàn) 中,使用第三方來代替以提供保密。具體地說,平臺(tái)使用被稱為保密認(rèn)證機(jī)構(gòu)(CA)的第三 方來為每個(gè)AIK創(chuàng)建身份證書。TCG定義了協(xié)議,其允許TPM使用EK和簽注證書向保密CA 證明TPM是真的TPM。繼而,保密CA為TPM聲稱其擁有的AIK創(chuàng)建身份證書。假定遠(yuǎn)程實(shí)體信任TPM的制造商、保密CA和用于測(cè)量的信任的根,則由附有身份 證書的AIK簽名的引用是平臺(tái)的當(dāng)前狀態(tài)的加密證據(jù)。可以用于允許可信平臺(tái)的遠(yuǎn)程認(rèn)證 的另一個(gè)加密協(xié)議是直接匿名證明(DAA)。TPM提供的另一組服務(wù)是密鑰及其它數(shù)據(jù)的安全存儲(chǔ)。TPM可以創(chuàng)建 Rivest-Shamir-Adleman (RSA)密鑰,它將只允許使用一次(a)請(qǐng)求者經(jīng)由機(jī)密SHAl散列 提供授權(quán),以及(b)如由PCR確定的當(dāng)前配置指示了“好的”狀態(tài)。該功能允許平臺(tái)加密數(shù) 據(jù),以使得如果機(jī)器被損害、從外部介質(zhì)引導(dǎo)或被篡改,則數(shù)據(jù)將仍然不可訪問。為支持服務(wù)(例如,安全存儲(chǔ)設(shè)備),TPM為不同的操作創(chuàng)建具有單個(gè)目的類型的 密鑰。類型EK的密鑰僅對(duì)從保密CA中解密身份證書是可用的。AIK用于對(duì)其它密鑰進(jìn)行 簽名并且引用PCR。存儲(chǔ)設(shè)備密鑰(SK)用于保護(hù)其它密鑰或“密封”數(shù)據(jù),其是使用口令或 PCR綁定來保護(hù)數(shù)據(jù)的數(shù)據(jù)的專用加密。綁定密鑰(BK)用于加密任意數(shù)據(jù)并將數(shù)據(jù)轉(zhuǎn)換成 TPM綁定的數(shù)據(jù)結(jié)構(gòu)。簽名密鑰(SigK)用于對(duì)任意數(shù)據(jù)進(jìn)行簽名。再次參考圖3,在一個(gè)實(shí)施例中,客戶端安全管理層310向內(nèi)容服務(wù)器360提供平 臺(tái)證明,其證明了接收的內(nèi)容受到保護(hù)。作為響應(yīng),內(nèi)容服務(wù)器360提供加密內(nèi)容以及加 密了的內(nèi)容密鑰。在一個(gè)實(shí)施例中,針對(duì)客戶端安全管理層310,使用證明身份密鑰(AIK) 的公開部分來加密內(nèi)容密鑰。內(nèi)容、加密內(nèi)容密鑰和內(nèi)容策略被發(fā)送給客戶端內(nèi)容播放器 330。客戶端內(nèi)容播放器300向客戶端安全管理層310證明其完整性,并且客戶端安全管理 層310將解密內(nèi)容密鑰提供給保護(hù)存儲(chǔ)器342中的授權(quán)客戶端內(nèi)容播放器330。由客戶端 安全管理層310提供的解密內(nèi)容密鑰可以考慮到關(guān)于內(nèi)容播放器330的、由客戶端安全管 理層310維護(hù)的策略??蛻舳藘?nèi)容播放器330解密內(nèi)容并且將內(nèi)容移交給保護(hù)的幀緩沖存 儲(chǔ)器348,所述存儲(chǔ)器348在受保護(hù)以供內(nèi)容播放器330使用的內(nèi)容播放器342的存儲(chǔ)器的 保護(hù)的部分內(nèi)。因此,內(nèi)容抓取器軟件不能從持久性存儲(chǔ)設(shè)備、存儲(chǔ)器340、保護(hù)的幀緩沖存 儲(chǔ)器348或網(wǎng)絡(luò)信道350中的任何一個(gè)中竊取內(nèi)容。該機(jī)制防止對(duì)為了內(nèi)容保護(hù)在圖形硬 件中允許加密的昂貴硅柵極的需要,并且跨越離散或集成的圖形適配器工作。在一個(gè)實(shí)施例中,平臺(tái)硬件302的TPM 304具有用于簽名的證明身份密鑰(AIK) 和用于加密的AIK。這些AIK可以存儲(chǔ)在PCR 306中并可以由保密認(rèn)證機(jī)構(gòu)或使用直接匿 名證明(DAA)來認(rèn)證。TPM 304還可以獲得顯示作為客戶端安全管理層密鑰316的、專用于 客戶端安全管理層310的AIK??蛻舳税踩芾韺?10使用客戶端安全管理層密鑰316來 向遠(yuǎn)程處理系統(tǒng)(例如,內(nèi)容服務(wù)器360)斷言平臺(tái)300的可信賴性。通過了解計(jì)算機(jī)系統(tǒng)內(nèi)的不同架構(gòu)部件具有對(duì)資源訪問的不同級(jí)別,可以進(jìn)一步 了解平臺(tái)300的架構(gòu)中客戶端安全管理層310的角色。保護(hù)環(huán)是在計(jì)算機(jī)系統(tǒng)的架構(gòu)內(nèi)的 分層的級(jí)別或?qū)蛹?jí)的特權(quán)的組中的一個(gè)。通常由固件層處提供了不同的處理器模式的一些 處理器架構(gòu)通過硬件來實(shí)施特權(quán)的使用。環(huán)被布置在從最高特權(quán)(最可信,通常編號(hào)為0) 到最低特權(quán)(最不可信,通常具有最高環(huán)數(shù))的分層中。在大部分操作系統(tǒng)上,環(huán)0是具有
13最高特權(quán)的級(jí)并與物理硬件(例如,處理器和存儲(chǔ)器)基本上直接交互。Intel虛擬化技術(shù) (VT-x)平臺(tái)擴(kuò)展了該概念,其包括比環(huán)0級(jí)更可信的“根”特權(quán)級(jí)。在引導(dǎo)平臺(tái)時(shí),測(cè)量在 根特權(quán)級(jí)處運(yùn)行的代碼。在一個(gè)實(shí)施例中,如圖3所示的根特權(quán)級(jí)是如在Intel VT-χ平臺(tái) 中定義的根特權(quán)級(jí),盡管本發(fā)明不限制于此。可以想象,可以使用備選的虛擬化技術(shù)來實(shí)現(xiàn) 客戶端安全管理層310,所述虛擬化技術(shù)可以允許在比由傳統(tǒng)的操作系統(tǒng)內(nèi)核代碼所使用 的環(huán)0級(jí)更可信的特權(quán)級(jí)處發(fā)生一些操作。在圖3中示出了如在根特權(quán)級(jí)處工作的客戶端安全管理層310,其具有比工作在 環(huán)0特權(quán)級(jí)的操作系統(tǒng)內(nèi)核320更高的特權(quán)。在引導(dǎo)平臺(tái)300時(shí),測(cè)量用于客戶端安全管 理層310的代碼。因此,在引導(dǎo)平臺(tái)300以后,TPM304的PCR寄存器306具有包括對(duì)客戶 端安全管理層310的代碼的測(cè)量的SHA-I散列值。針對(duì)客戶端安全管理層310,生成客戶端 安全管理層密鑰316 (如由TPM 304產(chǎn)生的AIK)。在圖3中,操作系統(tǒng)內(nèi)核320工作在比應(yīng)用程序(例如,內(nèi)容播放器330)高的環(huán)0 特權(quán)級(jí),所述播放器330工作在環(huán)3特權(quán)級(jí)。通過工作在根特權(quán)級(jí)處(所述根特權(quán)級(jí)是甚 至比環(huán)0高的特權(quán)級(jí)),客戶端安全管理層310能夠確保在存儲(chǔ)器340內(nèi)的用于內(nèi)容播放器 的存儲(chǔ)器的保護(hù)部分342是不可訪問的,即使對(duì)操作系統(tǒng)內(nèi)核320來說也是不可訪問的??蛻舳税踩芾韺?10包括運(yùn)行時(shí)間存儲(chǔ)器保護(hù)部件312和內(nèi)容保護(hù)管理器314。 運(yùn)行時(shí)間存儲(chǔ)器保護(hù)部件312在用于內(nèi)容播放器的存儲(chǔ)器的保護(hù)部分342內(nèi),對(duì)保護(hù)代碼 344和保護(hù)數(shù)據(jù)346兩者以及保護(hù)的幀緩沖存儲(chǔ)器348進(jìn)行保護(hù)。運(yùn)行時(shí)間存儲(chǔ)器保護(hù)部 件312可以使用如上所描述的在專利申請(qǐng)11/229,126中描述的安全保險(xiǎn)庫服務(wù)功能來在 用于內(nèi)容播放器的存儲(chǔ)器的保護(hù)部分342內(nèi)對(duì)保護(hù)代碼344、保護(hù)數(shù)據(jù)346以及保護(hù)的幀緩 沖存儲(chǔ)器348進(jìn)行保護(hù)。例如,保護(hù)代碼344可以包含數(shù)據(jù)鏈接庫、可執(zhí)行代碼及與保護(hù)部 件有關(guān)的其它軟件(例如,內(nèi)容播放器330)。保護(hù)數(shù)據(jù)346可以包含例如數(shù)據(jù)(例如,由內(nèi) 容播放器330從內(nèi)容服務(wù)器360下載的內(nèi)容以及用于下載內(nèi)容的加密與解密密鑰)。相似 地,保護(hù)的幀緩沖存儲(chǔ)器348由內(nèi)容播放器330來使用以由用戶渲染用于顯示的內(nèi)容。通 過限制對(duì)用于內(nèi)容播放器的存儲(chǔ)器的保護(hù)部分342的訪問,在運(yùn)行在環(huán)0特權(quán)級(jí)的操作系 統(tǒng)內(nèi)核320或運(yùn)行在環(huán)3特權(quán)級(jí)的其它應(yīng)用程序受到損害的情況下,客戶端安全管理層310 的運(yùn)行時(shí)間存儲(chǔ)器保護(hù)部件312提供保護(hù)??蛻舳税踩芾韺?10的內(nèi)容保護(hù)管理器314使用由平臺(tái)硬件302的TPM 304提 供的安全特征來證明平臺(tái)300的可信賴性。例如,客戶端安全管理層310使用客戶端安全 管理層密鑰316來向遠(yuǎn)程處理系統(tǒng)(例如,內(nèi)容服務(wù)器360)斷言平臺(tái)300的可信賴性,所 述密鑰316可以是例如由TPM304生成的AIK。下文進(jìn)一步詳細(xì)描述客戶端安全管理層310 的內(nèi)容保護(hù)管理器314的操作。圖4是用于在由圖3的安全平臺(tái)架構(gòu)提供的環(huán)境中工作的內(nèi)容播放器(例如,圖3 的內(nèi)容播放器330)的操作的方法的流程圖。參考圖4執(zhí)行的操作被描述為由圖3的部件 來執(zhí)行。在啟動(dòng)時(shí),內(nèi)容播放器330轉(zhuǎn)移到“針對(duì)存儲(chǔ)器和內(nèi)容保護(hù),向客戶端安全管理層 注冊(cè)”的步驟410。在該步驟,內(nèi)容播放器330調(diào)用對(duì)客戶端安全管理層310的超級(jí)調(diào)用以 提供存儲(chǔ)器的保護(hù)部分342,以保護(hù)其代碼和數(shù)據(jù),其包括所述代碼和數(shù)據(jù)的動(dòng)態(tài)鏈接庫以 及用于渲染內(nèi)容的幀緩沖存儲(chǔ)器348。對(duì)客戶端安全管理層310的這些超級(jí)調(diào)用可以調(diào)用 上面引用的專利申請(qǐng)11/229,126中概述的安全保險(xiǎn)庫服務(wù)。一旦客戶端安全管理層310例如通過提供用于內(nèi)容播放器的存儲(chǔ)器的保護(hù)部分342來向內(nèi)容播放器330提供該保護(hù)時(shí), 不可以由不具有與內(nèi)容播放器330相同的來自客戶端安全管理層310的訪問許可的任何環(huán) 0或環(huán)3的部件來訪問用于內(nèi)容播放器330的保護(hù)代碼344、保護(hù)數(shù)據(jù)346和保護(hù)的幀緩沖 器 348。作為向客戶端安全管理層310的注冊(cè)處理的一部分,可以創(chuàng)建用于內(nèi)容播放器 330的清單以及應(yīng)用程序標(biāo)識(shí)符。可以根據(jù)上面引用的于2005年6月30日遞交的、名稱 為“Signed Manifest for Run-Time Verification ofSoftware Program Identity and Integrity”的專利申請(qǐng)11/173,851來創(chuàng)建該清單。清單可以包含可以用于驗(yàn)證內(nèi)容播放 器330的完整性并且可以由客戶端安全管理層310在隨后的交互中確認(rèn)內(nèi)容播放器330的 完整性的信息。再次參考圖4,在最初“針對(duì)存儲(chǔ)器和內(nèi)容保護(hù),向客戶端安全管理層注冊(cè)”步驟 410中,向客戶端安全管理層310注冊(cè)之后,內(nèi)容播放器330轉(zhuǎn)移到“從客戶端安全管理層 請(qǐng)求安全信息”步驟420。在一個(gè)實(shí)施例中,內(nèi)容播放器330請(qǐng)求的安全信息包括用于客戶 端安全管理層310的PCR值。響應(yīng)于對(duì)安全信息的請(qǐng)求,客戶端安全管理層310提供包含 TPM中的特定PCR寄存器的PCR值的簽名的團(tuán)點(diǎn)(blob)。使用AIK簽名密鑰對(duì)團(tuán)點(diǎn)進(jìn)行簽 名。團(tuán)點(diǎn)還包含客戶端安全管理層310的AIK加密密鑰的公開部分以及從保密認(rèn)證機(jī)構(gòu)接 收的證書。在本文描述的實(shí)施例中,安全信息被描述為根據(jù)基于AIK的加密方案來進(jìn)行管 理。本領(lǐng)域的普通技術(shù)人員將了解,可選地,還可以使用其它方案(例如,保護(hù)用戶的保密 的直接匿名證明)來管理安全信息。內(nèi)容播放器330從“從客戶端安全管理層請(qǐng)求安全信息”步驟420轉(zhuǎn)移到“從內(nèi)容 服務(wù)器請(qǐng)求內(nèi)容,提供來自客戶端安全管理層的安全信息”步驟430。內(nèi)容播放器330使用 由客戶端安全管理層310提供的安全信息來向內(nèi)容服務(wù)器360證明平臺(tái)300是安全的。內(nèi) 容請(qǐng)求包含用于內(nèi)容服務(wù)器的內(nèi)容播放器的賬戶的用戶證書、從客戶端安全管理層310接 收的簽名的團(tuán)點(diǎn)以及請(qǐng)求內(nèi)容的策略參數(shù)。例如,策略參數(shù)可以指示在用于播放視頻的用 戶的許可證到期之前允許用戶播放內(nèi)容的視頻的時(shí)間的數(shù)量。參考圖5進(jìn)一步詳細(xì)描述了 內(nèi)容服務(wù)器360對(duì)請(qǐng)求內(nèi)容的處理。內(nèi)容播放器330從“從內(nèi)容服務(wù)器請(qǐng)求內(nèi)容,提供來自客戶端安全管理層的安全 信息”步驟430轉(zhuǎn)移到“從內(nèi)容服務(wù)器接收內(nèi)容和加密內(nèi)容密鑰”步驟440。內(nèi)容播放器330 從內(nèi)容服務(wù)器360中接收封裝的團(tuán)點(diǎn),所述團(tuán)點(diǎn)包括加密內(nèi)容和加密內(nèi)容密鑰。然后,內(nèi)容 播放器330轉(zhuǎn)移到“從客戶端安全管理層請(qǐng)求解密密鑰”步驟450。內(nèi)容播放器330將加密 內(nèi)容密鑰(下文參考圖5進(jìn)一步詳細(xì)描述)與其自身的應(yīng)用程序標(biāo)識(shí)符一起傳遞到客戶端 安全管理層310。下文參考圖6進(jìn)一步詳細(xì)討論了客戶端安全管理層310對(duì)加密內(nèi)容密鑰 的處理。響應(yīng)于“從客戶端安全管理層請(qǐng)求解密密鑰”步驟450,內(nèi)容播放器330接收解密 密鑰,內(nèi)容播放器330使用所述解密密鑰可以解密由內(nèi)容服務(wù)器360提供的加密內(nèi)容。內(nèi) 容播放器330進(jìn)入“使用由客戶端安全管理層提供的解密密鑰來解密內(nèi)容”步驟460并解 密由內(nèi)容服務(wù)器360提供的內(nèi)容。內(nèi)容播放器330將加密內(nèi)容加載到用于內(nèi)容播放器的存 儲(chǔ)器的保護(hù)部分342中并使用解密密鑰來解密所述內(nèi)容。內(nèi)容播放器330進(jìn)入到“渲染內(nèi) 容”步驟470,其中,內(nèi)容播放器330使用包括在保護(hù)代碼344中的標(biāo)準(zhǔn)應(yīng)用程序接口來在保護(hù)幀緩沖器上渲染解密內(nèi)容。解密內(nèi)容被直接寫入用于內(nèi)容播放器的存儲(chǔ)器的保護(hù)部分 342內(nèi)的保護(hù)數(shù)據(jù)346,而不是調(diào)用操作系統(tǒng)內(nèi)核320以渲染內(nèi)容。圖5是用于與本發(fā)明的安全平臺(tái)一起工作的內(nèi)容服務(wù)器的操作的方法的流程圖。 響應(yīng)于從內(nèi)容播放器330接收對(duì)內(nèi)容的請(qǐng)求,內(nèi)容服務(wù)器360驗(yàn)證如“驗(yàn)證來自內(nèi)容播放器 的對(duì)內(nèi)容的請(qǐng)求以及來自客戶端安全管理層的安全信息”步驟510中所示的請(qǐng)求。例如, 內(nèi)容服務(wù)器360可以針對(duì)保密認(rèn)證機(jī)構(gòu)的根證書,驗(yàn)證簽名的團(tuán)點(diǎn)中提供的客戶端安全管 理層310的證書。隨后,內(nèi)容服務(wù)器360可以比較PCR寄存器的散列值與所述散列值的金 標(biāo)準(zhǔn)副本,由此確定客戶端安全管理層310的有效性。此外,內(nèi)容服務(wù)器360可以針對(duì)用戶 數(shù)據(jù)庫來認(rèn)證用于內(nèi)容播放器330的用戶證書并且檢查作為請(qǐng)求的一部分的策略參數(shù)。例 如,可以根據(jù)當(dāng)將在內(nèi)容請(qǐng)求中提供策略中的值與在服務(wù)數(shù)據(jù)庫中存儲(chǔ)的用戶的策略進(jìn)行 比較時(shí)哪個(gè)策略更有約束性來提供內(nèi)容。內(nèi)容服務(wù)器360從“驗(yàn)證來自內(nèi)容播放器的對(duì)內(nèi)容的請(qǐng)求以及來自客戶端安全管 理層的安全信息”步驟510轉(zhuǎn)移到“創(chuàng)建包含加密內(nèi)容和加密內(nèi)容密鑰的封裝團(tuán)點(diǎn)”步驟 520。在一個(gè)實(shí)施例中,內(nèi)容服務(wù)器360用被稱作內(nèi)容密鑰(CK)的對(duì)稱密鑰來加密內(nèi)容, 并用客戶端安全管理層310的AIK加密密鑰來加密CK、內(nèi)容策略(CP)和應(yīng)用程序標(biāo)識(shí)符 (Al)。例如在該實(shí)施例中,按照如下使用用于內(nèi)容服務(wù)器360的服務(wù)密鑰來創(chuàng)建封裝的團(tuán)占.BLOB = Sign service-key (Ε CK (Content) Il E AIK-Encryption (CK Il CP Il AI))。 在該公式中,通過使用簽名的服務(wù)密鑰來創(chuàng)建團(tuán)點(diǎn)以加密由兩個(gè)分量組成的串接字符串。 第一分量使用內(nèi)容密鑰加密內(nèi)容,而第二分量加密內(nèi)容密鑰、內(nèi)容策略和具有證明身份密 鑰的證明標(biāo)識(shí)符的串接字符串。在“將加密內(nèi)容和加密內(nèi)容密鑰提供給驗(yàn)證的內(nèi)容播放器” 步驟530中,將封裝的團(tuán)點(diǎn)發(fā)送回內(nèi)容播放器330。圖6是用于提供圖3的安全平臺(tái)架構(gòu)的客戶端安全管理層的操作的流程圖。如參 考圖4 “針對(duì)存儲(chǔ)器和內(nèi)容保護(hù),向客戶端安全管理層注冊(cè)”步驟410所描述的,客戶端安 全管理層310響應(yīng)于應(yīng)用程序的注冊(cè)請(qǐng)求。響應(yīng)于這種注冊(cè)請(qǐng)求,客戶端安全管理層310 轉(zhuǎn)移到“響應(yīng)于部件的注冊(cè),提供存儲(chǔ)器和內(nèi)容保護(hù)”步驟610??梢园凑丈鲜鰠⒖伎蛻舳?安全管理層310的運(yùn)行時(shí)間存儲(chǔ)器保護(hù)部件312來提供存儲(chǔ)器保護(hù)。如上所述,客戶端安 全管理層310的運(yùn)行時(shí)間存儲(chǔ)器保護(hù)部件312保護(hù)在用于內(nèi)容播放器的存儲(chǔ)器的保護(hù)部分 342內(nèi)的保護(hù)代碼344、保護(hù)數(shù)據(jù)346和保護(hù)的幀緩沖存儲(chǔ)器348。運(yùn)行時(shí)間存儲(chǔ)器保護(hù)部 件312可以使用如上所描述的在專利申請(qǐng)11/229,126中描述的安全保險(xiǎn)庫服務(wù)功能來保 護(hù)用于內(nèi)容播放器的存儲(chǔ)器的保護(hù)部分342內(nèi)的保護(hù)代碼344、保護(hù)數(shù)據(jù)346和保護(hù)的幀緩 沖存儲(chǔ)器348。盡管關(guān)于圖6提供的服務(wù)被描述為由客戶端安全管理層310來執(zhí)行,但是可以由 客戶端安全管理層310的內(nèi)容保護(hù)管理器314來提供內(nèi)容保護(hù)。如“從部件接收解密請(qǐng)求” 步驟620中所示,客戶端安全管理層310可以從部件接收解密請(qǐng)求。響應(yīng)于這種解密請(qǐng)求, 客戶端安全管理層310可以轉(zhuǎn)移到“確認(rèn)部件的完整性”的步驟630。在確認(rèn)部件的完整性 中,客戶端安全管理層310可以針對(duì)封裝團(tuán)點(diǎn)中由內(nèi)容服務(wù)器360提供的應(yīng)用程序標(biāo)識(shí)符 來驗(yàn)證解密請(qǐng)求中由內(nèi)容播放器330提供的應(yīng)用程序標(biāo)識(shí)符??蛻舳税踩芾韺?10可以 進(jìn)一步執(zhí)行其它完整性測(cè)量以驗(yàn)證內(nèi)容播放器330的完整性,例如在將解密密鑰提供給內(nèi)
16容播放器330之前驗(yàn)證用于內(nèi)容播放器330的清單。響應(yīng)于確認(rèn)部件的完整性,客戶端安全管理層310可以解密返回到內(nèi)容播放器 330的封裝的團(tuán)點(diǎn)中的內(nèi)容服務(wù)器360提供的內(nèi)容密鑰以及其它參數(shù)??蛻舳税踩芾韺?310可以針對(duì)內(nèi)容策略來驗(yàn)證解密請(qǐng)求并且還可以將來自封裝的團(tuán)點(diǎn)的策略信息記錄到策 略數(shù)據(jù)庫(使用未保護(hù)的環(huán)3應(yīng)用程序)。通過在將解密內(nèi)容密鑰提供給內(nèi)容播放器330 之前,針對(duì)內(nèi)容策略來驗(yàn)證解密請(qǐng)求,即使客戶端內(nèi)容播放器330不再連接到用于內(nèi)容服 務(wù)器360的網(wǎng)絡(luò)時(shí),客戶安全管理層310可以在傳送了內(nèi)容之后,實(shí)施提供內(nèi)容服務(wù)器360 所需的策略。然后,控制從“確認(rèn)部件的完整性”步驟630轉(zhuǎn)移到“將解密密鑰放入用于部件的 保護(hù)存儲(chǔ)器中”步驟640,其中,客戶端安全管理層310和/或客戶端安全管理層310的運(yùn) 行時(shí)間存儲(chǔ)器保護(hù)部件312將解密密鑰放入部件的存儲(chǔ)器的保護(hù)部分,例如用于內(nèi)容播放 器的存儲(chǔ)器保護(hù)部分342。概述的機(jī)制在不需要額外的硬件的情況下使用標(biāo)準(zhǔn)特征在平臺(tái)上提供內(nèi)容保護(hù)。 由于本發(fā)明通過將保護(hù)器放在比保護(hù)內(nèi)容(即,內(nèi)容播放器)高的特權(quán)的級(jí)處來使用合理 的加密技術(shù),所以由本發(fā)明的客戶端安全管理層提供的保護(hù)服務(wù)相比于其它基于模糊的技 術(shù)提供更嚴(yán)密的防護(hù)。概述的機(jī)制允許遠(yuǎn)程內(nèi)容服務(wù)供應(yīng)者來將內(nèi)容分發(fā)到對(duì)攻擊者具有 高度抵抗力的客戶端。該機(jī)制是不被入侵的并且不需要修改平臺(tái)硬件、操作系統(tǒng)或額外的 驅(qū)動(dòng)器。可以以硬件、軟件或這種實(shí)現(xiàn)方式的組合來實(shí)現(xiàn)本文公開的機(jī)制的實(shí)施例。本發(fā) 明的實(shí)施例可以被實(shí)現(xiàn)為在可編程系統(tǒng)上執(zhí)行的計(jì)算機(jī)程序,所述系統(tǒng)包括至少一個(gè)處理 器、數(shù)據(jù)存儲(chǔ)系統(tǒng)(包括易失性和非易失性存儲(chǔ)器和/或存儲(chǔ)元件)、至少一個(gè)輸入設(shè)備和 至少一個(gè)輸出設(shè)備??梢詫⒊绦虼a應(yīng)用到用于執(zhí)行本文描述的功能并且生成輸出信息的輸入數(shù)據(jù)。 本發(fā)明的實(shí)施例還包括機(jī)器可訪問介質(zhì),其包含用于執(zhí)行本發(fā)明的操作的指令或者包含設(shè) 計(jì)數(shù)據(jù)(例如,HDL,其定義了結(jié)構(gòu)、電路、裝置、處理器和/或本文描述的系統(tǒng)特征)。這種 實(shí)施例還可以被稱為程序產(chǎn)品。這種機(jī)器可訪問存儲(chǔ)介質(zhì)可以包括但不限制于由機(jī)器或器件制造或形成的顆粒 的有形排列,其包括例如,硬盤和任何其它類型的盤,其包括軟盤、光盤、只讀緊致盤存儲(chǔ) 器(CD-ROM)、可重寫緊致盤(CD-RW)和磁光盤、半導(dǎo)體器件(例如,只讀存儲(chǔ)器(ROM))、隨 機(jī)存取存儲(chǔ)器(RAM)(例如,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM))、可 擦除可編程只讀存儲(chǔ)器(ΕΗ 0Μ)、閃存、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、磁或光卡, 或適合于存儲(chǔ)電子指令的任何其它類型的介質(zhì)??梢砸砸阎姆绞綄⑤敵鲂畔?yīng)用到一個(gè)或多個(gè)輸出設(shè)備。對(duì)該申請(qǐng)的目的來 說,處理系統(tǒng)包括具有處理器的任何系統(tǒng),所述處理器例如是數(shù)字信號(hào)處理器(DSP)、微控 制器、專用集成電路(ASIC)或微處理器。可以以高層的過程或面向?qū)ο缶幊陶Z言來實(shí)現(xiàn)程序以與處理系統(tǒng)進(jìn)行通信。如果 需要,還可以以匯編或機(jī)器語言來實(shí)現(xiàn)程序。實(shí)際上,本文描述的機(jī)制不被限制在任何特定 的編程語言的范圍內(nèi)。在任何情況下,語言可以是編譯的或解釋的語言。本文呈現(xiàn)的是用于向從內(nèi)容服務(wù)器接收的內(nèi)容提供安全平臺(tái)的方法和系統(tǒng)的實(shí)施例。雖然示出了并描述了本發(fā)明的特定實(shí)施例,但是對(duì)本領(lǐng)域的這些技術(shù)人員明顯的是, 在不脫離所附權(quán)利要求的范圍的情況下,可以進(jìn)行多種改變、變化和變型。因此,本領(lǐng)域的 一個(gè)技術(shù)人員將認(rèn)識(shí)到,在不脫離本發(fā)明的寬廣的方面的情況下,可以進(jìn)行改變和變型。所 附權(quán)利要求將包括落入本發(fā)明的真正范圍和精神內(nèi)的所有這種改變、變化和變型。
權(quán)利要求
一種方法,包括代表部件來控制對(duì)計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器的保護(hù)部分的訪問;從所述部件接收加密的內(nèi)容密鑰;確認(rèn)所述部件的完整性;解密所述加密的內(nèi)容密鑰以提供解密的內(nèi)容密鑰;以及響應(yīng)于確認(rèn)所述部件的完整性,將所述解密的內(nèi)容密鑰放在所述存儲(chǔ)器的保護(hù)部分中。
2.根據(jù)權(quán)利要求1所述的方法,其中所述控制對(duì)所述存儲(chǔ)器的保護(hù)部分的訪問包括防止由用于所述計(jì)算機(jī)系統(tǒng)的操作系 統(tǒng)來訪問所述存儲(chǔ)器的保護(hù)部分。
3.根據(jù)權(quán)利要求1所述的方法,其中所述控制對(duì)所述存儲(chǔ)器的保護(hù)部分的訪問包括防止由未授權(quán)的應(yīng)用程序來訪問所述 存儲(chǔ)器的保護(hù)部分。
4.根據(jù)權(quán)利要求1所述的方法,其中所述解密的內(nèi)容密鑰對(duì)應(yīng)于由所述部件從內(nèi)容供應(yīng)者接收的內(nèi)容;以及 所述部件使用所述解密的內(nèi)容密鑰來解密所述內(nèi)容。
5.根據(jù)權(quán)利要求1所述的方法,進(jìn)一步包括 從所述部件接收對(duì)特定內(nèi)容的解密請(qǐng)求;以及在解密所述加密的內(nèi)容密鑰之前,確定針對(duì)所述特定內(nèi)容的內(nèi)容策略是否允許對(duì)所述 特定內(nèi)容進(jìn)行解密。
6.根據(jù)權(quán)利要求5所述的方法,其中在沒有連接到提供了所述特定內(nèi)容的內(nèi)容服務(wù)器的情況下,執(zhí)行對(duì)所述特定內(nèi)容的內(nèi) 容策略是否允許對(duì)所述特定內(nèi)容進(jìn)行解密的確定。
7.根據(jù)權(quán)利要求1所述的方法,其中所述確認(rèn)所述部件的完整性包括驗(yàn)證用于所述部件的清單。
8.根據(jù)權(quán)利要求1所述的方法,其中所述確認(rèn)所述部件的完整性包括確認(rèn)用于所述部件的代碼匹配用于所述部件的代碼 的標(biāo)準(zhǔn)。
9.一種方法,包括作為部件向客戶端安全管理層注冊(cè)以接收計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器的保護(hù)部分的保護(hù); 從內(nèi)容供應(yīng)者接收加密的內(nèi)容和加密的內(nèi)容密鑰;向所述客戶端安全管理層提供所述加密的內(nèi)容密鑰,其中,所述客戶端安全管理層確 認(rèn)所述部件的完整性,解密所述加密的內(nèi)容密鑰以提供解密的內(nèi)容密鑰,并且將所述解密 的內(nèi)容密鑰放入所述存儲(chǔ)器的保護(hù)部分中;以及使用所述解密的內(nèi)容密鑰將所述加密的內(nèi)容解密到所述存儲(chǔ)器的保護(hù)部分中。
10.根據(jù)權(quán)利要求9所述的方法,進(jìn)一步包括向所述內(nèi)容供應(yīng)者提供如下證明證明接收的內(nèi)容被防止受到未授權(quán)的拷貝。
11.根據(jù)權(quán)利要求10所述的方法,其中所述證明包括用于所述客戶端安全管理層的標(biāo)識(shí)信息。
12.—種計(jì)算機(jī)系統(tǒng),包括 處理器;耦合到所述處理器的存儲(chǔ)器;客戶端安全管理層,用于代表運(yùn)行在所述處理器上的部件來控制對(duì)所述存儲(chǔ)器的保護(hù)部分的訪問; 從所述部件接收加密的內(nèi)容密鑰; 確認(rèn)所述部件的完整性;解密所述加密的內(nèi)容密鑰以提供解密的內(nèi)容密鑰;以及響應(yīng)于確認(rèn)所述部件的完整性,將所述解密的內(nèi)容密鑰放在所述存儲(chǔ)器的保護(hù)部分中。
13.根據(jù)權(quán)利要求12所述的計(jì)算機(jī)系統(tǒng),其中所述客戶端安全管理層還用于通過防止由所述計(jì)算機(jī)系統(tǒng)的操作系統(tǒng)訪問所述存儲(chǔ) 器的保護(hù)部分來控制對(duì)所述存儲(chǔ)器的保護(hù)部分的訪問。
14.根據(jù)權(quán)利要求12所述的計(jì)算機(jī)系統(tǒng),其中所述客戶端安全管理層還用于通過防止由運(yùn)行在所述計(jì)算機(jī)系統(tǒng)上的未授權(quán)的應(yīng)用 程序訪問所述存儲(chǔ)器的保護(hù)部分來控制對(duì)所述存儲(chǔ)器的保護(hù)部分的訪問。
15.根據(jù)權(quán)利要求12所述的計(jì)算機(jī)系統(tǒng),其中所述解密的內(nèi)容密鑰對(duì)應(yīng)于由所述部件從內(nèi)容供應(yīng)者接收的內(nèi)容;以及 所述部件使用所述解密的內(nèi)容密鑰來解密所述內(nèi)容。
16.根據(jù)權(quán)利要求12所述的計(jì)算機(jī)系統(tǒng),其中 所述客戶端安全管理層還用于從所述部件接收對(duì)特定內(nèi)容的解密請(qǐng)求;以及在解密所述加密的內(nèi)容密鑰之前,確定針對(duì)所述特定內(nèi)容的內(nèi)容策略是否允許對(duì)所述 特定內(nèi)容進(jìn)行解密。
17.根據(jù)權(quán)利要求16所述的計(jì)算機(jī)系統(tǒng),其中所述客戶端安全管理層還用于在沒有連接到提供了所述特定內(nèi)容的內(nèi)容服務(wù)器的情 況下,確定針對(duì)所述特定內(nèi)容的內(nèi)容策略是否允許對(duì)所述特定內(nèi)容進(jìn)行解密。
18.根據(jù)權(quán)利要求12所述的計(jì)算機(jī)系統(tǒng),其中所述客戶端安全管理層還用于通過驗(yàn)證用于所述部件的清單來確認(rèn)所述部件的完整性。
19.根據(jù)權(quán)利要求12所述的計(jì)算機(jī)系統(tǒng),其中所述客戶端安全管理層還用于通過確認(rèn)用于所述部件的代碼匹配用于所述部件的代 碼的標(biāo)準(zhǔn)來確認(rèn)所述部件的完整性。
20.一種計(jì)算機(jī)系統(tǒng),包括 處理器;存儲(chǔ)器;客戶端安全管理層;以及 內(nèi)容播放器,用于作為部件向所述客戶端安全管理層注冊(cè)以接收對(duì)所述存儲(chǔ)器的保護(hù)部分的保護(hù);從內(nèi)容供應(yīng)者接收加密的內(nèi)容和加密的內(nèi)容密鑰;提供所述加密的內(nèi)容密鑰給所述客戶端安全管理層,其中,所述客戶端安全管理層確 認(rèn)所述部件的完整性,解密所述加密的內(nèi)容密鑰以提供解密的內(nèi)容密鑰,并且將所述解密 的內(nèi)容密鑰放入所述存儲(chǔ)器的保護(hù)部分中;以及使用所述解密的內(nèi)容密鑰將所述加密的內(nèi)容解密到所述存儲(chǔ)器的保護(hù)部分中。
21.根據(jù)權(quán)利要求20所述的計(jì)算機(jī)系統(tǒng),其中所述內(nèi)容播放器還用于向所述內(nèi)容供應(yīng)者提供如下證明證明接收的內(nèi)容被防止受到 未授權(quán)的拷貝。
22.根據(jù)權(quán)利要求21所述的計(jì)算機(jī)系統(tǒng),其中所述證明證明包括用于所述客戶端安全管理層的標(biāo)識(shí)信息。
23.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),包括 指令,其用于代表運(yùn)行在計(jì)算機(jī)系統(tǒng)上的部件控制對(duì)所述計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器的保護(hù)部分的訪問;從所述部件接收加密的內(nèi)容密鑰; 確認(rèn)所述部件的完整性;解密所述加密的內(nèi)容密鑰以提供解密的內(nèi)容密鑰;以及響應(yīng)于確認(rèn)所述部件的完整性,將所述解密的內(nèi)容密鑰放在所述存儲(chǔ)器的保護(hù)部分中。
24.根據(jù)權(quán)利要求23所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述指令還用于通過防止所述計(jì)算機(jī)系統(tǒng)的操作系統(tǒng)訪問所述存儲(chǔ)器的保護(hù)部分來 控制對(duì)所述存儲(chǔ)器的保護(hù)部分的訪問。
25.根據(jù)權(quán)利要求23所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述指令還用于通過防止運(yùn)行在所述計(jì)算機(jī)系統(tǒng)上的未授權(quán)的應(yīng)用程序訪問所述存 儲(chǔ)器的保護(hù)部分來控制對(duì)所述存儲(chǔ)器的保護(hù)部分的訪問。
26.根據(jù)權(quán)利要求23所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述解密的內(nèi)容密鑰對(duì)應(yīng)于由所述部件從內(nèi)容供應(yīng)者接收的內(nèi)容;以及 所述部件使用所述解密的內(nèi)容密鑰來解密所述內(nèi)容。
27.根據(jù)權(quán)利要求23所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中,所述指令還用于 從所述部件接收對(duì)特定內(nèi)容的解密請(qǐng)求;以及在解密所述加密的內(nèi)容密鑰之前,確定針對(duì)所述特定內(nèi)容的內(nèi)容策略是否允許對(duì)所述 特定內(nèi)容進(jìn)行解密。
28.根據(jù)權(quán)利要求23所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述指令還用于在沒有連接到提供所述特定內(nèi)容的內(nèi)容服務(wù)器的情況下,確定針對(duì)所 述特定內(nèi)容的內(nèi)容策略是否允許對(duì)所述特定內(nèi)容進(jìn)行解密。
29.根據(jù)權(quán)利要求23所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述指令還用于通過驗(yàn)證用于所述部件的清單來確認(rèn)所述部件的完整性。
30.根據(jù)權(quán)利要求23所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述指令還用于通過確認(rèn)用于所述部件的代碼匹配用于所述部件的代碼的標(biāo)準(zhǔn)來確認(rèn)所述部件的完整性。
31.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),包括 指令,其用于作為部件向計(jì)算機(jī)系統(tǒng)的客戶端安全管理層注冊(cè)以接收對(duì)所述計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器 的保護(hù)部分的保護(hù);從內(nèi)容供應(yīng)者接收加密的內(nèi)容和加密的內(nèi)容密鑰;提供所述加密的內(nèi)容密鑰給所述客戶端安全管理層,其中,所述客戶端安全管理層確 認(rèn)所述部件的完整性,解密所述加密的內(nèi)容密鑰以提供解密的內(nèi)容密鑰,并且將所述解密 的內(nèi)容密鑰放入所述存儲(chǔ)器的保護(hù)部分中;以及使用所述解密的內(nèi)容密鑰將所述加密的內(nèi)容解密到所述存儲(chǔ)器的保護(hù)部分中。
32.根據(jù)權(quán)利要求31所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述指令還用于向所述內(nèi)容供應(yīng)者提供證明如下證明接收的內(nèi)容被防止受到未授權(quán) 的拷貝。
33.根據(jù)權(quán)利要求32所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中 所述證明證明包括用于所述客戶端安全管理層的標(biāo)識(shí)信息。
全文摘要
一種方法、計(jì)算機(jī)系統(tǒng)和具有指令的計(jì)算機(jī)可讀介質(zhì),其提供確保內(nèi)容免受在接收計(jì)算機(jī)系統(tǒng)上的惡意軟件危害的客戶端安全管理層和內(nèi)容播放器??蛻舳税踩芾韺哟聿考?例如,運(yùn)行在計(jì)算機(jī)系統(tǒng)的處理器上的內(nèi)容播放器),控制對(duì)計(jì)算機(jī)系統(tǒng)的存儲(chǔ)器的保護(hù)部分的訪問??蛻舳税踩芾韺訌牟考邮占用軆?nèi)容密鑰,確認(rèn)部件的完整性,解密加密內(nèi)容密鑰以提供解密內(nèi)容密鑰,并且響應(yīng)于確認(rèn)部件的完整性將解密內(nèi)容密鑰放入存儲(chǔ)器的保護(hù)部分中。還描述并要求保護(hù)了其它實(shí)施例。
文檔編號(hào)G06F21/00GK101894224SQ20091100023
公開日2010年11月24日 申請(qǐng)日期2009年12月25日 優(yōu)先權(quán)日2008年12月30日
發(fā)明者P·德萬 申請(qǐng)人:英特爾公司