專利名稱:內(nèi)容保護(hù)系統(tǒng)之間的數(shù)字內(nèi)容轉(zhuǎn)錄的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及數(shù)字內(nèi)容的保護(hù),尤其涉及不同內(nèi)容保護(hù)系統(tǒng)使用的加密格 式之間的數(shù)字內(nèi)容轉(zhuǎn)錄,并提供了當(dāng)數(shù)字內(nèi)容在系統(tǒng)和/或軟件組件之間傳輸時(shí)用 于該數(shù)字內(nèi)容的過渡加密。背景本申請(qǐng)一般涉及消費(fèi)電子設(shè)備對(duì)數(shù)字內(nèi)容的使用,尤其涉及各種內(nèi)容保護(hù)機(jī) 制之間的兼容性和轉(zhuǎn)錄的創(chuàng)建。電子和計(jì)算系統(tǒng)可被設(shè)計(jì)成播放或處理經(jīng)調(diào)節(jié)的數(shù)字內(nèi)容。這種數(shù)字內(nèi)容可由根據(jù)所使用的保護(hù)機(jī)制而允許在受限制的基礎(chǔ)上對(duì)內(nèi)容的訪問的第三方控制或 擁有。訪問控制的示例包括允許信息被訪問預(yù)定次數(shù)或給定的時(shí)間段??刂茖?duì)數(shù)字 內(nèi)容的訪問的一種常見方法是加密該內(nèi)容使得它只能使用密碼密鑰來訪問,以及包 括指定對(duì)該內(nèi)容的訪問權(quán)限的許可證。對(duì)內(nèi)容的使用必須與許可證相一致以使系統(tǒng) 能訪問該數(shù)字內(nèi)容。訪問控制通常是在內(nèi)容創(chuàng)作或生產(chǎn)時(shí)通過結(jié)合諸如加密和可限 制在將來的時(shí)刻對(duì)該信息的非授權(quán)訪問的訪問權(quán)限等安全性特征來建立的。但是, 通常各種內(nèi)容保護(hù)機(jī)制不允許高度的互操作性。概述以下提出了本發(fā)明的簡(jiǎn)化概述以向讀者提供基本理解。本概述不是本發(fā)明的 廣泛綜述,也沒有標(biāo)識(shí)本發(fā)明的關(guān)鍵/決定性元素或描繪本發(fā)明的范圍。其唯一的 目的是以簡(jiǎn)化的形式提出此處公開的某些概念,作為對(duì)以下提出的更詳細(xì)描述的序本示例提供了用于支持內(nèi)容保護(hù)系統(tǒng)之間的數(shù)字內(nèi)容轉(zhuǎn)錄并提供在內(nèi)容保護(hù) 系統(tǒng)和/或軟件組件之間傳輸內(nèi)容時(shí)用于數(shù)字內(nèi)容的過渡加密的技術(shù)。該技術(shù)提供 了與數(shù)字內(nèi)容相關(guān)聯(lián)的包括列表,以指定可對(duì)什么類型的內(nèi)容保護(hù)系統(tǒng)來轉(zhuǎn)錄內(nèi)容。當(dāng)結(jié)合附圖考慮以下詳細(xì)描述而更好地理解許多附帶特征時(shí),可以更容易明 白這些特征。
本說明書將考慮附圖通過閱讀以下詳細(xì)描述來更好地理解,附圖中圖1是具有包括列表并允許數(shù)字內(nèi)容的轉(zhuǎn)錄的示例內(nèi)容保護(hù)系統(tǒng)的圖示。圖2是示出轉(zhuǎn)錄或改變數(shù)字內(nèi)容的加密的過程中的兩個(gè)主要操作的流程圖。圖3是示出在轉(zhuǎn)錄過程中數(shù)據(jù)安全地通過應(yīng)用程序的框圖。圖4是示出使用轉(zhuǎn)錄過程來保護(hù)數(shù)字內(nèi)容的示例性詳細(xì)過程的框圖。圖5是示出其中可實(shí)現(xiàn)本申請(qǐng)中描述的系統(tǒng)和方法的示例性計(jì)算環(huán)境。在附圖中,使用相同的參考標(biāo)號(hào)來指示相同的部分。詳細(xì)描述以下結(jié)合附圖提供的詳細(xì)描述旨在作為對(duì)本示例的描述,而不旨在表示可構(gòu) 造或利用本示例的唯一形式。該描述闡明了示例的功能以及用于構(gòu)造和操作該示例 的步驟序列。然而,可用不同的示例來實(shí)現(xiàn)相同或等效的功能和序列。盡管本發(fā)明此處被描述和示為在消費(fèi)電子產(chǎn)品("CE")系統(tǒng)中實(shí)現(xiàn),但是 所描述的系統(tǒng)是作為示例而非局限來提供的。本發(fā)明可用能夠支持?jǐn)?shù)字內(nèi)容的任何 設(shè)備或系統(tǒng)來實(shí)施。CE設(shè)備可包括袖珍PC、機(jī)頂盒、便攜式媒體中心、蜂窩電話、 音樂播放器、PC、用軟件構(gòu)造的媒體播放器等等。如本領(lǐng)域的技術(shù)人員所理解的, 本發(fā)明適用于在提供數(shù)字內(nèi)容訪問和內(nèi)容保護(hù)的各種不同類型的系統(tǒng)中應(yīng)用。一個(gè) 示例內(nèi)容保護(hù)系統(tǒng)是數(shù)字權(quán)限管理("DRM")系統(tǒng),并且在以下描述中使用。 也可使用其它內(nèi)容保護(hù)系統(tǒng)來實(shí)施本發(fā)明。該示例可提供授權(quán)受保護(hù)內(nèi)容在內(nèi)容保護(hù)方案之間轉(zhuǎn)錄的明確且健壯的裝 置。該示例可允許數(shù)字內(nèi)容和內(nèi)容保護(hù)系統(tǒng)的提供者授權(quán)下游應(yīng)用程序在執(zhí)行諸如 Windows媒體DRM ( "WMDRM")等內(nèi)容保護(hù)格式到諸如數(shù)字傳輸內(nèi)容保護(hù) ("DTCP")等另一格式之間的轉(zhuǎn)錄時(shí)將各段內(nèi)容轉(zhuǎn)錄成諸如Rivest密碼法4("RC4")等中間內(nèi)容保護(hù)格式。圖1是具有包括列表并允許數(shù)字內(nèi)容100的轉(zhuǎn)錄的示例內(nèi)容保護(hù)系統(tǒng)的圖示。 轉(zhuǎn)錄允許與諸如一個(gè)DRM系統(tǒng)等第一 內(nèi)容保護(hù)系統(tǒng)兼容的內(nèi)容被轉(zhuǎn)換成與諸如另 一 DRM系統(tǒng)等第二內(nèi)容保護(hù)系統(tǒng)兼容的格式。包括列表提供了內(nèi)容所有者指定哪 些轉(zhuǎn)換是允許的方式。這一轉(zhuǎn)換通常是在PC 103上執(zhí)行的。DRM提供了用于對(duì)諸 如多媒體內(nèi)容或其它數(shù)字內(nèi)容等數(shù)字內(nèi)容110定義、結(jié)合和實(shí)施權(quán)限的系統(tǒng)。DRM 系統(tǒng)100提供了內(nèi)容110從服務(wù)提供者107通過諸如因特網(wǎng)105等非安全信道或經(jīng) 由CD、 DVD、計(jì)算機(jī)文件等的安全分發(fā)。系統(tǒng)100可實(shí)施使用規(guī)則,并保護(hù)內(nèi)容 110免遭非法使用。使用規(guī)則可包括到期日、用戶可播放音頻或視頻文件的次數(shù)、 以及用戶可復(fù)制音頻或視頻文件的次數(shù)等。數(shù)字權(quán)限管理系統(tǒng)的一個(gè)示例在1999 年4月12日提交的美國(guó)專利申請(qǐng)第09/290,363號(hào)以及各自在2002年6月28日提 交的美國(guó)專利申請(qǐng)第10/185,527號(hào)、10/185,278號(hào)和10/185,511號(hào)中提供,這些專 利申請(qǐng)都通過整體引用結(jié)合于此。個(gè)人計(jì)算機(jī)103可用于連接到因特網(wǎng)105,并將內(nèi)容從服務(wù)提供者107傳輸?shù)?消費(fèi)電子設(shè)備101。 PC 103可將與第一DRM系統(tǒng)兼容的加密內(nèi)容109轉(zhuǎn)錄到與例 如存在于CE設(shè)備101上的第二 DRM系統(tǒng)兼容的加密內(nèi)容115。為轉(zhuǎn)錄媒體文件 109,將具有包括列表108的許可證以及通常來自服務(wù)供應(yīng)商107的媒體文件109 傳輸?shù)絇C 103。包括列表中所包括的用于內(nèi)容保護(hù)格式的訪問權(quán)限和限制受到通常由內(nèi)容所 有者設(shè)置的依從性規(guī)則支配,這些規(guī)則包括所附媒體文件109可被轉(zhuǎn)錄到什么類型 的設(shè)備和/或內(nèi)容保護(hù)系統(tǒng)。在一個(gè)示例中,該包括列表可包括全局唯一標(biāo)識(shí)符 (GUID),它可以是16字節(jié)的數(shù)字,并唯一地標(biāo)識(shí)了加密內(nèi)容109可被轉(zhuǎn)錄到的 允許的技術(shù)。在另一示例中,該包括列表可包括字符串,諸如串"WindwosMedia DRM",它唯一地標(biāo)識(shí)了允許的保護(hù)技術(shù)。由此,通過提供具有包括列表108的 許可證,可提供系統(tǒng)和設(shè)備之間增加的可操作性。PC 103通常使用結(jié)合應(yīng)用程序117操作的操作系統(tǒng)116來運(yùn)作。應(yīng)用程序117 通常在檢査了內(nèi)容列表118來確定目標(biāo)保護(hù)系統(tǒng)是否對(duì)數(shù)字內(nèi)容109授權(quán)之后執(zhí)行 數(shù)字內(nèi)容109的轉(zhuǎn)錄。用于通過路徑102和104將信息傳輸?shù)絇C 103并傳輸?shù)紺E設(shè)備101的協(xié)議 和機(jī)制可以是諸如以太網(wǎng)網(wǎng)絡(luò)、通用串行總線("USB")、紅外數(shù)據(jù)關(guān)聯(lián)("IrDA)"、 藍(lán)牙等常規(guī)協(xié)議和機(jī)制。在替換實(shí)施例中,消費(fèi)電子設(shè)備可耦合到服務(wù)供應(yīng)商而無需使用個(gè)人計(jì)算機(jī)103。個(gè)人計(jì)算機(jī)和CE設(shè)備可利用本領(lǐng)域的技術(shù)人員已知的任 何數(shù)目的合適的操作系統(tǒng)來操作。用于實(shí)現(xiàn)本說明書中所描述的功能的指令可作為 計(jì)算機(jī)可執(zhí)行軟件、硬件(例如,被燒錄到ASIC的指令)或兩者的組合存在。在使用中,DRM 100通過提供加密內(nèi)容109來保護(hù)內(nèi)容110。由于內(nèi)容109 被加密,因此數(shù)據(jù)本身被保護(hù)。由此,內(nèi)容109可不受限制地移動(dòng)、歸檔、復(fù)制或 分發(fā)。當(dāng)這種數(shù)字內(nèi)容在系統(tǒng)之間傳送時(shí),無需隱藏加密內(nèi)容或使其不可訪問,也 無需施加適當(dāng)?shù)奶厥獗Wo(hù)。例如,復(fù)制這類內(nèi)容并將其給予朋友不會(huì)允許該朋友在 未被授權(quán)的情況下使用該內(nèi)容。為了能夠使用加密內(nèi)容,用戶必須獲得許可證,并 且在本示例中必須獲得具有包括列表108的許可證。該具有包括列表108的許可證 是保護(hù)加密內(nèi)容100的一種手段。在一個(gè)示例中,許可證可被授予單個(gè)機(jī)器101, 并且即使被復(fù)制,也不會(huì)易于在其它機(jī)器上運(yùn)作。然而,采用包括列表,可如由內(nèi) 容所有者或服務(wù)提供者107在許可證包括列表中指定地將數(shù)字內(nèi)容提供給以不同 保護(hù)方案操作的其它機(jī)器。在另一示例中,許可證可被授予網(wǎng)絡(luò)上的特定用戶帳戶, 使得用戶可在經(jīng)由授權(quán)用戶帳戶登錄時(shí)從網(wǎng)絡(luò)上的任何設(shè)備訪問該內(nèi)容。具有包括列表108的每一許可證包含訪問權(quán)限和限制,它們定義了如何可使 用內(nèi)容以及在什么條件下使用內(nèi)容。例如,音樂文件許可證可包含"播放權(quán)限", 但是不包含"刻錄到CD的權(quán)限"訪問權(quán)限,并且它可對(duì)2005年10月1日和2005 年11月1日之間的時(shí)間段啟用該權(quán)限。情況還可以是對(duì)一數(shù)字內(nèi)容選集具有多個(gè) 許可證。只要這些許可證之一授予所需的權(quán)限,用戶就能夠訪問并使用該內(nèi)容數(shù)據(jù)。 訪問可以指用密碼方法解密內(nèi)容、經(jīng)由口令獲取對(duì)內(nèi)容的訪問等,使得用戶可使用、 查看、播放或以其它方式使用該數(shù)字內(nèi)容。在一個(gè)示例實(shí)施例中,具有包括列表的 許可證可用XML格式等來提供。如上所述,包括列表允許將數(shù)字內(nèi)容提供給各種不同的內(nèi)容保護(hù)系統(tǒng)。在一 個(gè)示例中,在PC 103上操作的DRM系統(tǒng)結(jié)合從CE設(shè)備101獲得的設(shè)備證書111 來使用該帶有包括列表108的許可證,以確定內(nèi)容是否可被轉(zhuǎn)錄以用于在設(shè)備101 上操作的DRM系統(tǒng)。供查看或回放的數(shù)字內(nèi)容通常包括音樂文件、圖片文件、視 頻文件、文檔等。諸如在CE設(shè)備101上操作的內(nèi)容保護(hù)系統(tǒng)使用設(shè)備證書來標(biāo)識(shí) 其自身。在一個(gè)示例中,設(shè)備證書可以是可擴(kuò)展標(biāo)記語言("XML")數(shù)據(jù)結(jié)構(gòu) 等,它描述了系統(tǒng)、列出了所支持的特征和訪問控制、并通常包含系統(tǒng)的公鑰。設(shè) 備證書111可從與在消費(fèi)電子設(shè)備101上操作的內(nèi)容保護(hù)系統(tǒng)包裝113在一起的設(shè) 備證書模板112中生成。設(shè)備證書模板可被認(rèn)為是幫助創(chuàng)建設(shè)備證書的一種特殊模式、指南等。設(shè)備證書111是一種確認(rèn)機(jī)制,它可由消費(fèi)電子設(shè)備101的DRM系統(tǒng)用來通 過確認(rèn)設(shè)備101的DRM系統(tǒng)適用于訪問受保護(hù)內(nèi)容115來幫助提供安全性。設(shè)備 證書是可被受保護(hù)數(shù)字內(nèi)容的持有者信任且可依靠并且可幫助啟動(dòng)提供對(duì)該內(nèi)容 的訪問的過程的憑證。這種自動(dòng)化內(nèi)容保護(hù)確認(rèn)可在為受保護(hù)數(shù)字內(nèi)容的安全回放 或使用設(shè)計(jì)的、且其中數(shù)字地簽署的證書111等用作提供對(duì)訪問數(shù)字內(nèi)容的權(quán)限的 確認(rèn)的方式的系統(tǒng)100中使用。受保護(hù)數(shù)字內(nèi)容115可包括音樂、視頻、文本或受 到常規(guī)許可證協(xié)定等管理的任何內(nèi)容。示例設(shè)備證書111可以是XML對(duì)象,它包括設(shè)備標(biāo)識(shí)、設(shè)備能力聲明、重大 信息、公鑰信息等,并在單個(gè)數(shù)字地簽署的設(shè)備證書中呈現(xiàn)這些數(shù)據(jù)。設(shè)備證書 lll可由DRM提供者(未示出)簽署,它可擔(dān)當(dāng)關(guān)于設(shè)備證書lll是對(duì)伴隨它的 DRM系統(tǒng)的準(zhǔn)確反映的提供者證明,并且可擔(dān)當(dāng)?shù)谌娇尚攀跈?quán)機(jī)構(gòu)(未示出) 的證明,第三方可信授權(quán)機(jī)構(gòu)證實(shí)DRM提供者被授權(quán)來創(chuàng)建并證明附帶的DRM 系統(tǒng)。設(shè)備證書和設(shè)備證書模板的一個(gè)示例在2004年10月18日提交的美國(guó)專利 申請(qǐng)第10/18,204號(hào)中提供,該申請(qǐng)通過整體引用結(jié)合于此。圖2是示出轉(zhuǎn)錄或改變數(shù)字內(nèi)容的加密的過程中的兩個(gè)主要操作的流程圖。 提供轉(zhuǎn)錄的一種方法是提供最初加密的數(shù)字內(nèi)容、移除該內(nèi)容上的加密201 (例如, WMDRM應(yīng)用于受保護(hù)內(nèi)容的加密)、然后將一新的加密202添加到該內(nèi)容(例 如,RC4加密)。圖3是示出在轉(zhuǎn)錄過程中數(shù)據(jù)安全地通過應(yīng)用程序301的框圖。內(nèi)容提供者 可調(diào)節(jié)內(nèi)容,并通過提供包括列表來限制其暴露量??商峁┌斜硪栽试S從第一 DRM系統(tǒng)轉(zhuǎn)錄到第二 DRM系統(tǒng)。在內(nèi)容保護(hù)系統(tǒng)的一個(gè)示例中,可對(duì)具有包括 列表的數(shù)字內(nèi)容提供轉(zhuǎn)錄,而在內(nèi)容保護(hù)系統(tǒng)的一個(gè)替換示例中,可對(duì)沒有包括列 表的數(shù)字內(nèi)容提供轉(zhuǎn)錄。第一 DRM系統(tǒng)302包括可被鏈接到諸如應(yīng)用程序301等應(yīng)用程序的可鏈接庫(kù) 308。庫(kù)309向應(yīng)用程序301提供了對(duì)第一DRM系統(tǒng)302的訪問。在一個(gè)示例中, 庫(kù)309可作為".lib"文件等來提供。在另一示例中,庫(kù)可作為".dU"(動(dòng)態(tài)鏈接 庫(kù))文件等來提供。庫(kù)309也可采用其它形式以向應(yīng)用程序301提供對(duì)第一DRM 系統(tǒng)302的功能的訪問。證書305與應(yīng)用程序301 —起包括在內(nèi),證書由提供者的根或證書授權(quán)機(jī)構(gòu) 密鑰300來簽署。在一個(gè)示例中,通常在創(chuàng)作或安裝系統(tǒng)時(shí),隨證書305 —起提供通常包括例如RSA私鑰的私鑰306。在運(yùn)行時(shí),證書305通常響應(yīng)于訪問由第一 DRM系統(tǒng)302持有的數(shù)字內(nèi)容的 請(qǐng)求而被傳遞給第一 DRM系統(tǒng)302。第一 DRM系統(tǒng)302生成一隨機(jī)數(shù)或初始化 向量("IV" ) 308。 IV308通常以安全的方式被提供給應(yīng)用程序301并儲(chǔ)存。在 一個(gè)示例中,IV 308使用安全信道在系統(tǒng)之間傳遞。在另一示例中,IV 308在被 提供給應(yīng)用程序301之前使用諸如來自證書305的公鑰等密鑰來加密。IV 308用 應(yīng)用程序的私鑰來解密并被儲(chǔ)存。此時(shí),數(shù)字內(nèi)容通常由第一DRM系統(tǒng)302以小組塊(chunk)或樣本來解密。 當(dāng)移除數(shù)字內(nèi)容的原始加密時(shí),第一DRM系統(tǒng)302在將該組塊提供給應(yīng)用程序301 時(shí)向其應(yīng)用一新的加密以便進(jìn)行保護(hù)。在數(shù)據(jù)被發(fā)送到應(yīng)用程序301之前解密數(shù)據(jù)和重新加密組塊的過程是通常被稱為過渡加密的一種形式的轉(zhuǎn)錄,并且往往能最小 化對(duì)中間人攻擊307等的易受攻擊性。每一數(shù)字內(nèi)容樣本或組塊一般使用一過渡加密密鑰來加密,該密鑰往往對(duì)每 一內(nèi)容樣本是唯一的。在一個(gè)示例中,該過渡加密密鑰是通過對(duì)每一數(shù)字內(nèi)容樣本 或組塊生成一唯一鹽(salt)值304,然后用IV值308散列該唯一鹽值304來形成 的。組塊使用過渡加密密鑰來加密,并連同鹽值304 —起提供給應(yīng)用程序301。 一 旦內(nèi)容組塊到達(dá)應(yīng)用程序301,應(yīng)用程序301就從所儲(chǔ)存的IV 308和鹽值304中 創(chuàng)建過渡加密密鑰,并從內(nèi)容組塊中移除過渡加密。此時(shí),應(yīng)用程序301可應(yīng)用第 二 DRM系統(tǒng)303所需的通常包括加密的適當(dāng)保護(hù)。在數(shù)字內(nèi)容樣本或組塊被第二 DRM保護(hù)之后,它可以系統(tǒng)303所準(zhǔn)許的任何方式來使用,例如當(dāng)其來自數(shù)字音 頻文件時(shí)播放它。圖4是示出使用轉(zhuǎn)錄過程來保護(hù)數(shù)字內(nèi)容的示例性詳細(xì)過程的框圖。數(shù)字內(nèi) 容(也稱為DRM有效載荷)412的一個(gè)示例是諸如可作為電影來提供的數(shù)字視頻 數(shù)據(jù)。這種數(shù)字內(nèi)容通常由內(nèi)容的內(nèi)容提供者來加密,如圖4中所指示的。數(shù)字內(nèi) 容的其它示例包括數(shù)字音頻數(shù)據(jù)、數(shù)字圖像或包括文檔等在內(nèi)的其它多媒體或數(shù)字 內(nèi)容。除了加密之外,這種數(shù)字內(nèi)容通常包括某種形式的訪問權(quán)限信息。在一個(gè)示 例中,這些訪問權(quán)限包括指示哪些其它類型的內(nèi)容保護(hù)機(jī)制可被信任并可被用來訪 問和/或轉(zhuǎn)錄數(shù)字內(nèi)容的包括列表。圖4示出了一個(gè)示例DRM系統(tǒng)A450,它包括幾個(gè)元素以及用于處理數(shù)字內(nèi) 容412以供DRM系統(tǒng)B460轉(zhuǎn)錄的步驟。示例DRM系統(tǒng)B包括幾個(gè)元素,以及 可在應(yīng)用程序、DRM系統(tǒng)等之間分布的步驟。在一個(gè)示例中,DRM系統(tǒng)B包括9具有DRM系統(tǒng)的應(yīng)用程序。DRM系統(tǒng)A 450和DRM系統(tǒng)B 460進(jìn)行交互以移除 由內(nèi)容提供者提供的加密、用兩個(gè)DRM系統(tǒng)都理解的過渡加密來重新加密內(nèi)容、 安全地將經(jīng)過渡加密的內(nèi)容傳輸?shù)紻RM系統(tǒng)B 460,在DRM系統(tǒng)B 460處,內(nèi) 容被解密,最后以DRM系統(tǒng)B 460使用的任何格式來重新加密。在該示例轉(zhuǎn)錄過程的開始,系統(tǒng)B啟動(dòng)一轉(zhuǎn)錄過程。這一啟動(dòng)的一個(gè)示例是 試圖播放數(shù)字電影文件。通常, 一證書等從系統(tǒng)B發(fā)送到系統(tǒng)A 450。系統(tǒng)A檢 查該證書以確定系統(tǒng)B是否可被信任,以及系統(tǒng)B是否在數(shù)字內(nèi)容的包括列表中 列出。如果系統(tǒng)B可被信任且在包括列表上,則系統(tǒng)A將繼續(xù)該轉(zhuǎn)錄過程。否則, 當(dāng)系統(tǒng)B既不被信任也沒有列在數(shù)字內(nèi)容的包括列表上時(shí),該過程不會(huì)繼續(xù)。當(dāng)繼續(xù)時(shí),系統(tǒng)A從系統(tǒng)B獲得密碼密鑰401。在一個(gè)示例中,該密碼密鑰 是公鑰,并從得自系統(tǒng)B的證書中獲得。系統(tǒng)A生成初始化向量("IV" ) 403 并使用經(jīng)加密的IV 404中所得的公鑰401來加密402 IV 403 。在一個(gè)示例中,IV 403 是適用于散列并生成另 一密碼密鑰的隨機(jī)數(shù)。系統(tǒng)A通常使用安全信道將經(jīng)加密的IV 404提供給系統(tǒng)B。系統(tǒng)B使用從原 始IV值403中所得的私鑰405來解密406經(jīng)加密的IV 404。系統(tǒng)B以安全的方式, 諸如使用模糊化等來儲(chǔ)存IV403以供將來使用。此時(shí),系統(tǒng)A和系統(tǒng)B之間的初 始化完成,且過渡轉(zhuǎn)錄可開始。系統(tǒng)A現(xiàn)在開始讀取并解密414數(shù)字內(nèi)容412。在一個(gè)示例中,系統(tǒng)A使用 密鑰415來解密414數(shù)宇內(nèi)容412。在一個(gè)示例中,密鑰415通過使用對(duì)應(yīng)于內(nèi)容 提供者最初用于為數(shù)字內(nèi)容412加密密鑰415的公鑰的私鑰來解密它來訪問。在另 一示例中,系統(tǒng)A以小組塊來解密414數(shù)字內(nèi)容412,通常每一組塊有幾十、幾百 或幾千字節(jié)。在另一示例中,系統(tǒng)A在繼續(xù)之前解密414所有的數(shù)字內(nèi)容412。每 一經(jīng)解密414的組塊得到未經(jīng)加密的數(shù)字內(nèi)容(也稱為有效載荷)410。接著,系統(tǒng)A生成鹽408。在一個(gè)示例中,鹽408是對(duì)每一數(shù)字內(nèi)容組塊410 生成的、適用于在散列和生成另一密碼密鑰時(shí)使用的隨機(jī)數(shù)。在一個(gè)示例中,這一 密碼密鑰可以是RC4密鑰。系統(tǒng)A散列419鹽值408和IV403,得到密碼密鑰。 在另一示例中,散列419可以是安全散列算法("SHA")散列。接著,系統(tǒng)A 使用經(jīng)由對(duì)應(yīng)于所加密的內(nèi)容組塊的IV 403和鹽408的散列419生成的RC4密鑰 來加密420內(nèi)容組塊410,得到經(jīng)過渡加密的內(nèi)容組塊421。在一個(gè)示例中,使用 RC4流密碼來進(jìn)行加密420,得到經(jīng)RC4加密的內(nèi)容組塊(也稱為RC4有效載荷) 421。系統(tǒng)A通常使用安全信道將鹽408和對(duì)應(yīng)的經(jīng)過渡加密的內(nèi)容組塊421提供 給系統(tǒng)B。系統(tǒng)B然后散列409先前儲(chǔ)存的IV 403和剛接收到的鹽408以生成過 渡解密密鑰,并解密411剛接收到的經(jīng)過渡加密的內(nèi)容組塊421,得到未經(jīng)加密的 數(shù)字內(nèi)容410。在一個(gè)示例中,解密411和未經(jīng)加密的內(nèi)容組塊410在系統(tǒng)B內(nèi)以 安全的方式,諸如使用代碼和/或數(shù)據(jù)模糊化來執(zhí)行和維護(hù)。在另一示例中,散列 409可以是安全散列算法("SHA")散列。系統(tǒng)B現(xiàn)在可如由總體轉(zhuǎn)錄過程所指示地繼續(xù)轉(zhuǎn)錄內(nèi)容組塊410。在一個(gè)示 例中,如在音頻數(shù)據(jù)的情況中,內(nèi)容組塊410被進(jìn)一步加密并被提供給編解碼器以 便經(jīng)由媒體播放器應(yīng)用程序等來呈現(xiàn)。以上過程對(duì)數(shù)字內(nèi)容410的每一組塊繼續(xù), 通常直到轉(zhuǎn)錄了整個(gè)數(shù)字內(nèi)容412。圖5示出了其中可實(shí)現(xiàn)本申請(qǐng)中所描述的系統(tǒng)和方法的示例性計(jì)算環(huán)境500。 示例性計(jì)算環(huán)境500僅是計(jì)算系統(tǒng)的一個(gè)示例,并不旨在將本申請(qǐng)中所描述的示例 限于該具體計(jì)算環(huán)境。計(jì)算環(huán)境500可以使用眾多其它通用或?qū)S糜?jì)算系統(tǒng)配置來實(shí)現(xiàn)。眾所周知 的計(jì)算系統(tǒng)的示例可包括但不限于,個(gè)人計(jì)算機(jī)、手持式或膝上設(shè)備、基于微處理 器的系統(tǒng)、多處理器系統(tǒng)、機(jī)頂盒、可編程消費(fèi)電子設(shè)備、游戲控制臺(tái)、消費(fèi)電子 產(chǎn)品、蜂窩電話、PDA等。計(jì)算機(jī)500包括計(jì)算機(jī)設(shè)備501形式的通用計(jì)算系統(tǒng)。計(jì)算設(shè)備501的組件 可包括一個(gè)或多個(gè)處理器(包括CPU、 GPU、微處理器等)507、系統(tǒng)存儲(chǔ)器509 以及耦合各類系統(tǒng)組件的系統(tǒng)總線508。處理器507處理各種計(jì)算機(jī)可執(zhí)行指令以 控制計(jì)算設(shè)備501的操作并與其它電子和計(jì)算設(shè)備(未示出)通信。系統(tǒng)總線508 表示任何數(shù)目的若干類型的總線結(jié)構(gòu),包括存儲(chǔ)器總線或存儲(chǔ)器控制器、外圍總線、 加速圖形端口、以及使用各類總線體系結(jié)構(gòu)的任一種的處理器或局部總線。系統(tǒng)存儲(chǔ)器509包括諸如隨機(jī)存取存儲(chǔ)器(RAM)等易失性存儲(chǔ)器,和/或諸 如只讀存儲(chǔ)器(ROM)等非易失性存儲(chǔ)器形式的計(jì)算機(jī)可讀介質(zhì)?;据斎?輸出 系統(tǒng)(BIOS)被儲(chǔ)存在ROM中。RAM通常包含處理器507中的一個(gè)或多個(gè)立即 可訪問和/或當(dāng)前正在操作的數(shù)據(jù)和/或程序模塊。大容量存儲(chǔ)設(shè)備504可耦合到計(jì)算設(shè)備501或通過耦合到總線而結(jié)合到計(jì)算 設(shè)備中。這種大容量存儲(chǔ)設(shè)備504可包括對(duì)可移動(dòng)、非易失性磁盤(例如,"軟盤") 505進(jìn)行讀寫的磁盤驅(qū)動(dòng)器,或?qū)梢苿?dòng)、非易失性光盤,如CDROM等506進(jìn) 行讀寫的光盤驅(qū)動(dòng)器。計(jì)算機(jī)可讀介質(zhì)505、 506通常包含在軟盤、CD、便攜式記憶棒等上提供的計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊等。任何數(shù)目的程序模塊可被儲(chǔ)存在硬盤510、大容量存儲(chǔ)設(shè)備504、 ROM和/或 RAM 509上,作為示例,包括操作系統(tǒng)、 一個(gè)或多個(gè)應(yīng)用程序、其它程序模塊以 及程序數(shù)據(jù)。這些操作系統(tǒng)、應(yīng)用程序、其它程序模塊和程序數(shù)據(jù)(或其某一組合) 中的每一個(gè)可包括此處所描述的系統(tǒng)和方法的一個(gè)實(shí)施例。顯示設(shè)備502可經(jīng)由諸如視頻適配器511等接口連接到系統(tǒng)總線508。用戶可 經(jīng)由諸如鍵盤、定點(diǎn)設(shè)備、操縱桿、游戲墊、串行端口和/或類似設(shè)備等任何數(shù)目 的不同輸入設(shè)備503與計(jì)算設(shè)備702接口 。這些和其它輸入設(shè)備經(jīng)由耦合到系統(tǒng)總 線508的輸入/輸出接口 512連接到處理器507,但也可通過諸如并行端口、游戲端 口和/或通用串行總線(USB)等其它接口和總線結(jié)構(gòu)來連接。計(jì)算設(shè)備500可使用通過一個(gè)或多個(gè)局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)等到 一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī)的連接在網(wǎng)絡(luò)化環(huán)境中操作。計(jì)算設(shè)備501經(jīng)由網(wǎng)絡(luò)適配器 513,或者替換地通過調(diào)制解調(diào)器、DSL、 ISDN接口等連接到網(wǎng)絡(luò)514。本領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到,用于儲(chǔ)存程序指令的存儲(chǔ)設(shè)備可跨網(wǎng)絡(luò)分布。 例如,遠(yuǎn)程計(jì)算機(jī)可儲(chǔ)存諸如自適應(yīng)裝備運(yùn)行時(shí)監(jiān)控和分析軟件等工具。本地或終 端計(jì)算機(jī)可訪問該遠(yuǎn)程計(jì)算機(jī)并下載該軟件的一部分或全部來運(yùn)行程序?;蛘?,本地計(jì)算機(jī)可按需下載軟件片斷,或通過在本地終端處執(zhí)行某些軟件指令,并在遠(yuǎn)程 計(jì)算機(jī)(或計(jì)算機(jī)網(wǎng)絡(luò))處執(zhí)行某些軟件指令來分布式地處理。本領(lǐng)域的技術(shù)人員 還將認(rèn)識(shí)到,通過利用本領(lǐng)域的技術(shù)人員已知的常規(guī)技術(shù),軟件指令的全部或一部 分可由諸如DSP、可編程邏輯陣列等專用電路來執(zhí)行。
權(quán)利要求
1.一種用于保護(hù)數(shù)字內(nèi)容的計(jì)算機(jī)系統(tǒng),所述系統(tǒng)包括能夠解密所述數(shù)字內(nèi)容的第一內(nèi)容保護(hù)系統(tǒng),所述數(shù)字內(nèi)容包括一包括列表;為應(yīng)用程序提供對(duì)所述第一內(nèi)容保護(hù)系統(tǒng)的功能的訪問的可鏈接庫(kù),所述應(yīng)用程序包括第二內(nèi)容保護(hù)系統(tǒng);以及用于評(píng)估所述第二內(nèi)容保護(hù)系統(tǒng)來確定所述第二內(nèi)容保護(hù)系統(tǒng)是否在所述包括列表上的裝置。
2. 如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括用于安全地耦合所述內(nèi)容 保護(hù)系統(tǒng)和所述可鏈接庫(kù)的裝置。
3. 如權(quán)利要求l所述的系統(tǒng),其特征在于,還包括用于計(jì)算一初始化向量的 裝置,所述初始化向量經(jīng)由一共享裝置在所述第一內(nèi)容保護(hù)系統(tǒng)和所述第二內(nèi)容保 護(hù)系統(tǒng)之間共享。
4. 如權(quán)利要求3所述的系統(tǒng),其特征在于,還包括用于基于所述數(shù)字內(nèi)容的 組塊來計(jì)算一鹽值的裝置,所述鹽值經(jīng)由一密碼散列裝置與所述初始化向量組合, 得到一過渡加密密鑰。
5. 如權(quán)利要求4所述的系統(tǒng),其特征在于,還包括用于使用所述過渡加密密 鑰來產(chǎn)生所述組塊的過渡加密的裝置。
6. 如權(quán)利要求5所述的系統(tǒng),其特征在于,還包括用于向所述第二內(nèi)容保護(hù) 系統(tǒng)提供所述組塊的過渡加密、所述初始化向量和所述鹽值的裝置。
7. —種用于轉(zhuǎn)錄數(shù)字內(nèi)容的方法,所述方法包括經(jīng)由第一內(nèi)容保護(hù)系統(tǒng)解密所述數(shù)字內(nèi)容,所述解密得到一經(jīng)解密的數(shù)字內(nèi)容;產(chǎn)生一過渡加密密鑰,并使用所述過渡加密密鑰來產(chǎn)生所述經(jīng)解密的數(shù)字內(nèi) 容的過渡加密;向第二內(nèi)容保護(hù)系統(tǒng)提供所述過渡加密密鑰和所述過渡加密。
8. 如權(quán)利要求7所述的方法,其特征在于,還包括檢査所述數(shù)字內(nèi)容的包括 列表以確定所述數(shù)字內(nèi)容是否可被轉(zhuǎn)錄到所述第二內(nèi)容保護(hù)系統(tǒng)。
9. 如權(quán)利要求7所述的方法,其特征在于,所述過渡加密密鑰是通過用密碼 方法散列一初始化向量和一鹽值來產(chǎn)生的,所述鹽值是基于所述數(shù)字內(nèi)容的組塊來計(jì)算的。
10. —種保護(hù)數(shù)字內(nèi)容的方法,所述方法包括由第一內(nèi)容保護(hù)系統(tǒng) 生成一初始化向量;解密所述數(shù)字內(nèi)容的組塊; 基于所述組塊生成一鹽值;用密碼方法散列所述初始化向量和所述鹽值,得到一過渡密鑰;以及 通過使用所述過渡密鑰加密所述組塊來產(chǎn)生所述組塊的過渡加密。
11. 如權(quán)利要求10所述的方法,其特征在于,所述數(shù)字內(nèi)容包括一包括列表。
12. 如權(quán)利要求IO所述的方法,其特征在于,所述初始化向量是隨機(jī)數(shù)。
13. 如權(quán)利要求IO所述的方法,其特征在于,所述鹽值是使用所述組塊來計(jì) 算的數(shù)字。
14. 如權(quán)利要求IO所述的方法,其特征在于,所述過渡加密是使用流密碼來 產(chǎn)生的。
15. 如權(quán)利要求IO所述的方法,其特征在于,還包括由第二內(nèi)容保護(hù)系統(tǒng) 從所述第一內(nèi)容保護(hù)系統(tǒng)接收經(jīng)加密的初始化向量; 解密并儲(chǔ)存所述初始化向量;從所述第一內(nèi)容保護(hù)系統(tǒng)接收所述過渡加密; 從所述第一內(nèi)容保護(hù)系統(tǒng)接收所述鹽值;用密碼方法散列所述初始化向量和所述鹽值,得到所述過渡密鑰的副本;以及使用所述過渡密鑰的副本來解密所述過渡加密。
16. 如權(quán)利要求15所述的方法,其特征在于,所述第二內(nèi)容保護(hù)系統(tǒng)在所述 包括列表上列出。
17. 如權(quán)利要求15所述的方法,其特征在于,所述初始化向量是由所述第一內(nèi)容保護(hù)系統(tǒng)使用由所述第二內(nèi)容保護(hù)系統(tǒng)提供的公鑰來加密的。
18. 如權(quán)利要求15所述的方法,其特征在于,所述經(jīng)加密的初始化向量是由 所述第二內(nèi)容保護(hù)系統(tǒng)使用由所述第二內(nèi)容保護(hù)系統(tǒng)提供的私鑰來解密的。
19. 如權(quán)利要求15所述的方法,其特征在于,所述初始化向量是以安全方式 來儲(chǔ)存的。
20. 如權(quán)利要求15所述的方法,其特征在于,所述方法在計(jì)算機(jī)可讀介質(zhì)中 具體化。
全文摘要
用于保護(hù)數(shù)字內(nèi)容(110)的技術(shù)包括能夠解密該數(shù)字內(nèi)容(110)的第一內(nèi)容保護(hù)系統(tǒng)(100),該數(shù)字內(nèi)容(110)包括一包括列表(118);向應(yīng)用程序提供對(duì)該第一內(nèi)容保護(hù)系統(tǒng)(100)的功能的訪問的可鏈接庫(kù)(308),該應(yīng)用程序包括第二內(nèi)容保護(hù)系統(tǒng)(303);以及用于評(píng)估該第二內(nèi)容保護(hù)系統(tǒng)(303)來確定該第二內(nèi)容保護(hù)系統(tǒng)(303)是否在該包括列表(118)上的裝置。
文檔編號(hào)H04K1/00GK101258468SQ200680025136
公開日2008年9月3日 申請(qǐng)日期2006年7月11日 優(yōu)先權(quán)日2005年7月11日
發(fā)明者A·V·格里格洛維奇, B·P·伊萬斯, D·羅森斯特恩, G·T·鄧巴, J·M·奧爾科夫, M·L·霍華德, M·馬, S·J·費(fèi)爾斯廷 申請(qǐng)人:微軟公司