用于媒體路徑安全的方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及用于媒體路徑安全的方法和系統(tǒng)并特別地涉及使數(shù)字媒體安全。
【背景技術(shù)】
[0002]許多媒體回放設(shè)備提供受保護的媒體路徑來確保在回放期間不能從所述設(shè)備提取視聽內(nèi)容。它們?nèi)慷荚馐艿剿鼈兊慕涌谠谟脩艨稍L問存儲器中的問題。同樣地,從保護的一個域移動到媒體路徑保護域中的內(nèi)容肯定被暴露給用戶空間攻擊。
[0003]本文公開的系統(tǒng)和方法提供用于媒體路徑安全的方法和系統(tǒng)以消除或減輕前述缺點中的至少某些。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的是提供用于媒體路徑安全的改進的方法和系統(tǒng)。
[0005]本公開提供與數(shù)字內(nèi)容相關(guān)聯(lián)的安全控制的擴展,所述數(shù)字內(nèi)容在光盤上、在USB驅(qū)動器上、在硬盤驅(qū)動器上、在固態(tài)盤(SSD)上或在連接的網(wǎng)絡(luò)上的文件或目錄中分發(fā)。對現(xiàn)有系統(tǒng)的控制的該擴展提供點,在所述點處變換的(即被腐蝕的(corrupted))視頻數(shù)據(jù)可以針對GPU (圖形處理單元)被修理和加密,或針對軟件解碼器的處理和進一步修理而被修理和再腐蝕,或針對隨后的軟件解碼而被修理和解壓縮。修理和加密過程或修理和再腐蝕過程或修理/解壓縮過程中的每個被混合為單個操作并且以抵抗白盒攻擊的方式被保護。修理/加密、修理/解壓縮或修理/再腐蝕操作是按照內(nèi)容不同的并且與內(nèi)容相關(guān)聯(lián)且一起分發(fā)。如果適當信令來自與內(nèi)容一起分發(fā)的代碼,則播放器調(diào)用修理/加密或修理/再腐蝕或修理/解壓縮操作。視頻數(shù)據(jù)的加密保護(通過加密、進一步腐蝕或解壓縮被唯一提供給視頻再現(xiàn)(render)子系統(tǒng)的GPU或軟件解碼器并且因此在被攻擊時不容易被克隆或抽取(siphon)。
[0006]本發(fā)明描述了用于從創(chuàng)作到向許多消費者部署的媒體路徑保護的方法和系統(tǒng)。
[0007]根據(jù)本公開的一個方面,提供了一種用于媒體路徑安全的系統(tǒng),所述系統(tǒng)包括具有用于腐蝕內(nèi)容數(shù)據(jù)并提供解腐蝕數(shù)據(jù)的內(nèi)容流變換和腐蝕器的創(chuàng)作系統(tǒng)、用于輸送被腐蝕的內(nèi)容數(shù)據(jù)和解腐蝕數(shù)據(jù)的媒體容器,以及具有用于依靠解腐蝕數(shù)據(jù)修理被腐蝕的內(nèi)容數(shù)據(jù)的修理部件的客戶端系統(tǒng)。
[0008]根據(jù)本公開的另一方面,提供了一種提供媒體路徑安全的方法,方法包括在創(chuàng)作系統(tǒng)中創(chuàng)作內(nèi)容數(shù)據(jù)、腐蝕和變換創(chuàng)作的內(nèi)容數(shù)據(jù)以提供被腐蝕的內(nèi)容數(shù)據(jù)和解腐蝕數(shù)據(jù)、將被腐蝕的內(nèi)容數(shù)據(jù)和解腐蝕數(shù)據(jù)存儲在媒體容器中、將媒體容器輸送到客戶端系統(tǒng)、在客戶端系統(tǒng)中依靠解腐蝕數(shù)據(jù)來修理被腐蝕的內(nèi)容數(shù)據(jù)。
[0009]根據(jù)本公開的另一方面,提供了一種客戶端系統(tǒng),所述客戶端系統(tǒng)包括用于接收媒體容器的輸入和用于依靠解腐蝕數(shù)據(jù)修理被腐蝕的內(nèi)容數(shù)據(jù)的修理部件。
【附圖說明】
[0010]根據(jù)關(guān)于附圖的以下詳細描述將進一步理解本發(fā)明,在所述附圖中:
圖1圖示了根據(jù)本公開的實施例的系統(tǒng)概覽;
圖2圖示了根據(jù)本公開的實施例的客戶端系統(tǒng)概覽;
圖3圖示了根據(jù)本公開的實施例的創(chuàng)作側(cè)媒體準備;
圖4圖示了根據(jù)本公開的另一實施例的客戶端系統(tǒng)中的客戶端側(cè)媒體處理;以及圖5圖示了根據(jù)本公開的進一步實施例的客戶端系統(tǒng)中的客戶端側(cè)媒體處理。
[0011]圖6圖示了根據(jù)本公開的進一步實施例的客戶端系統(tǒng)中的客戶端側(cè)媒體處理。
【具體實施方式】
[0012]參考圖1,圖示了一種根據(jù)本公開的實施例的系統(tǒng)概覽。對于系統(tǒng)和方法10,存在兩個主要部分,創(chuàng)作側(cè)處理12和客戶端側(cè)處理14。
[0013]創(chuàng)作側(cè)處理。取得原始未保護的媒體16作為輸入,第一步涉及準備18受保護的變換的形式的媒體。然后在媒體容器20中發(fā)布受保護的媒體連同內(nèi)容代碼。媒體容器20可以以許多形式分發(fā)。這些包括但不限于:在光盤上、在USB驅(qū)動器上、在硬盤驅(qū)動器上、在固態(tài)盤(SSD)上或在連接的網(wǎng)絡(luò)上的文件或目錄中。
[0014]客戶端側(cè)處理。客戶端側(cè)媒體播放器然后取得媒體容器20并且執(zhí)行在媒體上的受保護的媒體回放22。播放器執(zhí)行流的解復用并且將基本視頻流的處理移交(relegate)到原生內(nèi)容代碼。原生內(nèi)容代碼被提供有在媒體容器中受保護的媒體。
[0015]參考圖2和3,當前描述的系統(tǒng)包含三個主要部件,媒體變換部件30、密鑰交換部件32和修理部件34。
[0016]媒體變換部件30包括解復用器24、初級流變換和腐蝕器26以及復用器28。
[0017]在操作中,媒體變換部件30在解復用之后通過唯一地標識初級流的部分、腐蝕基本(essential)數(shù)據(jù)、對表格中的所述數(shù)據(jù)和流它本身編碼以及將配置數(shù)據(jù)提供到用于第二部件,密鑰交換部件32,的構(gòu)建系統(tǒng)來變換原始編碼的媒體16(例如H.264、MPEG、VC-1)。
[0018]媒體變換部件30是僅構(gòu)建時(build-time)部件,從未被分發(fā)并且僅被用在受保護的媒體和相關(guān)聯(lián)的代碼/數(shù)據(jù)的準備中。媒體變換部件30被用在系統(tǒng)10的頭端/創(chuàng)作側(cè)12上。在媒體流被解復用24之后,通過移除流的塊并且以隨機數(shù)據(jù)替代所述塊來腐蝕26視頻。在數(shù)據(jù)表格中變換和放置從流移除的視頻數(shù)據(jù)。基于呈現(xiàn)時間戳來定位腐蝕,這被用來實現(xiàn)單獨的初級流(例如,視頻、音頻、字幕)的同步。
[0019]媒體變換(MT)過程被建立以與AES加密一起工作。基于被壓縮的流最后將如何針對圖形卡成塊并且加密,腐蝕可以發(fā)生的位置是受限的。一旦被腐蝕的字節(jié)的位置已經(jīng)被確定,就選擇被放置在如存儲在外部表中的未腐蝕的字節(jié)上的變換。根據(jù)US6,594,761、US6, 842,862 和 US7, 350,085 產(chǎn)生數(shù)據(jù)變換。
[0020]在MPEG和H.264視頻編碼中,定時和導航信息與剪輯(clip) (M2TS文件)內(nèi)的偏移和呈現(xiàn)時間戳(在M2TS PES-分組報頭中)兩者相關(guān)。這些的后解復用都不是可用的,并且在H.264數(shù)據(jù)中不存在唯一標識信息來表明任何特定的H.264元素屬于哪個呈現(xiàn)時間或剪輯偏移并且因此測驗(workout)在哪里應(yīng)用修理。在幀報頭內(nèi)存在“幀號”和“圖片順序計數(shù)”字段,但這些不是H.264流內(nèi)的唯一的、絕對的或單調(diào)增加的值。
[0021]取決于組成解復用器24的輸出的事物,過程可以或可以不具有對完整的和/或?qū)R的Η.264 Nal單元的訪問。過程可以僅具有時間片(slice)或幀數(shù)據(jù)或可以是對應(yīng)于非幀H.264 Nal單元的被傳遞的數(shù)據(jù)。過程可以具有完整的幀或單個時間片。因此,用于應(yīng)用修理后解復用的廣泛問題是標識,即決定當前在解復用流和同步中正在處理哪個幀,即找到根據(jù)其分析數(shù)據(jù)的參考點。
[0022]在調(diào)查的大部分解復用器中,觀察到由多個Nal單元進行的成塊。某些解復用器呈現(xiàn)全部H.264 Nal單元,某些僅呈現(xiàn)與幀數(shù)據(jù)相關(guān)的那些Nal單元。某些包括在MPEG開始代碼,而某些以長度字段替代開始代碼。在最壞的情況下并且在純M2TS剝離器(stripper)中,一個可以僅具有字節(jié)流。
[0023]針對需要處理來自H.264字節(jié)流的同步和幀標識的情況下,本技術(shù)方案將分析不斷地監(jiān)視MPEG開始代碼的存在的后解復用字節(jié)流。每次觀察到開始代碼,這被視為基礎(chǔ)編索引點并且計數(shù)字節(jié)開始。而且在該點處,過程將初始化64位散列(hash)的計算。針對修理,過程對影響幀數(shù)據(jù)、尤其對選擇三感興趣,在所述選擇三中幀數(shù)據(jù)是過程被允許腐蝕的唯一的東西。在H.264時間片報頭內(nèi)存在各種字段,所述各種字段在幀之間廣泛類似并且跨相同幀內(nèi)的所有時間片廣泛恒定。該過程需要確保越過時間片報頭的末尾充分地計算散列以肯定視頻數(shù)據(jù)正在被散列。更進一步地,雖然通過在散列計算內(nèi)包括來自時間片報頭的幀號和圖片順序計數(shù)字段,這些值跨整個剪輯是非唯一的,但是過程也能夠在具有