專利名稱:用于保護(hù)重放內(nèi)容的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的實(shí)施例涉及計(jì)算系統(tǒng)的數(shù)據(jù)保護(hù)。更特別地,本發(fā)明的實(shí)施例涉及具有視頻處理的計(jì)算系統(tǒng)。
背景技術(shù):
各種類型的安全內(nèi)容可以在計(jì)算機(jī)上被接收以便被重放。例如,按次付費(fèi)的視頻或者專有內(nèi)容可以在計(jì)算機(jī)系統(tǒng)上被接收以用于重放。數(shù)字通用盤(pán)(DVD)內(nèi)容也可以在計(jì)算機(jī)上被播放。內(nèi)容可以以加密的方式到達(dá),并且因此在通往接收計(jì)算機(jī)的道路上不能被容易地?cái)r截。較新的內(nèi)容保護(hù)方案(例如高級(jí)訪問(wèn)內(nèi)容系統(tǒng)(AACS))是用于內(nèi)容分發(fā)和數(shù)字權(quán)利管理的標(biāo)準(zhǔn),其打算限制對(duì)光盤(pán)和DVD的訪問(wèn)與復(fù)制。參見(jiàn)“Advanced Access Content System: Introduction and Common Cryptographic Elements,,Rev 0.91 或 Rev 0.951。所述標(biāo)準(zhǔn)已被采用作為用于HD DVD和藍(lán)光盤(pán)(BD)的訪問(wèn)限制方案。然而,一旦內(nèi)容到達(dá)計(jì)算機(jī),它就可以被解密以用于重放。經(jīng)許可的播放器使用DRM (數(shù)字權(quán)利管理)設(shè)備密鑰以用于提取標(biāo)題密鑰,所述標(biāo)題密鑰然后被用于解密媒體內(nèi)容。典型地,DRM設(shè)備密鑰是使用抗篡改軟件方法來(lái)保護(hù)的,所述抗篡改軟件方法在歷史上常常已被破譯,因此暴露設(shè)備密鑰,從而由未經(jīng)許可的播放器用于未經(jīng)授權(quán)的內(nèi)容拷貝(ripping)。一旦被解密,它就可以被計(jì)算機(jī)系統(tǒng)上的惡意軟件訪問(wèn),并且被未經(jīng)授權(quán)的實(shí)體偷竊。軟件、DVD盤(pán)、游戲、視頻、以及其他內(nèi)容的未經(jīng)授權(quán)的拷貝可以以這種方式被制作。
從在下面給出的詳細(xì)描述以及從本發(fā)明的各種實(shí)施例的附圖,將更充分地理解本發(fā)明的實(shí)施例,然而,其不應(yīng)被認(rèn)為是將本發(fā)明限制于特定實(shí)施例,而是僅僅用于解釋和理解。圖I是具有受保護(hù)內(nèi)容的視頻和音頻數(shù)據(jù)的一個(gè)實(shí)施例。圖2是根據(jù)本發(fā)明的一個(gè)實(shí)施例的安全重放系統(tǒng)的框圖。圖3是用于安全重放的過(guò)程的一個(gè)實(shí)施例的流程圖。圖4示出供本發(fā)明的一個(gè)實(shí)施例使用的計(jì)算機(jī)系統(tǒng)。
具體實(shí)施例方式給出一種用于安全的重放的裝置。在一個(gè)實(shí)施例中,安全的重放是結(jié)合開(kāi)放PC平臺(tái)來(lái)執(zhí)行的。在一個(gè)實(shí)施例中,所述裝置包括控制器,所述控制器包括管理認(rèn)證和密鑰導(dǎo)出的密鑰導(dǎo)出模塊。在一個(gè)實(shí)施例中,如果系統(tǒng)上的圖形引擎能夠本身處理視頻數(shù)據(jù)(例如,如果視頻數(shù)據(jù)部分在數(shù)據(jù)流中是可識(shí)別的而不必解密數(shù)據(jù)流),則密鑰導(dǎo)出模塊把內(nèi)容解密密鑰經(jīng)由安全的通道提供給圖形引擎。在另一實(shí)施例中,如果圖形引擎不是本身處理視頻數(shù)據(jù)(例如,視頻數(shù)據(jù)部分和音頻數(shù)據(jù)部分在數(shù)據(jù)流中以這樣的方式進(jìn)行交織,即數(shù)據(jù)流要被解密以便解復(fù)用視頻和音頻數(shù)據(jù)部分),則所述裝置包括結(jié)合加密密鑰來(lái)解密數(shù)據(jù)的一部分以生成視頻信息和視頻數(shù)據(jù)的解密模塊。所述控制器然后把視頻數(shù)據(jù)的加密版本寫(xiě)入到圖形引擎的視頻緩沖器。在下列描述中,闡述許多細(xì)節(jié)以提供對(duì)本發(fā)明的實(shí)施例的更透徹的解釋。然而,對(duì)于本領(lǐng)域技術(shù)人員而言下述將是明顯的,即本發(fā)明的實(shí)施例可以在沒(méi)有這些特定細(xì)節(jié)的情況下被實(shí)踐。在其他實(shí)例中,公知的結(jié)構(gòu)和設(shè)備以框圖的形式(而不是詳細(xì)地)被示出,以免模糊本發(fā)明的實(shí)施例。后面的詳細(xì)描述的一些部分是按照對(duì)于在計(jì)算機(jī)存儲(chǔ)器內(nèi)的數(shù)據(jù)比特的操作的算法和符號(hào)表示來(lái)給出的。這些算法描述和表示是由數(shù)據(jù)處理領(lǐng)域的技術(shù)人員用來(lái)將他們的工作的實(shí)質(zhì)最有效地傳達(dá)給該領(lǐng)域的其他技術(shù)人員的手段。算法在這里并且通常被認(rèn)為是導(dǎo)致期望結(jié)果的步驟的前后一致的序列。所述步驟是需要物理量的物理操縱的步驟。通常,盡管不是一定,這些量采取能夠被存儲(chǔ)、傳送、組合、比較、以及以別的方式被操縱的電·的或磁的信號(hào)的形式。主要出于常用的原因,已證明把這些信號(hào)稱作比特、值、元素、符號(hào)、字符、項(xiàng)、數(shù)字等等有時(shí)是方便的。然而,應(yīng)當(dāng)記住,所有這些和類似的術(shù)語(yǔ)將與適當(dāng)?shù)奈锢砹肯嚓P(guān)聯(lián),并且僅僅是應(yīng)用于這些量的方便的標(biāo)記。除非有與從下列討論中明顯的所不同的專門(mén)說(shuō)明,否則要認(rèn)識(shí)至IJ,在整個(gè)本描述中,利用諸如“處理”或“計(jì)算”或“運(yùn)算”或“確定”或“顯示”等等之類的術(shù)語(yǔ)的討論是指計(jì)算機(jī)系統(tǒng)或類似電子計(jì)算設(shè)備的動(dòng)作和過(guò)程,其把在計(jì)算機(jī)系統(tǒng)的寄存器內(nèi)表示為物理(電子)量的數(shù)據(jù)操縱和轉(zhuǎn)換為在計(jì)算機(jī)系統(tǒng)存儲(chǔ)器或寄存器或其他這樣的信息存儲(chǔ)、傳輸和顯示設(shè)備內(nèi)類似地表示為物理量的其他數(shù)據(jù)。本發(fā)明的實(shí)施例還涉及用于執(zhí)行在這里的操作的裝置。一些裝置可以被特別地構(gòu)造以用于所需目的,或者它可以包括通用計(jì)算機(jī),所述通用計(jì)算機(jī)由存儲(chǔ)在計(jì)算機(jī)中的計(jì)算機(jī)程序選擇性地激活或重新配置。這樣的計(jì)算機(jī)程序可以被存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如但不限于任何類型的盤(pán),包括軟盤(pán)、光盤(pán)、CD-ROM、DVD-ROM、以及磁光盤(pán)、只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)、EPROM、EEPROM、NVRAM、磁或光卡,或者任何類型的適用于存儲(chǔ)電子指令的介質(zhì),并且每個(gè)被耦合到計(jì)算機(jī)系統(tǒng)總線。在這里給出的算法和顯示并不與任何特定計(jì)算機(jī)或其他裝置固有地相關(guān)。各種通用系統(tǒng)可以根據(jù)在這里的教導(dǎo)而與程序一起被使用,或者構(gòu)造更專用的裝置以執(zhí)行所需的方法步驟可能證明是方便的。多種的這些系統(tǒng)的所需結(jié)構(gòu)將從在下面的描述中看到。另外,本發(fā)明的實(shí)施例沒(méi)有參照任何特定編程語(yǔ)言來(lái)描述。將認(rèn)識(shí)到,多種編程語(yǔ)言可以被用來(lái)實(shí)施如在這里描述的本發(fā)明的教導(dǎo)。機(jī)器可讀介質(zhì)包括用于存儲(chǔ)或傳送機(jī)器(例如計(jì)算機(jī))可讀的形式的信息的任何機(jī)構(gòu)。例如,機(jī)器可讀介質(zhì)包括只讀存儲(chǔ)器(“ROM”)、隨機(jī)存取存儲(chǔ)器(“RAM”)、磁盤(pán)存儲(chǔ)介質(zhì)、光存儲(chǔ)介質(zhì)、閃速存儲(chǔ)器設(shè)備等等。在這里描述的方法和裝置是用于安全重放系統(tǒng)的。具體而言,安全重放系統(tǒng)主要是參照多核心處理器計(jì)算機(jī)系統(tǒng)討論的。然而,用于安全重放系統(tǒng)的方法和裝置不限于此,因?yàn)樗鼈兛梢栽诨蛘呓Y(jié)合諸如蜂窩電話、個(gè)人數(shù)字助理、嵌入式控制器、移動(dòng)平臺(tái)、臺(tái)式平臺(tái)、以及服務(wù)器平臺(tái)之類的任何集成電路設(shè)備或系統(tǒng),以及結(jié)合諸如硬件/軟件線程之類的其他資源被實(shí)施。概觀
給出一種用于安全的重放的裝置。在一個(gè)實(shí)施例中,安全的重放是結(jié)合開(kāi)放PC平臺(tái)來(lái)執(zhí)行的。在一個(gè)實(shí)施例中,所述裝置包括控制器,所述控制器包括管理認(rèn)證和密鑰導(dǎo)出的密鑰導(dǎo)出模塊。在一個(gè)實(shí)施例中,如果系統(tǒng)上的圖形引擎能夠本身處理視頻數(shù)據(jù)(例如,如果視頻數(shù)據(jù)部分在數(shù)據(jù)流中是可識(shí)別的而不必解密數(shù)據(jù)流),則密鑰導(dǎo)出模塊把內(nèi)容解密密鑰經(jīng)由安全的通道提供給圖形引擎。在另一實(shí)施例中,如果圖形引擎不是本身處理視頻數(shù)據(jù)(例如,視頻數(shù)據(jù)部分和音頻數(shù)據(jù)部分在數(shù)據(jù)流中以這樣的方式進(jìn)行交織,即數(shù)據(jù)流要被解密以便解復(fù)用視頻和音頻數(shù)據(jù)部分),則所述裝置包括結(jié)合加密密鑰來(lái)解密數(shù)據(jù)的一部分以生成視頻信息和視頻數(shù)據(jù)的解密模塊。所述控制器然后把視頻數(shù)據(jù)的加密版本寫(xiě)入到圖形引擎的視頻緩沖器。
圖I是具有受保護(hù)內(nèi)容的視頻和音頻數(shù)據(jù)的一個(gè)實(shí)施例。參照?qǐng)DI,在一個(gè)實(shí)施例中,來(lái)自存儲(chǔ)裝置的音頻/視頻數(shù)據(jù)(或其他類型的數(shù)據(jù))被分成兩類受保護(hù)內(nèi)容40和無(wú)保護(hù)內(nèi)容38。無(wú)保護(hù)內(nèi)容38也被稱為不太敏感數(shù)據(jù)或非敏感數(shù)據(jù)。在一個(gè)實(shí)施例中,來(lái)自無(wú)保護(hù)內(nèi)容38的內(nèi)容被給予普通保護(hù)或相對(duì)較低的保護(hù)。例如,無(wú)保護(hù)內(nèi)容38不被加密。在一個(gè)實(shí)施例中,文件中的數(shù)據(jù)包括與關(guān)于數(shù)據(jù)保護(hù)的不同程度的敏感性相關(guān)聯(lián)的不同內(nèi)容。例如,將由圖形引擎處理以用于生成視頻顯示的視頻數(shù)據(jù)是敏感數(shù)據(jù)。另一方面,當(dāng)與視頻數(shù)據(jù)相比時(shí),音頻數(shù)據(jù)是不太敏感數(shù)據(jù)。在一個(gè)實(shí)施例中,受保護(hù)內(nèi)容40也被稱為敏感數(shù)據(jù)。所述數(shù)據(jù)通過(guò)加密被保護(hù)。例如,所述數(shù)據(jù)在硬件處理期間被保護(hù),使得在計(jì)算機(jī)上運(yùn)行的軟件和除了圖形引擎設(shè)備以外的硬件設(shè)備不能訪問(wèn)存儲(chǔ)所述數(shù)據(jù)的中間緩沖器。在一個(gè)實(shí)施例中,與標(biāo)準(zhǔn)數(shù)字視盤(pán)相比,高密度數(shù)字視盤(pán)(HD-DVD)需要更高的保護(hù)。HD-DVD盤(pán)可以包含加密的內(nèi)容。媒體播放器應(yīng)用結(jié)合了在來(lái)自高級(jí)訪問(wèn)內(nèi)容系統(tǒng)(AACS)許可管理員的許可下獲得的AACS設(shè)備密鑰,該設(shè)備密鑰允許所述應(yīng)用解密來(lái)自盤(pán)的內(nèi)容并且然后處理該內(nèi)容以用于重放。標(biāo)題密鑰是在來(lái)自存儲(chǔ)裝置的內(nèi)容能夠被解密之前從存儲(chǔ)裝置(例如盤(pán))中導(dǎo)出的。在一個(gè)實(shí)施例中,密鑰對(duì)于媒體播放器應(yīng)用是不透明的,并且僅僅對(duì)于處理硬件是可訪問(wèn)的。在一個(gè)實(shí)施例中,安全重放系統(tǒng)通過(guò)使用硬件執(zhí)行敏感媒體處理操作來(lái)實(shí)現(xiàn)對(duì)媒體內(nèi)容的安全重放。這樣的敏感處理操作包括執(zhí)行DRM密鑰導(dǎo)出和提取標(biāo)題密鑰,所述標(biāo)題密鑰然后被用于解密媒體內(nèi)容。重放系統(tǒng)分離出媒體流中敏感的和不太敏感的內(nèi)容。在一個(gè)實(shí)施例中,重放系統(tǒng)將敏感視頻內(nèi)容打包,使得它只能由圖形引擎來(lái)消費(fèi)。在一個(gè)實(shí)施例中,不太敏感數(shù)據(jù)包括但不限于導(dǎo)航數(shù)據(jù)、音頻數(shù)據(jù)、控制信息、視頻的非切片(non-slice)數(shù)據(jù)、以及視頻切片首部(header)。控制信息例如包括序列首部、序列可伸縮擴(kuò)展、圖像參數(shù)、以及入口點(diǎn)層。在一個(gè)實(shí)施例中,不太敏感數(shù)據(jù)包括首部(視頻)、音頻幀、以及導(dǎo)航幀。不太敏感數(shù)據(jù)被提供給TRS (抗篡改軟件)應(yīng)用以允許用戶導(dǎo)航電影和執(zhí)行音頻處理。在一個(gè)實(shí)施例中,敏感數(shù)據(jù)包括“密鑰”(例如加密密鑰)和視頻數(shù)據(jù)。在一個(gè)實(shí)施例中,對(duì)于敏感數(shù)據(jù)的保護(hù)是由關(guān)于圖2的安全重放系統(tǒng)提供的。
圖2是根據(jù)本發(fā)明的一個(gè)實(shí)施例的安全重放系統(tǒng)的框圖。許多相關(guān)部件(例如總線和外圍設(shè)備)未被示出以免模糊本發(fā)明。參照?qǐng)D2,安全重放系統(tǒng)包括應(yīng)用201、DRM平臺(tái)210、圖形引擎220和音頻編解碼器230。安全重放系統(tǒng)被耦合以接收來(lái)自存儲(chǔ)裝置250的數(shù)據(jù)(例如音頻/視頻數(shù)據(jù))。在一個(gè)實(shí)施例中,應(yīng)用201包括解密202、導(dǎo)航數(shù)據(jù)204、音頻數(shù)據(jù)205、視頻信息206、以及PAVP-音頻(保護(hù)音頻視頻路徑)加密207。在一個(gè)實(shí)施例中,DRM平臺(tái)210包括驅(qū)動(dòng)認(rèn)證與密鑰導(dǎo)出211、DRM解密212、加密213、PAVP加密214、SRAM 215、比特分析器216、以及首部分析器217。在一個(gè)實(shí)施例中,DRM解密212、加密213、PAVP加密214、SRAM 215、比特分析器216、以及首部分析器217是DRM平臺(tái)210中的可選部件。在一個(gè)實(shí)施例中,圖形引擎220包括PAVP解密221、解碼222、處理223、以及顯示224。在一個(gè)實(shí)施例中,PAVP解密221經(jīng)由接口 262被耦合到PAVP加密214。在一個(gè)實(shí)施例中,音頻編解碼器230包括PAVP解密231和呈現(xiàn)(rendering)引擎232。PAVP解密231經(jīng)由接口 261被耦合到PAVP-A加密207。在一個(gè)實(shí)施例中,DRM平臺(tái)210包括嵌入式微控制器。在一個(gè)實(shí)施例中,應(yīng)用201把利用DRM密鑰(例如標(biāo)題密鑰)加密的內(nèi)容從盤(pán)發(fā)送到DRM平臺(tái)210。應(yīng)用201從DRM平臺(tái)210接收足夠的數(shù)據(jù)以控制重放過(guò)程。應(yīng)用201從其緩沖器推斷出視頻切片的開(kāi)始和視頻切片的長(zhǎng)度,并且使用來(lái)自緩沖器的其他不太敏感內(nèi)容。在一個(gè)實(shí)施例中,應(yīng)用201能夠訪問(wèn)僅僅視頻首部、系統(tǒng)信息、以及切片首部。在一個(gè)實(shí)施例中,DRM平臺(tái)210分析媒體流并把它分成兩個(gè)部分包含敏感內(nèi)容(切片數(shù)據(jù))的第一部分和包含不太敏感內(nèi)容的第二部分。敏感內(nèi)容利用僅僅對(duì)于圖形處理硬件是已知的密鑰進(jìn)行加密。視頻數(shù)據(jù)利用DRM解密212進(jìn)行解密,以及再次由PAVP加密214進(jìn)行加密,使得數(shù)據(jù)然后被寫(xiě)入到圖形引擎220 (或其緩沖器)。在一個(gè)實(shí)施例中,不太敏感內(nèi)容被傳回到應(yīng)用201,使得應(yīng)用201能夠引導(dǎo)視頻(例如電影)的重放。不太敏感數(shù)據(jù)(例如視頻信息206)包括導(dǎo)航數(shù)據(jù)、視頻首部數(shù)據(jù)(以及被認(rèn)為不太敏感的音頻)。在一個(gè)實(shí)施例中,加密213利用將與應(yīng)用201共享的密鑰來(lái)加密視頻息。在一個(gè)實(shí)施例中,DRM平臺(tái)210把數(shù)據(jù)分成部分。一個(gè)部分僅僅對(duì)于應(yīng)用201是可見(jiàn)的。另一部分僅僅對(duì)于圖形引擎220是可見(jiàn)的。這使應(yīng)用201與敏感視頻數(shù)據(jù)隔絕,但是仍然提供足夠的信息以允許應(yīng)用201控制視頻解碼和重放過(guò)程。在一個(gè)實(shí)施例中,DRM平臺(tái)210結(jié)合由平臺(tái)控制器中心提供的通用解密引擎來(lái)執(zhí)行加密與解密。在一個(gè)實(shí)施例中,驅(qū)動(dòng)認(rèn)證與密鑰導(dǎo)出211是具有公-私密鑰功能的密碼引擎。驅(qū)動(dòng)認(rèn)證與密鑰導(dǎo)出211建立會(huì)話密鑰,舉例來(lái)說(shuō),例如在DRM平臺(tái)210與應(yīng)用201之間的密鑰、在DRM平臺(tái)210與圖形引擎220之間的密鑰、以及在應(yīng)用201與音頻編解碼器230之間的密鑰。驅(qū)動(dòng)認(rèn)證與密鑰導(dǎo)出211還執(zhí)行如由各種媒體格式所需的密鑰導(dǎo)出。在一個(gè)實(shí)施例中,InDMA引擎包括驅(qū)動(dòng)認(rèn)證與密鑰導(dǎo)出211。該引擎從系統(tǒng)存儲(chǔ)器讀取內(nèi)容,解密所述內(nèi)容,并把經(jīng)解密的內(nèi)容寫(xiě)入到SRAM 215。在一個(gè)實(shí)施例中,首部分析器217掃描數(shù)據(jù)緩沖器以確定分組邊界(例如MPEG2傳輸首部)。首部分析器217還識(shí)別分析的指令以用于確定敏感的與不太敏感的數(shù)據(jù)之間的·邊界。
在一個(gè)實(shí)施例中,比特分析器216是可編程分析器,其執(zhí)行比特分析以確定其中包含敏感數(shù)據(jù)(或否則不太敏感數(shù)據(jù))的偏移。在一個(gè)實(shí)施例中,比特分析器216處理能夠分析MPEG2、MPEG4和VCl視頻數(shù)據(jù)流以確定切片首部與切片數(shù)據(jù)(宏塊數(shù)據(jù))的邊界的不同程序。在一個(gè)實(shí)施例中,outDMA引擎包括加密213和PAVP加密214。所述引擎創(chuàng)建兩個(gè)輸出緩沖器1)用于應(yīng)用201的緩沖器,其僅僅包含不太敏感數(shù)據(jù),而敏感數(shù)據(jù)被遮蔽(例如利用I或O來(lái)填充);和2)用于圖形引擎220的緩沖器,其利用在DRM平臺(tái)210與圖形引擎220之間共享的會(huì)話密鑰進(jìn)行加密。在一個(gè)實(shí)施例中,用于圖形引擎220的緩沖器包含敏感視頻宏塊數(shù)據(jù)。所述緩沖器是不能由應(yīng)用201讀取的(訪問(wèn)的)。在一個(gè)實(shí)施例中,PAVP270覆蓋接口 262和圖形引擎220,其中敏感數(shù)據(jù)結(jié)合硬件密鑰(例如AACS密鑰)被保護(hù)。在一個(gè)實(shí)施例中,音頻數(shù)據(jù)205由PAVP-加密207進(jìn)行加密,并且經(jīng)由接口 261被發(fā)送到音頻編解碼器230。在一個(gè)實(shí)施例中,PAVP解密231解密音頻數(shù)據(jù),并且呈現(xiàn)音頻數(shù)據(jù)以用于重放。 在一個(gè)實(shí)施例中,(圖形引擎220的)PAVP解密221接收視頻數(shù)據(jù)的加密版本。PAVP解密221解密視頻數(shù)據(jù)。解碼222解碼視頻數(shù)據(jù)。在視頻數(shù)據(jù)準(zhǔn)備好用于顯示224之前,處理223對(duì)視頻數(shù)據(jù)執(zhí)行視頻處理。在一個(gè)實(shí)施例中,應(yīng)用201執(zhí)行數(shù)據(jù)類型(幀類型)的檢測(cè)。如果首部沒(méi)有被加密,則所述檢測(cè)在沒(méi)有安全密鑰的情況下是可能的。敏感數(shù)據(jù)(如果被檢測(cè)到的話)將被傳播到DRM 平臺(tái) 210。在一個(gè)實(shí)施例中,用于安全重放的系統(tǒng)可被用于任何種類的加密材料,包括圖形、視頻、靜止圖像、文本、游戲、軟件、或數(shù)據(jù)。在一個(gè)實(shí)施例中,加密和解密根據(jù)由National Institute of Standards andTechnology (NIST) , Washington, D. C.開(kāi)發(fā)的高級(jí)加密標(biāo)準(zhǔn)(AES)來(lái)執(zhí)行。圖3是用于安全重放的過(guò)程的一個(gè)實(shí)施例的流程圖。所述過(guò)程由可以包括硬件(電路、專用邏輯等等)、軟件(例如在通用計(jì)算機(jī)系統(tǒng)或?qū)S脵C(jī)器上運(yùn)行的軟件)、或二者的組合的處理邏輯來(lái)執(zhí)行。在一個(gè)實(shí)施例中,所述過(guò)程結(jié)合安全重放系統(tǒng)(例如關(guān)于圖2的安全重放系統(tǒng))來(lái)執(zhí)行。在一個(gè)實(shí)施例中,所述過(guò)程由關(guān)于圖4的計(jì)算機(jī)系統(tǒng)來(lái)執(zhí)行。參照?qǐng)D3,在一個(gè)實(shí)施例中,處理邏輯從檢索不透明DRM設(shè)備密鑰(過(guò)程塊301)開(kāi)始。不透明密鑰是播放器應(yīng)用不能訪問(wèn)的安全碼的一部分。在一個(gè)實(shí)施例中,處理邏輯發(fā)送DRM包裝的標(biāo)題密鑰(過(guò)程塊302)。處理邏輯執(zhí)行DRM密鑰導(dǎo)出并提取(解密)標(biāo)題密鑰。在一個(gè)實(shí)施例中,處理邏輯確定是否需要解密以訪問(wèn)數(shù)據(jù)中的內(nèi)容(過(guò)程塊303)。在一個(gè)實(shí)施例中,如果不需要解密,則處理邏輯把內(nèi)容解密密鑰提供給圖形引擎(過(guò)程塊304 )。否則,在一個(gè)實(shí)施例中,處理邏輯接收不透明密鑰(過(guò)程塊305)。響應(yīng)于應(yīng)用的執(zhí)行,處理邏輯接收包括第一密鑰的認(rèn)證信息。處理邏輯結(jié)合第一密鑰來(lái)執(zhí)行密鑰導(dǎo)出,并且解密數(shù)據(jù)的一部分以生成視頻信息和視頻數(shù)據(jù)。在一個(gè)實(shí)施例中,第一密鑰對(duì)于應(yīng)用是不透明的,以及視頻數(shù)據(jù)的未加密版本對(duì)于所述應(yīng)用是受保護(hù)的。在一個(gè)實(shí)施例中,處理邏輯提取音頻/視頻數(shù)據(jù)(過(guò)程塊320 )。處理邏輯發(fā)送音頻數(shù)據(jù)(到應(yīng)用)(過(guò)程塊306)。處理邏輯加密音頻數(shù)據(jù)(過(guò)程塊307)。在一個(gè)實(shí)施例中,力口密密鑰在應(yīng)用與音頻引擎之間是共享的。處理邏輯發(fā)送音頻數(shù)據(jù)以用于音頻呈現(xiàn)(過(guò)程塊308)。處理邏輯解密并呈現(xiàn)音頻數(shù)據(jù)(過(guò)程塊309)。在一個(gè)實(shí)施例中,處理邏輯加密視頻數(shù)據(jù)(過(guò)程塊321)。在一個(gè)實(shí)施例中,加密密鑰在平臺(tái)硬件與圖形引擎之間是共享的。在一個(gè)實(shí)施例中,處理邏輯把包括音頻數(shù)據(jù)和視頻首部的視頻信息發(fā)送到應(yīng)用(過(guò)程塊321)。在一個(gè)實(shí)施例中,處理邏輯把視頻宏塊數(shù)據(jù)寫(xiě)入到緩沖器以供圖形引擎使用(過(guò)程塊322)。在一個(gè)實(shí)施例中,處理邏輯解密并呈現(xiàn)視頻數(shù)據(jù)(過(guò)程塊323)。圖4是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的計(jì)算機(jī)系統(tǒng)的框圖。在一個(gè)實(shí)施例中,計(jì)算機(jī)系統(tǒng)包括處理器105、存儲(chǔ)器/圖形控制器108、平臺(tái)控制器中心109、主存儲(chǔ)器115、以及非易失性存儲(chǔ)器160。在一個(gè)實(shí)施例中,處理器105訪問(wèn)來(lái)自第I級(jí)(LI)高速緩沖存儲(chǔ)器106、第2級(jí)(L2)高速緩沖存儲(chǔ)器110、以及主存儲(chǔ)器115的數(shù)據(jù)。在一個(gè)實(shí)施例中,處理器105被耦合到存儲(chǔ)器/圖形控制器108。存儲(chǔ)器/圖形控制器108被耦合到平臺(tái)控制器中心109,平臺(tái)控制器中心109又被耦合到非易失性存儲(chǔ)器160、固態(tài)盤(pán)125、硬盤(pán)驅(qū)動(dòng)器 120、網(wǎng)絡(luò)接口 130、以及無(wú)線接口 140。在一個(gè)實(shí)施例中,主存儲(chǔ)器115裝載操作系統(tǒng)150。在一個(gè)實(shí)施例中,處理器105包括核心101、核心102、高速緩沖存儲(chǔ)器103、以及高速緩沖存儲(chǔ)器106。在一個(gè)實(shí)施例中,高速緩沖存儲(chǔ)器103是核心101的專用高速緩沖存儲(chǔ)器,而高速緩沖存儲(chǔ)器106是核心102的專用高速緩沖存儲(chǔ)器。在一個(gè)實(shí)施例中,主存儲(chǔ)器115可以以各種存儲(chǔ)器資源來(lái)實(shí)施,例如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、硬盤(pán)驅(qū)動(dòng)器(HDD) 120、基于NVRAM技術(shù)的固態(tài)盤(pán)125、或者位于遠(yuǎn)離計(jì)算機(jī)系統(tǒng)的經(jīng)由網(wǎng)絡(luò)接口 130或經(jīng)由無(wú)線接口 140的包含各種存儲(chǔ)設(shè)備和技術(shù)的存儲(chǔ)器資源。高速緩沖存儲(chǔ)器可以位于處理器內(nèi)或者非常接近處理器,例如在處理器的局部總線107上。在一個(gè)實(shí)施例中,非易失性存儲(chǔ)器160是系統(tǒng)只讀存儲(chǔ)器(ROM)或非易失性存儲(chǔ)器設(shè)備。在一個(gè)實(shí)施例中,平臺(tái)控制器中心109包括一個(gè)或多個(gè)加密/解密模塊和視頻處理模塊(未示出)。在一個(gè)實(shí)施例中,平臺(tái)控制器中心109利用單個(gè)鏈路(即互連或總線)被耦合到處理器105。在一個(gè)實(shí)施例中,這個(gè)耦合可以通過(guò)一系列鏈路來(lái)完成。在一個(gè)實(shí)施例中,處理器105通過(guò)第一鏈路(例如局部總線107)被耦合到存儲(chǔ)器/圖形控制器108 (其中存儲(chǔ)器復(fù)合體(complex)與存儲(chǔ)器子系統(tǒng)進(jìn)行接口),以及存儲(chǔ)器/圖形控制器108通過(guò)第二鏈路被耦合到平臺(tái)控制器中心109。在一個(gè)實(shí)施例中,I/O互連是點(diǎn)對(duì)點(diǎn)互連與總線的組
八
口 ο在許多實(shí)施例中,存在至少一個(gè)處理器105。在一個(gè)實(shí)施例中,在系統(tǒng)中存在多個(gè)處理器核心(核心101-102)。在一個(gè)實(shí)施例中,在系統(tǒng)中存在多個(gè)處理器,每個(gè)具有單個(gè)或多個(gè)核心(未不出)。在其中系統(tǒng)中有多個(gè)核心和/或多個(gè)處理器的實(shí)施例中,單個(gè)主核心被指定來(lái)在系統(tǒng)中執(zhí)行引導(dǎo)和其他這樣的系統(tǒng)處理過(guò)程。在一個(gè)實(shí)施例中,處理器105、高速緩沖存儲(chǔ)器106、存儲(chǔ)器/圖形控制器108、以及平臺(tái)控制器中心109在相同的封裝中。在一個(gè)實(shí)施例中,處理器105、高速緩沖存儲(chǔ)器106、存儲(chǔ)器/圖形控制器108、以及平臺(tái)控制器中心109在相同的襯底上。在一個(gè)實(shí)施例中,處理器105、高速緩沖存儲(chǔ)器106、存儲(chǔ)器/圖形控制器108、以及平臺(tái)控制器中心109在相同的襯底上或在相同的封裝中。然而,本發(fā)明的其他實(shí)施例可以存在于結(jié)合圖4的系統(tǒng)的其他電路、邏輯單元、或設(shè)備中。而且,本發(fā)明的其他實(shí)施例可以分布在圖4中所示的幾個(gè)電路、邏輯單元、或設(shè)備中。本發(fā)明不限于所描述的實(shí)施例,而是可以利用在所附權(quán)利要求的精神和范圍內(nèi)的修改和改變來(lái)實(shí)踐。例如,應(yīng)當(dāng)認(rèn)識(shí)到,本發(fā)明適用于供所有類型的半導(dǎo)體集成電路(“1C”)芯片使用。這些IC芯片的例子包括但不限于處理器、控制器、芯片組部件、可編程邏輯陣列(PLA)、存儲(chǔ)器芯片、網(wǎng)絡(luò)芯片等等。而且,應(yīng)當(dāng)認(rèn)識(shí)到,可能已經(jīng)給出示例性尺寸/型號(hào)/值/范圍,盡管本發(fā)明的實(shí)施例不限于此。隨著時(shí)間過(guò)去制造技術(shù)(例如光刻術(shù))變得成熟,預(yù)期可以制造更小尺寸的設(shè)備。雖然對(duì)于本領(lǐng)域技術(shù)人員而言在已經(jīng)閱讀前述描述之后本發(fā)明的實(shí)施例的許多改變和修改將無(wú)疑變得明顯,但是應(yīng)當(dāng)理解,通過(guò)說(shuō)明的方式示出和描述的任何特定實(shí)施例決不打算被認(rèn)為是限制性的。因此,對(duì)各種實(shí)施例的細(xì)節(jié)的提及不打算限制權(quán)利要求的 范圍,所述權(quán)利要求本身只記載被看作對(duì)于本發(fā)明而言必需的那些特征。
權(quán)利要求
1.一種裝置,包括 控制器,其包括密鑰導(dǎo)出模塊;以及 解密模塊,其結(jié)合來(lái)自所述控制器的第一密鑰來(lái)解密第一數(shù)據(jù)的第一部分以生成視頻信息和視頻數(shù)據(jù),其中所述控制器能夠操作用來(lái)把所述視頻數(shù)據(jù)的加密版本寫(xiě)入到圖形引擎的視頻緩沖器。
2.根據(jù)權(quán)利要求I所述的裝置,其中,如果所述第一數(shù)據(jù)中的視頻數(shù)據(jù)部分和音頻數(shù)據(jù)部分是可識(shí)別的而不必解密所述第一數(shù)據(jù),則所述控制器能夠操作用來(lái)把內(nèi)容解密密鑰安全地提供給圖形引擎和音頻引擎。
3.根據(jù)權(quán)利要求I所述的裝置,還包括 第一加密模塊,其通過(guò)使用第二密鑰來(lái)加密視頻數(shù)據(jù);以及 第二加密模塊,其通過(guò)使用第三密鑰來(lái)加密視頻信息,其中所述視頻數(shù)據(jù)是敏感數(shù)據(jù),以及所述視頻信息與所述視頻數(shù)據(jù)相比是不太敏感的。
4.根據(jù)權(quán)利要求3所述的裝置,其中,所述圖形引擎能夠操作用來(lái)通過(guò)使用所述第二密鑰來(lái)解密經(jīng)加密的視頻數(shù)據(jù),以及處理所述視頻數(shù)據(jù)以用于顯示。
5.根據(jù)權(quán)利要求3所述的裝置,其中,所述第一密鑰是DRM(數(shù)字權(quán)利管理)設(shè)備密鑰,其中所述控制器能夠操作用來(lái)與所述圖形引擎共享所述第二密鑰,以及與應(yīng)用共享所述第三密鑰以解密所述視頻信息的加密版本。
6.根據(jù)權(quán)利要求I所述的裝置,其中,包括音頻數(shù)據(jù)和視頻首部的所述視頻信息的加密版本要由應(yīng)用來(lái)解密,其中所述視頻數(shù)據(jù)的未加密版本對(duì)于所述應(yīng)用是受保護(hù)的,以及所述第一密鑰對(duì)于所述應(yīng)用是不透明的。
7.根據(jù)權(quán)利要求I所述的裝置,其中,所述第一數(shù)據(jù)的第一部分的保護(hù)級(jí)別與所述第一數(shù)據(jù)的第二部分的保護(hù)級(jí)別相比是更高的級(jí)別。
8.根據(jù)權(quán)利要求I所述的裝置,其中,所述視頻信息包括確定視頻切片數(shù)據(jù)的開(kāi)始和所述視頻切片數(shù)據(jù)的長(zhǎng)度的數(shù)據(jù)。
9.根據(jù)權(quán)利要求I所述的裝置,還包括 首部分析器,其掃描數(shù)據(jù)緩沖器以確定所述第一數(shù)據(jù)的分組邊界以及識(shí)別分析的指令以用于確定敏感的與不太敏感的數(shù)據(jù)之間的邊界;以及 比特分析器,其對(duì)所述第一數(shù)據(jù)執(zhí)行分析以確定敏感的與不太敏感的數(shù)據(jù)的偏移。
10.一種方法,包括 從第一應(yīng)用接收包括第一密鑰的認(rèn)證信息; 結(jié)合所述第一密鑰來(lái)執(zhí)行密鑰導(dǎo)出; 提取標(biāo)題密鑰;以及 解密第一數(shù)據(jù)的第一部分以生成視頻信息和視頻數(shù)據(jù),其中所述第一密鑰對(duì)于所述第一應(yīng)用是不透明的,以及所述視頻數(shù)據(jù)的未加密版本對(duì)于所述第一應(yīng)用是受保護(hù)的。
11.根據(jù)權(quán)利要求10所述的方法,還包括把所述第一數(shù)據(jù)分成第一部分和第二部分,其中所述第一數(shù)據(jù)的第一部分的保護(hù)級(jí)別與所述第一數(shù)據(jù)的第二部分的保護(hù)級(jí)別相比是更高的級(jí)別。
12.根據(jù)權(quán)利要求10所述的方法,還包括 通過(guò)使用第二密鑰來(lái)加密所述視頻數(shù)據(jù);通過(guò)使用第三密鑰來(lái)加密所述視頻信息;以及 生成要被存儲(chǔ)到圖形引擎的視頻緩沖器的所述視頻數(shù)據(jù)的加密版本,其中所述視頻數(shù)據(jù)是敏感數(shù)據(jù),以及所述視頻信息與所述視頻數(shù)據(jù)相比是不太敏感的。
13.根據(jù)權(quán)利要求12所述的方法,還包括 通過(guò)使用所述第二密鑰來(lái)解密視頻數(shù)據(jù)的加密版本;以及 解密所述視頻數(shù)據(jù)以用于顯示。
14.根據(jù)權(quán)利要求12所述的方法,還包括由所述第一應(yīng)用解密包括音頻數(shù)據(jù)和視頻首部的所述視頻信息的加密版本。
15.根據(jù)權(quán)利要求12所述的方法,還包括 與所述圖形引擎共享所述第二密鑰;以及 與所述第一應(yīng)用共享所述第三密鑰以解密所述視頻信息的加密版本,其中所述第一密鑰是DRM密鑰。
16.一種包括計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的制品,所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括在其上存儲(chǔ)指令的數(shù)據(jù),所述指令在由機(jī)器訪問(wèn)時(shí)使得所述機(jī)器執(zhí)行包括下述的方法 從第一應(yīng)用接收包括第一密鑰的認(rèn)證信息; 結(jié)合所述第一密鑰來(lái)執(zhí)行密鑰導(dǎo)出;以及 解密第一數(shù)據(jù)的第一部分以生成視頻信息和視頻數(shù)據(jù),其中所述第一密鑰對(duì)于所述第一應(yīng)用是不透明的,以及所述視頻數(shù)據(jù)的未加密版本對(duì)于所述第一應(yīng)用是受保護(hù)的。
17.根據(jù)權(quán)利要求16所述的制品,其中,所述方法還包括把所述第一數(shù)據(jù)分成第一部分和第二部分,其中所述第一數(shù)據(jù)的第一部分的保護(hù)級(jí)別與所述第一數(shù)據(jù)的第二部分的保護(hù)級(jí)別相比是更高的級(jí)別。
18.根據(jù)權(quán)利要求16所述的制品,其中,所述方法還包括 通過(guò)使用第二密鑰來(lái)加密所述視頻數(shù)據(jù); 通過(guò)使用第三密鑰來(lái)加密所述視頻信息;以及 生成要被存儲(chǔ)到視頻緩沖器的所述視頻數(shù)據(jù)的加密版本。
19.根據(jù)權(quán)利要求18所述的制品,還包括 通過(guò)使用所述第二密鑰來(lái)解密視頻數(shù)據(jù)的加密版本;以及 解碼所述視頻數(shù)據(jù)以用于顯示。
20.根據(jù)權(quán)利要求18所述的制品,還包括由所述第一應(yīng)用解密包括音頻數(shù)據(jù)和視頻首部的所述視頻信息的加密版本。
全文摘要
給出用于安全的重放的一種裝置。在一個(gè)實(shí)施例中,所述裝置包括控制器,所述控制器包括管理認(rèn)證和密鑰導(dǎo)出的密鑰導(dǎo)出模塊。在一個(gè)實(shí)施例中,如果數(shù)據(jù)流中的視頻數(shù)據(jù)部分是可檢索的而不必解密數(shù)據(jù)流,則所述裝置把視頻解密密鑰提供給圖形引擎。在一個(gè)實(shí)施例中,所述裝置還包括結(jié)合加密密鑰來(lái)解密數(shù)據(jù)的一部分以生成視頻信息和視頻數(shù)據(jù)的解密模塊。所述控制器然后把視頻數(shù)據(jù)的加密版本寫(xiě)入到圖形引擎的視頻緩沖器。
文檔編號(hào)G06F21/10GK102918539SQ201180028269
公開(kāi)日2013年2月6日 申請(qǐng)日期2011年5月5日 優(yōu)先權(quán)日2010年6月8日
發(fā)明者B.韋姆布, S.卡林納哈利, D.內(nèi)米羅夫, Z.博金, R.古捷雷斯 申請(qǐng)人:英特爾公司