專利名稱:內(nèi)容許可證存儲的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機領(lǐng)域,尤其涉及內(nèi)容許可證存儲。
背景技術(shù):
內(nèi)容流傳送正在成為向客戶機提供內(nèi)容的日益常見的方式。在一些情況下,可以采用諸如加密這樣的數(shù)字權(quán)限管理(DRM)技術(shù)來控制對內(nèi)容的訪問。對于密碼加密的情況,可以用密碼密鑰來對內(nèi)容進行密碼加密,已加密的內(nèi)容然后被流傳送至客戶機。然后可以向客戶端提供與允許客戶機消費內(nèi)容的內(nèi)容相對應(yīng)的許可證(例如,通過向用戶提供用于對已加密的內(nèi)容進行解密的密碼密鑰)。一般而言,內(nèi)容提供者流傳送了即使沒有上千個也有上百個內(nèi)容流,客戶機預定這些內(nèi)容流的ー個特定子集,甚至可以接收每個流的許可證。由此,可能難以有效地管理客戶機側(cè)的許可證存儲。
發(fā)明內(nèi)容
提供本發(fā)明內(nèi)容以便以簡化的形式介紹將在以下具體實施方式
中進ー步描述的 ー些概念。本發(fā)明內(nèi)容并不旨在標識所要求保護主題的關(guān)鍵特征或必要特征,也不旨在用于限制所要求保護主題的范圍。此外,所要求保護的主題不限于解決在本發(fā)明的任一部分中提及的任何或所有缺點的實現(xiàn)。根據(jù)本發(fā)明的一方面,在內(nèi)容消費設(shè)備上,提供了ー種內(nèi)容許可證存儲的方法。該方法包括,在內(nèi)容消費設(shè)備上的臨時許可證存儲中保持多個內(nèi)容流的多個內(nèi)容許可證,其中多個內(nèi)容許可證的每個內(nèi)容許可證包括一個移除日期。該方法還包括,對于和為存檔回放指定的多個內(nèi)容流中的ー個內(nèi)容流相對應(yīng)的多個內(nèi)容許可證的每個內(nèi)容許可證,將內(nèi)容許可證復制到內(nèi)容流內(nèi)的嵌入式許可證存儲中以形成存檔的內(nèi)容流。該方法還包括,如果已經(jīng)到達內(nèi)容許可證內(nèi)包括的移除日期則移除在臨時許可證存儲處保持的多個內(nèi)容許可證中的一個或多個,而同時即使在移除日期已到達的情況下也使每個內(nèi)容許可證被保持存儲在存檔內(nèi)容流內(nèi)。
圖1示出根據(jù)本公開的ー實施例的使用環(huán)境。圖2示出內(nèi)容許可證存儲的示例方法的流程圖。圖3示出根據(jù)本公開的ー實施例的示例使用情況。圖4示出根據(jù)本公開的ー實施例的另ー示例使用情況的時間線。圖5示出了根據(jù)本公開的ー實施例的示例性計算系統(tǒng)。
具體實施例方式服務(wù)器可以流傳送沒有上千或更多的也有上百個已加密內(nèi)容流,這些已加密內(nèi)容流可被不同地分組成內(nèi)容預訂。如果每個已加密內(nèi)容流是用不同的密碼密鑰(下文簡稱“密鑰”)來密碼加密(下文簡稱“加密”),則用戶會需要幾個密鑰以便能對與其預訂相關(guān)聯(lián)的所有內(nèi)容流進行解碼。由于每ー組密鑰可以被提供給(例如,經(jīng)由密碼共享)許可證內(nèi)的用戶的內(nèi)容消費設(shè)備,因此期望有一種用于在用戶的內(nèi)容消費設(shè)備處(如在客戶機處) 管理許可證存儲的有效方式。特別是,內(nèi)容提供者可以不僅提供幾個內(nèi)容流,而其還支持回放特征,諸如即時頻道變化、內(nèi)容存檔(如,用于對線性內(nèi)容進行時移觀看)等等。由此,客戶機可以不僅接收用于大量頻道的密鑰,而且這些密鑰中的一些可以對應(yīng)于用戶不觀看或甚至不存檔的頻道。 這樣,還期望客戶機管理許可證存儲,使得客戶機保留用于消費當前內(nèi)容流和存檔流的密鑰,而丟棄客戶機不再需要的密鑰。因此,這里公開了和內(nèi)容許可證存儲有關(guān)的實施例,其中每個內(nèi)容許可證包括一個移除日期。內(nèi)容消費設(shè)備將內(nèi)容許可證存儲在臨時許可證存儲中,并且可以基于移除日期來管理(例如,組織、移除等)許可證。而且,當存檔內(nèi)容吋,內(nèi)容消費設(shè)備可以將內(nèi)容許可證復制到內(nèi)容流內(nèi)的另一存儲中,以形成存檔的內(nèi)容流。以此方式,存檔的內(nèi)容是“自包含的”,并且具有存檔回放所需的(諸)許可證。由此,內(nèi)容的嵌入式許可證存儲內(nèi)存儲的許可證不會基于移除日期被移除。應(yīng)當理解,這里使用的存檔回放包括存檔內(nèi)容的回放 (如,所記錄內(nèi)容的時移回放、臨時暫停緩沖器中存儲的內(nèi)容的回放、等等)以及在記錄內(nèi)容時的內(nèi)容的當前回放?,F(xiàn)在轉(zhuǎn)至圖1,圖1示出一種示例內(nèi)容流傳送環(huán)境20,其中內(nèi)容服務(wù)器22被配置成經(jīng)由網(wǎng)絡(luò)沈?qū)?nèi)容流傳送至ー個或多個內(nèi)容消費設(shè)備對。應(yīng)當理解,內(nèi)容服務(wù)器22可以包括彼此間通信上耦合的一個或多個服務(wù)器設(shè)備。內(nèi)容消費設(shè)備M可以是被配置成消費和存檔被流傳送的內(nèi)容的任何適當?shù)脑O(shè)備,諸如個人計算機、媒體播放器、移動設(shè)備、游戲系統(tǒng)等等。內(nèi)容消費設(shè)備M可以被配置成以任何適當?shù)姆绞綄?nèi)容存檔至本地存儲,諸如通過使用數(shù)字視頻記錄(DVR)技木。內(nèi)容服務(wù)器22可以被配置成以任何適當方式經(jīng)由網(wǎng)絡(luò)沈來供應(yīng)內(nèi)容。例如,內(nèi)容可以是經(jīng)由網(wǎng)絡(luò)26上的多播傳遞供應(yīng)的實況線性內(nèi)容,諸如托管網(wǎng)絡(luò)上的傳統(tǒng)因特網(wǎng)協(xié)議電視(IPTV)。舉另ー個示例,內(nèi)容服務(wù)器22可以提供內(nèi)容在網(wǎng)絡(luò)26上(例如在因特網(wǎng)上)的“頂部(over-the-top)”傳遞。舉還有ー個例子,內(nèi)容服務(wù)器22可以通過網(wǎng)絡(luò)沈提供視頻點播(VOD)。應(yīng)當理解,這些示例是說明性的并且并非旨在以任何方式進行限制。內(nèi)容服務(wù)器22可以被配置成通過主存多個頻道(例如,IPTV頻道、內(nèi)容服務(wù)等) 來供應(yīng)內(nèi)容,其中每個頻道包括ー個或多個內(nèi)容流。例如,一個頻道可以包括諸如視頻流和相應(yīng)的音頻流這樣的兩個內(nèi)容流。然而,在一些情況下,可以包括附加的音頻流(例如語言音軌等)和/或附加的視頻流(例如高清視頻、可選視圖等)。內(nèi)容服務(wù)器22可以被配置成通過供應(yīng)如圖1所示的用一個或多個密鑰加密的內(nèi)容流作為已加密的內(nèi)容流觀,來控制ー個或多個內(nèi)容消費設(shè)備M對內(nèi)容流中的一個或多個的訪問。如此,內(nèi)容消費設(shè)備必須有正確的密鑰以便對已加密的內(nèi)容流進行解密和消費。 這樣,對內(nèi)容加密可以減少未授權(quán)的觀看。舉ー個例子,圖1示出通過用內(nèi)容密鑰加密內(nèi)容流而形成的示例的已加密內(nèi)容流 ^a。每個流可以用ー個不同的內(nèi)容密鑰來加密。然而,對于具有不止ー個流的頻道的情況, 頻道的每個流可以任選地用同一個內(nèi)容密鑰來加密。
而在傳統(tǒng)上,內(nèi)容密鑰可以與對已加密內(nèi)容流的供應(yīng)分開地被加密并被提供給內(nèi)容消費設(shè)備24,內(nèi)容服務(wù)器22被配置成向每個已加密的內(nèi)容流提供其相對應(yīng)的已加密內(nèi)容密鑰??梢砸匀魏魏线m的方式向已加密的內(nèi)容密鑰提供已加密的流。舉ー個例子,圖1示出嵌有葉許可證30的示例的已加密內(nèi)容流^a。葉許可證30包括與已加密的內(nèi)容流28a 相關(guān)聯(lián)的已加密內(nèi)容密鑰32。嵌入式葉許可證30可以包括附加信息,諸如內(nèi)容流的內(nèi)容策略34、對策略和/或已加密內(nèi)容密鑰的干擾的減輕等等。通過這樣供應(yīng)內(nèi)容,內(nèi)容服務(wù)器 22可以有利地使用和分發(fā)內(nèi)容本身所用的方法相同的分發(fā)方法來分發(fā)內(nèi)容密鑰。而且,內(nèi)容服務(wù)器22可以通過在流內(nèi)的任何合適點改變已加密的內(nèi)容密鑰和/或內(nèi)容策略,來任選地提供內(nèi)容加密和/或內(nèi)容策略的實時變化。通過供應(yīng)各自嵌有包括其相應(yīng)的已加密內(nèi)容密鑰在內(nèi)的葉許可證的已加密內(nèi)容流,內(nèi)容服務(wù)器22可以將相同的已加密內(nèi)容流觀提供給所有內(nèi)容消費設(shè)備對。然后以此順序控制了訪問,使內(nèi)容消費設(shè)備能夠?qū)?nèi)容進行解密和消費,內(nèi)容消費設(shè)備必須能夠在使用已解密的內(nèi)容密鑰來解密已加密的內(nèi)容流之前、對葉許可證內(nèi)的已加密內(nèi)容密鑰進行解密??梢越?jīng)由許可過程向內(nèi)容消費設(shè)備提供這樣的能力,其中內(nèi)容消費設(shè)備(例如經(jīng)由預訂)預訂內(nèi)容流的特定子集,然后被提供了許可證,許可證具有用于對和他們所預訂的內(nèi)容相對應(yīng)的已加密內(nèi)容密鑰進行解密的適當密鑰。對內(nèi)容流加密的每個內(nèi)容密鑰自身可以以任何合適的方式被加密,諸如通過ー個或多個其他密鑰(如中間加密密鑰)。在這ー情況下,在注冊了特定內(nèi)容預訂之際,向內(nèi)容消費設(shè)備提供(例如經(jīng)由許可證服務(wù)器)與中間加密密鑰配對的中間解密密鑰。由于可以基于預訂向內(nèi)容消費設(shè)備發(fā)布中間解密密鑰,因此內(nèi)容消費設(shè)備僅接收它所被賦予的中間解密密鑰。換言之,如果內(nèi)容消費設(shè)備未被授權(quán)觀看特定的內(nèi)容流,則它們不會接收到用于對這些流的內(nèi)容密鑰進行解密的中間解密密鑰,因此將不能消費這些流。應(yīng)當理解,中間密鑰對可以是不對稱的或?qū)澐Q的。在后ー情況下,中間加密密鑰可以與它所配對的中間解密密鑰相關(guān),或者相同。中間解密密鑰可以以任何合適的方式被提供給ー個或多個內(nèi)容消費設(shè)備對。圖 1示出其中許可證服務(wù)器36被配置成經(jīng)由網(wǎng)絡(luò)沈供應(yīng)許可證38的示例情況。應(yīng)當理解, 許可證服務(wù)器36可以包括彼此間通信上耦合的一個或多個服務(wù)器設(shè)備。還應(yīng)當理解,網(wǎng)絡(luò) 26在圖1中為說明目的而示出,并且不旨在以任何方式加以限制。因此,在一些實施例中, 內(nèi)容服務(wù)器22和許可證服務(wù)器36可以分別通過不同的網(wǎng)絡(luò)來供應(yīng)內(nèi)容和許可證。而且,在一些實施例中,內(nèi)容服務(wù)器22和許可證服務(wù)器36可以是同一個設(shè)備并且 /或者可以彼此間通信上耦合。中間解密密鑰可以例如對應(yīng)于ー個頻道,使得每個頻道可以用ー個內(nèi)容密鑰來加密,該內(nèi)容密鑰用與相應(yīng)的中間解密密鑰(例如頻道解密密鑰)配對的中間加密密鑰(例如頻道加密密鑰)來加密。在一些實施例中,許可證服務(wù)器36可以供應(yīng)諸如示例許可證38a這樣的許可證 (例如,內(nèi)容許可證),示例許可證38a包括被提供給內(nèi)容消費設(shè)備M的特定ー個的ー個或多個中間解密密鑰40。由此,可以向內(nèi)容消費設(shè)備供應(yīng)該內(nèi)容消費設(shè)備所預訂的每個內(nèi)容流的內(nèi)容許可證。應(yīng)當理解,可以將內(nèi)容許可證發(fā)布給內(nèi)容消費設(shè)備,或者發(fā)布給內(nèi)容消費設(shè)備所屬的域。
而且,每個內(nèi)容許可證包括指示何時(例如日期和時間)不再需要中間密鑰來觀看內(nèi)容的移除日期(例如,移除日期41)。例如,在移除日期之后,可以將被流傳送至客戶機的內(nèi)容綁定至一組新的中間解密密鑰(例如由于中間解密密鑰的輪轉(zhuǎn)),因此客戶機不再需要保留這些中間解密密鑰。應(yīng)當理解,考慮到時鐘偏移等,移除日期可能比內(nèi)容系統(tǒng)改變中間密鑰組的實際日期和時間略晚一點。舉ー個非限制性的例子,如果中間密鑰組在接下來八個小時中有效,則許可證可能包含將來十小時后的移除日期。例如,移除日期可以經(jīng)由許可證的元數(shù)據(jù)來提供。當客戶機接收包含其中間解密密鑰的ー個或多個許可證時,它將(這些)許可證存儲在識別移除日期的存儲器(例如,臨時許可證存儲)中。因此,在到達許可證的移除日期之際,從內(nèi)容消費設(shè)備處的臨時許可證存儲移除許可證。然而,當對用于存檔回放的流進行存檔吋,內(nèi)容消費設(shè)備被配置成將內(nèi)容許可證保持在流內(nèi)的嵌入式許可證存儲中,從而形成存檔的內(nèi)容流。如下參考圖2更詳細描述的,嵌入式許可證存儲中的許可證在其移動日期到達時未被移除。應(yīng)當理解,內(nèi)容許可證可以被另外地或另選地保存在除嵌入式許可證存儲以外的另ー適當?shù)挠谰迷S可證存儲中,而不背離本發(fā)明的范圍。由此將理解,這里的一般涉及嵌入式許可證存儲的公開內(nèi)容也可以等價地應(yīng)用于其它類型的永久許可證存儲。應(yīng)當理解,內(nèi)容消費設(shè)備可以基于任何何適的標準來請求其中間解密密鑰。例如,在一些實施例中,客戶機可以周期性地發(fā)送對其中間解密密鑰的請求(例如,每八個小吋),作為響應(yīng),接收具有一組更新的中間解密密鑰的已更新許可證。舉另ー個例子,可以 (例如由應(yīng)用等)觸發(fā)客戶機來請求其中間解密密鑰。舉還有ー個例子,內(nèi)容消費設(shè)備可以在啟動時、或者在現(xiàn)有的中間解密密鑰的使用周期到期之前請求其中間解密密鑰。而且,應(yīng)當理解,在一些實施例中,許可證服務(wù)器36可以被配置成供應(yīng)諸如可縮放根許可證38b這樣的許可證,可縮放根許可證38b包括內(nèi)容消費設(shè)備可以從中導出中間解密密鑰40的中間根密鑰42。由此,許可證服務(wù)器36可以減少它所供應(yīng)的密鑰數(shù)量,因此減少其計算代價、帶寬代價和/或存儲代價。然后,內(nèi)容消費設(shè)備被配置有從它們的可縮放根許可證的根中間密鑰導出它們的中間解密密鑰的能力。還有,應(yīng)當理解,許可證服務(wù)器可以被配置成經(jīng)由密碼共享安全地供應(yīng)中間解密密鑰,使得不期望的內(nèi)容消費設(shè)備和/或觀眾不能使用這樣的密鑰。在密碼共享中,許可證服務(wù)器可以將中間密鑰綁定至客戶機的不對稱密鑰對。舉ー個例子,客戶機可以將客戶機證書提供給許可證服務(wù)器,包括客戶機的公鑰(例如,設(shè)備公鑰、域公鑰等)。然后,許可證服務(wù)器可以或直接地、或經(jīng)由另一密鑰間接地將許可證綁定至公鑰。圖2示出內(nèi)容消費設(shè)備(例如,圖1的任一內(nèi)容消費設(shè)備24)上的內(nèi)容許可證存儲的示例方法50的流程圖。在52,內(nèi)容流的內(nèi)容許可證被保持在內(nèi)容消費設(shè)備處的臨時許可證存儲中。內(nèi)容許可證具有指示何時要從臨時許可證存儲中移除許可證的移除日期。應(yīng)當理解,這ー內(nèi)容許可證可以是被保持在多個內(nèi)容流的臨時許可證存儲中的多個內(nèi)容許可證之一,每ー許可證具有一個移除日期。在一些實施例中,方法50可以任選地包括,如M所指示的,索引臨時存儲中保持的許可證。這種索引可以以任何合適的方式完成,以便于許可證的有效存儲和/或檢索。例如,內(nèi)容消費設(shè)備可以被配置成基于檢索日期來索引許可證。這樣,內(nèi)容消費設(shè)備可以容易地標識用于移除的許可證。
在56,確定與許可證相關(guān)聯(lián)的內(nèi)容流是否已被指定用于存檔回放。這一指定可以響應(yīng)于用戶選擇要存檔內(nèi)容流供后續(xù)觀看(例如,記錄以供時移的觀看、回放模式等等)。如果內(nèi)容流被指定為用于存檔回放,則方法50前進至58,在那里將內(nèi)容許可證復制到內(nèi)容流中的嵌入式許可證存儲中以形成存檔的內(nèi)容流。許可證可以被復制到存檔內(nèi)容流的任何合適部分,諸如頭部或容器包裝。在一些實施例中,許可證可以被保存在単獨的文件中,諸如附著到內(nèi)容流或以其他方式對應(yīng)于內(nèi)容流的文件。圖3示出示例使用情況60,其中示例內(nèi)容消費設(shè)備2 如64處指示的從內(nèi)容服務(wù)器22接收內(nèi)容流62,并且如68處指示的從許可證服務(wù)器36接收相應(yīng)的內(nèi)容許可證66。 在該示例中,內(nèi)容流“頻道1”被指定為用于存檔回放。如70處指示,內(nèi)容消費設(shè)備2 將內(nèi)容許可證“Ch. 1許可證”存儲在已存檔的內(nèi)容流“已存檔頻道1”中。如上面介紹的,內(nèi)容消費設(shè)備2 可以將內(nèi)容許可證任選地存儲在“已存檔頻道1”的頭部中。然而應(yīng)當理解, 該例是說明性的,內(nèi)容消費設(shè)備2 可以將這一許可證存儲在已存檔流中的其他地方。轉(zhuǎn)至圖2,在一些實施例中,將內(nèi)容許可證復制到嵌入式許可證存儲可以包括構(gòu)建更新的許可證鏈,如72處指示。例如,內(nèi)容流可以包括含有ー個或多個許可證的嵌入式許可證鏈。這種許可證可以包括但不限于葉許可證、和內(nèi)容流相對應(yīng)的頻道的(諸)中間許可證、標識與內(nèi)容流相關(guān)聯(lián)的內(nèi)容預訂的根許可證、等等。在這ー情況下,內(nèi)容消費設(shè)備可以構(gòu)建一更新的許可證鏈,該更新的許可證鏈包括鏈中的ー個或多個許可證,它們被標識為在存檔的回放期間被使用。如74處指示,然后可以隨著已更新的許可證鏈來將內(nèi)容流保存為已存檔的內(nèi)容流。在一些實施例中,許可證鏈可以被保存在已存檔內(nèi)容流的頭部。通過將內(nèi)容許可證復制到內(nèi)容流中以形成已存檔的內(nèi)容流,已存檔的內(nèi)容流對于后續(xù)的存檔回放來說基本上是“自包含的”,因為已存檔的內(nèi)容流包括回放所需的全部許可證。而且,這一方法相對于內(nèi)容和許可證管理來說特別有利。例如,備份已存檔的內(nèi)容流確保對相關(guān)聯(lián)的許可證的備份,因為許可證被存儲在已存檔的內(nèi)容流中。同樣,已存檔內(nèi)容的組織和/或刪除確保了相應(yīng)地組織和/或刪除許可證。方法50接著從58前進至76。而其,如果在56確定內(nèi)容流未被指定為供已存檔的回放,方法50也前進至76。在76,確定內(nèi)容流的移除日期是否已到達。如果尚未到達移除日期,方法50返回至52。方法50接著前進至80,其中如果移除日期已到達、且內(nèi)容流未被指定為供回放, 則從內(nèi)容消費設(shè)備處的臨時許可證存儲中移除內(nèi)容許可證。方法50接著前進至82,如82處指示,其中如果移除日期已到達、且內(nèi)容流被指定為供存檔回放,則不從已存檔內(nèi)容流內(nèi)的嵌入式許可證存儲中移除內(nèi)容許可證。由此,已存檔的內(nèi)容流保留它們的許可證,并因此可以在存檔回放期間使用這些許可證。在許可證的副本仍存在于內(nèi)容消費設(shè)備上的臨時許可證存儲中的情況下,方法50 可以任選地前進至80,在那里從臨時許可證存儲移除許可證。這樣,臨時存儲中的許可證在它們的移除日期到達時被移除,而那些在內(nèi)容內(nèi)的嵌入式許可證存儲中的許可證具有和內(nèi)容相同的生存時間。而且,如果內(nèi)容消費設(shè)備隨后刪除了已存檔的內(nèi)容,則這ー操作可以自動刪除全部相關(guān)聯(lián)的許可證。應(yīng)當理解,支持存檔(如DVR)功能的內(nèi)容消費設(shè)備還可以支持本地暫停緩沖器,所述本地暫停緩沖器允許用戶在長達預定時間段(例如30分鐘)的時間對內(nèi)容流進行倒帶或暫停。應(yīng)當理解,這也是ー種形式的存檔,因此內(nèi)容消費設(shè)備被配置成為本地暫停緩沖器中的內(nèi)容保留(諸)許可證,以免本地暫停緩沖器萬一被轉(zhuǎn)換成常規(guī)記錄或者用戶希望觀看緩沖器中的內(nèi)容。這防止在許可證的移除日期到達時移除許可證。這一例子還進一歩說明,使移除日期略長于密鑰的輪轉(zhuǎn)周期(例如,比輪轉(zhuǎn)周期加上暫停緩沖器的長度之和要長)為何是有利的。而且,應(yīng)當理解,在一些實施例中,確定是否已到達移除日期(例如在76處)可以響應(yīng)于觸發(fā)條件而作出。這ー觸發(fā)條件可以是任何適當?shù)臈l件,諸如腳本/線程的運行,該腳本/線程對臨時許可證存儲中的許可證的移除日期進行查詢。舉另ー個例子,移除日期的檢查可以響應(yīng)于其他觸發(fā)條件,諸如啟動條件、已過預定時間持續(xù)期之后、等等。此外,在一些實施例中,許可證還可以包括不同于移除日期的到期日。到期日可以與許可證策略相關(guān)聯(lián),使得當?shù)狡谌找训竭_吋,內(nèi)容的回放違背了遵守規(guī)則。由此,無論具有到期日的許可證被存儲在哪里(例如,臨時許可證存儲、嵌入式許可證存儲等),這些許可證都可以被移除或以其他方式被禁用。因而,應(yīng)當理解,被存儲在已存檔內(nèi)容流中的內(nèi)容許可證被配置成符合與許可證移除策略分開的許可證到期策略。換言之,即使在許可證的移除日期到達時,如果到期日尚未到達,客戶機仍符合許可證到期策略。圖4示出可能的使用情況的時間線90。在時間tQ,內(nèi)容消費設(shè)備將許可證(例如許可證X)保持在內(nèi)容消費設(shè)備上的臨時許可證存儲中。應(yīng)當理解,許可證X可以是臨時許可證存儲中保持的多個許可證之一。在時間t”內(nèi)容消費設(shè)備接收ー個輸入,該輸入選擇與許可證X相關(guān)聯(lián)的內(nèi)容流 (例如內(nèi)容流X)供存檔回放。然后,在時間t2,內(nèi)容消費設(shè)備將許可證X復制到內(nèi)容流X內(nèi)的嵌入式許可證存儲中,因此如時間も所示形成存檔內(nèi)容流X。如上所述,在內(nèi)容流包括具有多個許可證的許可證鏈的情況下,內(nèi)容消費設(shè)備可以確定它對于內(nèi)容流中的嵌入式(諸)葉許可證需要哪個 (哪些)中間密鑰來進行后續(xù)的回放。例如,每當新的中間密鑰被標識為用于訪問(例如解密)嵌入式葉許可證內(nèi)的內(nèi)容密鑰時,客戶機可以將包含該中間密鑰的ー個或多個許可證添加到存檔內(nèi)容流內(nèi)的嵌入式許可證存儲(例如,在內(nèi)容頭部中)。應(yīng)當理解,可能涉及到許多密鑰,因為用于對內(nèi)容進行解密的內(nèi)容密鑰可以在任何點變化以及/或者內(nèi)容密鑰可以被綁定至多個中間密鑰。而且,用于訪問內(nèi)容密鑰的中間密鑰組可以在已存檔內(nèi)容流的中間改變,因此要將包括用于訪問內(nèi)容的所有密鑰在內(nèi)的許可證存儲在流中。而且,在一些實施例中,客戶機可以在已存檔文件中原地更新內(nèi)容頭部。然而,在其他實施例中,客戶機可以保留臨時文件頭部,使其較容易地對單獨副本中的嵌入式許可證存儲作出許可證更新,然后作為終結(jié)存檔內(nèi)容流的部分更新在中內(nèi)容記錄中的頭部。應(yīng)當理解,在一些實施例中,已存檔內(nèi)容流的這種形成可以基本上與將許可證復制到流中同時進行。換言之,復制(諸)許可證并保存已存檔流可以全部包括在存檔過程內(nèi)。接著,時間t4指示許可證X的移除日期。此時,可以移除臨時許可證存儲中具有已到達的移除日期的任何許可證,同時即使該許可證的移除日期已到達也使許可證X的副本被存儲在已存檔內(nèi)容流X中的許可證X的副本。然而,在許可證X的副本仍駐留在臨時許可證存儲中的情況下,這ー副本可以被刪除。在時間t5,觀看已存檔的內(nèi)容流X。這種觀看可以響應(yīng)于例如用于回放已存檔內(nèi)容的用戶選擇。內(nèi)容消費設(shè)備然后從已存檔的內(nèi)容流中(例如,從許可證鏈中、從頭部中等等)獲得許可證,然后消費已存檔的內(nèi)容流。這種消費可以包括用已存檔內(nèi)容流中存儲的內(nèi)容許可證內(nèi)所包括的(諸)中間密鑰對已加密內(nèi)容密鑰進行解密、然后使用已解密的內(nèi)容密鑰來對已加密的內(nèi)容流進行解密。這樣,即使許可證X的移除日期已經(jīng)到達,也消費已存檔的內(nèi)容流X。在某些實施例中,以上所描述的方法和過程可與包括一個或多個計算機的計算系統(tǒng)關(guān)聯(lián)。特別地,此處描述的方法和過程可被實現(xiàn)為計算機應(yīng)用、計算機服務(wù)、計算機API、 計算機庫和/或其他計算機程序產(chǎn)品。圖5示意性示出了可以執(zhí)行上述方法和過程之中的一個或更多個的非限制性計算系統(tǒng)100。計算系統(tǒng)100以簡化形式示出,并且可以表示例如內(nèi)容消費設(shè)備M中的任一個。應(yīng)當理解,可使用基本上任何計算機架構(gòu)而不背離本公開的范圍。在不同的實施例中, 計算系統(tǒng)100可以采取大型計算機、服務(wù)器計算機、臺式計算機、膝上型計算機、平板計算機、家庭娛樂計算機、網(wǎng)絡(luò)計算設(shè)備、移動計算設(shè)備、移動通信設(shè)備、游戲設(shè)備等等的形式。計算系統(tǒng)100包括邏輯子系統(tǒng)102和數(shù)據(jù)保持子系統(tǒng)104。計算系統(tǒng)100可以任選地包括顯示子系統(tǒng)106、通信子系統(tǒng)108和/或在圖5中未示出的其他組件。計算系統(tǒng) 100還可以任選地包括諸如下列用戶輸入設(shè)備例如鍵盤、鼠標、游戲控制器、相機、話筒和 /或觸摸屏等等。邏輯子系統(tǒng)102可包括被配置為執(zhí)行ー個或多個指令的ー個或多個物理設(shè)備。例如,邏輯子系統(tǒng)可被配置為執(zhí)行ー個或多個指令,該ー個或多個指令是ー個或多個應(yīng)用、服務(wù)、程序、例程、庫、對象、組件、數(shù)據(jù)結(jié)構(gòu)、或其它邏輯構(gòu)造的部分??蓪崿F(xiàn)此類指令以執(zhí)行任務(wù)、實現(xiàn)數(shù)據(jù)類型、變換ー個或多個設(shè)備的狀態(tài)、或以其它方式得到所需結(jié)果。邏輯子系統(tǒng)可包括被配置成執(zhí)行軟件指令的一個或多個處理器。另外或另選地, 邏輯子系統(tǒng)可包括被配置成執(zhí)行硬件或固件指令的一個或多個硬件或固件邏輯機器。邏輯子系統(tǒng)的處理器可以是單核或多核,且在其上執(zhí)行的程序可被配置為并行或分布式處理。 邏輯子系統(tǒng)可以任選地包括遍布兩個或多個設(shè)備的獨立組件,所述設(shè)備可遠程放置和/或被配置為進行協(xié)同處理。該邏輯子系統(tǒng)的ー個或多個方面可被虛擬化并由以云計算配置進行配置的可遠程訪問的聯(lián)網(wǎng)計算設(shè)備執(zhí)行。數(shù)據(jù)保持子系統(tǒng)104可包括ー個或更多個物理、非瞬時設(shè)備,這些設(shè)備被配置成保持數(shù)據(jù)和/或可由該邏輯子系統(tǒng)執(zhí)行的指令,以實現(xiàn)此處描述的方法和過程。在實現(xiàn)這樣的方法和過程吋,可以變換數(shù)據(jù)保持子系統(tǒng)104的狀態(tài)(例如,以保持不同的數(shù)據(jù))。數(shù)據(jù)保持子系統(tǒng)104可以包括可移動介質(zhì)和/或內(nèi)置設(shè)備。數(shù)據(jù)保持子系統(tǒng)104 尤其是可以包括光學存儲器設(shè)備(例如,⑶、DVD, HD-DVD、藍光盤等)、半導體存儲器設(shè)備 (例如,RAM、EPR0M、EEPR0M等)和/或磁存儲器設(shè)備(例如,硬盤驅(qū)動器、軟盤驅(qū)動器、磁帶驅(qū)動器、MRAM等)。數(shù)據(jù)保持子系統(tǒng)104可以包括具有以下特性中的ー個或更多個特性的設(shè)備易失性、非易失性、動態(tài)、靜態(tài)、讀/寫、只讀、隨機存取、順序存取、位置可尋址、文件可尋址、以及內(nèi)容可尋址。在某些實施例中,可以將邏輯子系統(tǒng)102和數(shù)據(jù)保持子系統(tǒng)104 集成到一個或更多個常見設(shè)備中,如專用集成電路或片上系統(tǒng)。圖5還示出以可移動計算機可讀存儲介質(zhì)110形式的數(shù)據(jù)保持子系統(tǒng)的一方面, 該可移動計算機可讀存儲介質(zhì)110可用于存儲和/或傳輸可執(zhí)行以實現(xiàn)此處所述的方法和過程的數(shù)據(jù)和/或指令??梢苿佑嬎銠C可讀存儲介質(zhì)110尤其是可以采取CD、DVD、HD-DVD、 藍光盤、EEPROM和/或軟盤形式。可以明白,數(shù)據(jù)保持子系統(tǒng)104包括ー個或多個方面物理非瞬態(tài)設(shè)備。相反,在一些實施例中,本文描述的指令的各方面可以按暫態(tài)方式通過不由物理設(shè)備在至少有限持續(xù)時間期間保持的純信號(例如電磁信號、光信號等)傳播。此外,與本公開有關(guān)的數(shù)據(jù)和/ 或其他形式的信息可以通過純信號傳播。術(shù)語“模塊”、“程序”和“引擎”可用于描述被實現(xiàn)以執(zhí)行ー個或更多個具體功能的計算系統(tǒng)100的一方面。在某些情況下,可以通過執(zhí)行由數(shù)據(jù)保持子系統(tǒng)104所保持的指令的邏輯子系統(tǒng)102來實例化這樣的模塊、程序或引擎。應(yīng)當理解,可以從同一應(yīng)用、服務(wù)、代碼塊、對象、庫、例程、API、函數(shù)等來實例化不同的模塊、程序和/或引擎。同樣,可以由不同的應(yīng)用、服務(wù)、代碼塊、對象、例程、API、函數(shù)等來實例化同一模塊、程序和/或引擎。 術(shù)語“模塊”、“程序”和“引擎”意在涵蓋單個或成組的可執(zhí)行文件、數(shù)據(jù)文件、庫、驅(qū)動程序、 腳本、數(shù)據(jù)庫記錄等。應(yīng)當理解,如此處所使用的“服務(wù)”可以是跨越多個用戶會話可執(zhí)行的、而且對一個或更多系統(tǒng)組件、程序和/或其他服務(wù)可用的應(yīng)用程序。在一些實現(xiàn)中,服務(wù)可以響應(yīng)于來自客戶機的請求而在服務(wù)器上運行。當被包括時,顯示子系統(tǒng)106可用于呈現(xiàn)由數(shù)據(jù)保持子系統(tǒng)104所保持的數(shù)據(jù)的可視表示。由于此處所描述的方法和過程改變由數(shù)據(jù)保持子系統(tǒng)保持的數(shù)據(jù),并由此變換數(shù)據(jù)保持子系統(tǒng)的狀態(tài),因此同樣可以變換顯示子系統(tǒng)106的狀態(tài)以在視覺上表示底層數(shù)據(jù)中的改變。顯示子系統(tǒng)106可以包括使用實際上任何類型的技術(shù)的ー個或多個顯示設(shè)備。可將此類顯示設(shè)備與邏輯子系統(tǒng)102和/或數(shù)據(jù)保存子系統(tǒng)104 —起組合在共享封裝中,或此類顯示設(shè)備可以是外圍顯示設(shè)備。當被包括在內(nèi)吋,通信子系統(tǒng)108可以被配置成將計算系統(tǒng)100與ー個或多個其他計算設(shè)備可通信地耦合。通信子系統(tǒng)108可包括與ー個或多個不同的通信協(xié)議相兼容的有線和/或無線通信設(shè)備。作為非限制性示例,該通信子系統(tǒng)可以被配置成經(jīng)由無線電話網(wǎng)、無線局域網(wǎng)、有線局域網(wǎng)、無線廣域網(wǎng)、有線廣域網(wǎng)等進行通信。在一些實施例中,該通信子系統(tǒng)可允許計算系統(tǒng)100經(jīng)由網(wǎng)絡(luò)(比如因特網(wǎng))向其他設(shè)備發(fā)送消息和/或從其他設(shè)備接收消息。應(yīng)該理解,此處所述的配置和/或方法在本質(zhì)上是示例性的,且這些具體實施例或示例不是限制意義,因為多個變體是可能的。此處所述的具體例程或方法可表示任何數(shù)量的處理策略中的一個或更多個。由此,所示出的各個動作可以按所示順序執(zhí)行、按其他順序執(zhí)行、并行地執(zhí)行、或者在某些情況下省略。同樣,可以改變上述過程的次序。本發(fā)明的主題包括各種過程、系統(tǒng)和配置的所有新穎和非顯而易見的組合和子組合,并包括此處所公開的其他特征、功能、動作、和/或特性、以及其任何和全部等效物。
權(quán)利要求
1.ー種內(nèi)容消費設(shè)備04)上的內(nèi)容許可證存儲的方法,所述方法包括在內(nèi)容消費設(shè)備上的臨時許可證存儲中保持(5 多個內(nèi)容流的多個內(nèi)容許可證,所述多個內(nèi)容許可證的每個內(nèi)容許可證包括移除日期;對于和為存檔回放指定的多個內(nèi)容流中的ー個內(nèi)容流相對應(yīng)的多個內(nèi)容許可證的每個內(nèi)容許可證,將內(nèi)容許可證復制(58)到內(nèi)容流內(nèi)的嵌入式許可證存儲中以形成已存檔的內(nèi)容流;以及如果內(nèi)容許可證內(nèi)包括的移除日期已經(jīng)到達,則移除(80)在臨時許可證存儲處保持的多個內(nèi)容許可證中的一個或多個,而同時即使在移除日期已到達的情況下也使每個內(nèi)容許可證被保持(8 存儲在已存檔的內(nèi)容流內(nèi)。
2.如權(quán)利要求1所述的方法,其特征在干,所述嵌入式許可證存儲在已存檔的內(nèi)容流的頭部中。
3.如權(quán)利要求1所述的方法,還包括,基于多個內(nèi)容許可證的每ー個內(nèi)容許可證的移除日期來索引臨時許可證存儲中的多個內(nèi)容許可證。
4.如權(quán)利要求1所述的方法,其特征在干,如果內(nèi)容許可證內(nèi)包括的移除日期已經(jīng)到達則移除在臨時許可證存儲處保持的多個內(nèi)容許可證中的ー個或多個是響應(yīng)于觸發(fā)條件進行的。
5.如權(quán)利要求1所述的方法,其特征在干,被存儲在已存檔的內(nèi)容流中的內(nèi)容許可證被配置成符合與許可證移除策略分開的許可證到期策略。
6.如權(quán)利要求1所述的方法,其特征在干,所述多個內(nèi)容許可證中的一個或多個是被發(fā)布給內(nèi)容消費設(shè)備所屬的域的域內(nèi)容許可證。
7.如權(quán)利要求1所述的方法,其特征在干,所述多個內(nèi)容許可證的每個內(nèi)容許可證被嵌入在相應(yīng)的已加密內(nèi)容流內(nèi),并且包括與對已加密內(nèi)容流進行密碼加密的內(nèi)容密鑰配對的已加密的內(nèi)容密鑰,所述已加密的內(nèi)容密鑰可通過ー個或多個中間密鑰由內(nèi)容消費設(shè)備來密碼解密,所述ー個或多個中間密鑰經(jīng)由密碼共享被提供給內(nèi)容消費設(shè)備。
8.ー種內(nèi)容消費設(shè)備(100),包括邏輯子系統(tǒng)(102),該邏輯子系統(tǒng)被配置成執(zhí)行指令;以及數(shù)據(jù)保持子系統(tǒng)(104),該數(shù)據(jù)保持子系統(tǒng)保持可由邏輯子系統(tǒng)執(zhí)行以進行以下操作的指令在內(nèi)容消費設(shè)備上的臨時許可證存儲中保持(5 多個內(nèi)容流的多個內(nèi)容許可證,所述多個內(nèi)容許可證的每個內(nèi)容許可證包括移除日期;對于和為存檔回放指定的多個內(nèi)容流中的ー個內(nèi)容流相對應(yīng)的多個內(nèi)容許可證的每個內(nèi)容許可證,將內(nèi)容許可證復制(58)到內(nèi)容流內(nèi)的嵌入式許可證存儲中以形成已存檔的內(nèi)容流;以及如果內(nèi)容許可證內(nèi)包括的移除日期已經(jīng)到達,則移除(80)在臨時許可證存儲處保持的多個內(nèi)容許可證中的一個或多個,而同時即使在移除日期已到達的情況下也使每個內(nèi)容許可證被保持(8 存儲在已存檔的內(nèi)容流內(nèi)。
9.如權(quán)利要求8所述的內(nèi)容消費設(shè)備,其特征在于,所述嵌入式許可證存儲在已存檔的內(nèi)容流的頭部中。
10.如權(quán)利要求8所述的內(nèi)容消費設(shè)備,其特征在于,所述指令可進ー步執(zhí)行以便基于多個內(nèi)容許可證的每ー個內(nèi)容許可證的移除日期來索引臨時許可證存儲中的多個內(nèi)容許可證。
全文摘要
本發(fā)明涉及內(nèi)容許可證存儲。通過在內(nèi)容消費設(shè)備上的臨時許可證存儲中保持多個內(nèi)容流的多個內(nèi)容許可證,提供了內(nèi)容許可證存儲,其中多個內(nèi)容許可證的每個內(nèi)容許可證包括一個移除日期。該方法還包括,對于和為存檔回放指定的多個內(nèi)容流中的一個內(nèi)容流相對應(yīng)的多個內(nèi)容許可證的每個內(nèi)容許可證,將內(nèi)容許可證復制到內(nèi)容流內(nèi)的嵌入式許可證存儲中以形成已存檔的內(nèi)容流。該方法還包括,如果內(nèi)容許可證內(nèi)包括的移除日期已經(jīng)到達則移除在臨時許可證存儲處保持的多個內(nèi)容許可證中的一個或多個,而同時即使在移除日期已到達的情況下也使每個內(nèi)容許可證保持存儲在存檔內(nèi)容流內(nèi)。
文檔編號H04L29/06GK102571763SQ20111043559
公開日2012年7月11日 申請日期2011年12月12日 優(yōu)先權(quán)日2010年12月13日
發(fā)明者Q·S·伯恩斯 申請人:微軟公司