專利背景
截至2011年4月22日,隨著機頂盒技術的發展,機頂盒中的PVR(Personal video recorder,個人錄像機)功能已漸漸成為廣播電視業務中的主流套用。用戶可通過機頂盒中的PVR功能,將自己喜愛的電視節目錄製於存儲設備(如:
移動硬碟、
隨身碟等)中,以便在電視節目播放後的其他時間進行回放,並可以對錄製的節目進行快進、快退、暫停等操作,提升了用戶對於機頂盒的使用體驗。
發明人發現,現有的節目錄製方案並未對錄製的節目進行保護(如:加密保護),當接收到用戶的節目錄製請求時,機頂盒直接將用戶所請求錄製的節目的TS流(Transport Stream,傳輸流)寫入存儲設備中,這導致存儲設備中的錄製節目可被隨意拷貝,不利於節目的著作權保護。
截至2011年4月22日,錄製節目的回放方案並未對機頂盒的許可權進行驗證,當接收到用戶的錄製節目回放請求時,與存儲設備相連線的任意機頂盒均可直接從存儲設備中讀取TS流進行播放,這導致錄製節目可被任意機頂盒進行播放,進一步威脅到錄製節目的著作權。
發明內容
專利目的
《節目錄製方法、錄製節目的回放方法及機頂盒》實施例所要解決的技術問題在於,提供一種節目錄製方法、錄製節目的回放方法及機頂盒,能夠防止對錄製的節目的隨意拷貝,對錄製的節目的著作權實現有效地保護。
技術方案
為了解決上述技術問題,《節目錄製方法、錄製節目的回放方法及機頂盒》實施例提供了一種節目錄製方法,包括:
當接收到用戶的節目錄製請求時,機頂盒生成所請求錄製的節目的元數據檔案,所述元數據檔案包括:M位元組長度的第一隨機數;
所述機頂盒採用預置的第一密鑰對所述第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數;
所述機頂盒採用預置的第二密鑰對所述元數據檔案進行HASH(哈希或散列)加密,獲得所請求錄製的節目的錄製校驗檔案;
所述機頂盒將所述第二隨機數作為第三密鑰,對所請求錄製的節目的傳輸流TS流進行對稱加密,獲得TS流檔案;
所述機頂盒將所述元數據檔案、錄製校驗檔案及TS流檔案寫入存儲設備中。
其中,所述元數據檔案包括:M位元組長度的第一隨機數;
所述當接收到用戶的節目錄製請求時,機頂盒生成所請求錄製的節目的元數據檔案,包括:當接收到用戶的節目錄製請求時,機頂盒生成一個M位元組長度的第一隨機數;
所述機頂盒將所述M位元組長度的第一隨機數作為所請求錄製的節目的元數據檔案。
其中,所述元數據檔案包括:M位元組長度的第一隨機數及所請求錄製的節目的失效時間;
所述當接收到用戶的節目錄製請求時,機頂盒生成所請求錄製的節目的元數據檔案,包括:當接收到用戶的節目錄製請求時,機頂盒生成一個M位元組長度的第一隨機數;
所述機頂盒從伺服器下發的節目流中獲取當前時間戳;
所述機頂盒根據所述當前時間戳及預設的有效時長,計算得到所請求錄製的節目的失效時間;
所述機頂盒對所述第一隨機數和所請求錄製的節目的失效時間進行封裝,形成所請求錄製的節目的元數據檔案。
其中,所述當接收到用戶的節目錄製請求時,機頂盒生成所請求錄製的節目的元數據檔案之前,還包括:機頂盒預先設定第一密鑰和第二密鑰,包括:機頂盒獲取當前機頂盒的ID(Identity,標識號碼),所述ID為N位元組長度;
所述機頂盒根據預設的第一規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第一密鑰;
所述機頂盒根據預設的第二規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第二密鑰;
其中,所述M的值大於N的值。
相應地,《節目錄製方法、錄製節目的回放方法及機頂盒》實施例還提供了一種錄製節目的回放方法,包括:當接收到用戶的錄製節目回放請求時,機頂盒從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案;
所述機頂盒採用預置的第二密鑰對所述元數據檔案進行HASH加密,獲得所請求回放的錄製節目的回放校驗檔案;
所述機頂盒將所述回放檢驗檔案與讀取的所述錄製校驗檔案進行匹配,若匹配成功,所述機頂盒則解析所述元數據檔案,獲得M位元組長度的第一隨機數;
所述機頂盒採用預置的第一密鑰對所述第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數;
所述機頂盒將所述第二隨機數作為第三密鑰,對所述TS流檔案進行對稱解密,獲得所請求回放的錄製節目的TS流;
所述機頂盒播放所請求回放的錄製節目的TS流。
其中,所述機頂盒解析所述元數據檔案,還獲得所請求回放的錄製節目的失效時間;
所述機頂盒解析所述元數據檔案之後,採用預置的第一密鑰對所述第一隨機數進行對稱加密之前,還包括:所述機頂盒獲取當前系統時間;
所述機頂盒將當前系統時間與所請求回放的錄製節目的失效時間相比對,若當前系統時間未達到所請求回放的錄製節目的失效時間,所述機頂盒則執行對所述第一隨機數進行對稱加密的步驟。
其中,所述機頂盒從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案之前,還包括:機頂盒預先設定第一密鑰和第二密鑰,包括:機頂盒獲取當前機頂盒的ID,所述ID為N位元組長度;
所述機頂盒根據預設的第一規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第一密鑰;
所述機頂盒根據預設的第二規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第二密鑰;
其中,所述M的值大於N的值。
其中,所述機頂盒預先設定第一密鑰和第二密鑰之後,從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案之前,還包括:當接收到用戶的錄製節目回放請求時,機頂盒檢測存儲設備中是否包含所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案;若檢測結果為是,所述機頂盒則執行讀取步驟。
相應地,《節目錄製方法、錄製節目的回放方法及機頂盒》實施例還提供了一種機頂盒,包括:元數據生成模組,用於當接收到用戶的節目錄製請求時,生成所請求錄製的節目的元數據檔案,所述元數據檔案包括:M位元組長度的第一隨機數;
隨機數加密模組,用於採用預置的第一密鑰對所述元數據生成模組生成的元數據檔案中包括的第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數;
元數據加密模組,用於採用預置的第二密鑰對所述元數據生成模組生成的元數據檔案進行哈希HASH加密,獲得所請求錄製的節目的錄製校驗檔案;
TS流加密模組,用於將所述隨機數加密模組獲得的第二隨機數作為第三密鑰,對所請求錄製的節目的TS流進行對稱加密,獲得TS流檔案;
錄製模組,用於將所述元數據生成模組生成的元數據檔案、所述元數據加密模組獲得的錄製校驗檔案及所述TS流加密模組獲得的TS流檔案寫入存儲設備中。
其中,所述機頂盒還包括:預置模組,用於預先設定第一密鑰和第二密鑰;
所述預置模組包括:獲取單元,用於獲取當前機頂盒的ID,所述ID為N位元組長度;第一預置單元,用於根據預設的第一規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第一密鑰;第二預置單元,用於根據預設的第二規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第二密鑰;其中,所述M的值大於N的值。
其中,所述元數據檔案包括:M位元組長度的第一隨機數;
所述元數據生成模組包括:隨機數生成單元,用於當接收到用戶的節目錄製請求時,生成一個M位元組長度的第一隨機數;元數據生成單元,用於將所述隨機數生成單元生成的第一隨機數作為所請求錄製的節目的元數據檔案。
其中,所述元數據檔案包括:M位元組長度的第一隨機數及所請求錄製的節目的失效時間;
所述元數據生成模組包括:
隨機數生成單元,用於當接收到用戶的節目錄製請求時,生成一個M位元組長度的第一隨機數;時間戳獲取單元,用於從伺服器下發的節目流中獲取當前時間戳;
失效時間計算單元,用於根據所述時間戳獲取單元獲取的當前時間戳,及預設的有效時長,計算得到所請求錄製的節目的失效時間;元數據生成單元,用於對所述隨機數生成單元生成的第一隨機數和所述失效時間計算單元計算得到的所請求錄製的節目的失效時間進行封裝,形成所請求錄製的節目的元數據檔案。
相應地,《節目錄製方法、錄製節目的回放方法及機頂盒》實施例還提供了一種機頂盒,包括:讀取模組,用於當接收到用戶的錄製節目回放請求時,從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案;元數據加密模組,用於採用預置的第二密鑰對所述讀取模組讀取的元數據檔案進行HASH加密,獲得所請求回放的錄製節目的回放校驗檔案;匹配模組,用於將所述元數據加密模組獲得的回放檢驗檔案與所述讀取模組讀取的錄製校驗檔案進行匹配;解析模組,用於當所述匹配模組匹配成功時,解析所述讀取模組讀取的元數據檔案,獲得M位元組長度的第一隨機數;隨機數加密模組,用於採用預置的第一密鑰對所述解析模組獲得的第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數;TS流解密模組,用於將所述隨機數加密模組獲得的第二隨機數作為第三密鑰,對所述讀取模組讀取的TS流檔案進行解密,獲得所請求回放的錄製節目的TS流;回放模組,用於播放所述TS流解密模組解密後的TS流。
其中,所述解析模組解析所述元數據檔案,還獲得所請求回放的錄製節目的失效時間;所述機頂盒還包括:時間獲取模組,用於獲取當前系統時間;比對模組,用於將所述時間獲取模組獲取的當前系統時間與所請求回放的錄製節目的失效時間相比對,若當前系統時間未達到所請求回放的錄製節目的失效時間,則通知所述隨機數加密模組對所述第一隨機數進行對稱加密。
其中,所述機頂盒還包括:檢測模組,用於檢測存儲設備中是否包含所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案,若檢測結果為是,則通知所述讀取模組進行檔案的讀取。
改善效果
實施《節目錄製方法、錄製節目的回放方法及機頂盒》實施例,具有如下有益效果:
《節目錄製方法、錄製節目的回放方法及機頂盒》實施例在節目錄製時,採用預置的第二密鑰對元數據檔案進行加密,採用預置的第一密鑰對第一隨機數進行加密得到第三密鑰,最後採用第三密鑰對請求錄製的節目的TS流進行加密;在節目錄製時進行三次加密操作,可有力保護請求錄製的節目的安全性;另外,對所請求錄製的節目的TS流利用第一隨機數加密後得到的第二隨機數作為密鑰進行加密,隨機數的隨機性可保證每次節目錄製時的密鑰均不相同,從而加大了破解難度,更有效地保證請求錄製的節目的安全性;
《節目錄製方法、錄製節目的回放方法及機頂盒》實施例對錄製節目進行回放時,由當前機頂盒採用預置的第一密鑰和第二密鑰進行相應的加解密操作來實現對錄製節目的回放,由於第一密鑰和第二密鑰均由當前機頂盒的ID依據預設的規則形成,若當前機頂盒並非節目錄製時的機頂盒,則二者的ID不同,當前機頂盒無法獲得正確的密鑰來進行回放操作,此處即可實現對當前機頂盒的許可權驗證,從而防止錄製節目被隨意播放,保護了錄製節目的著作權,保證了節目的安全性。
附圖說明
為了更清楚地說明《節目錄製方法、錄製節目的回放方法及機頂盒》實施例或截至2011年4月22日技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,下面描述中的附圖僅僅是《節目錄製方法、錄製節目的回放方法及機頂盒》的一些實施例,對於該領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為《節目錄製方法、錄製節目的回放方法及機頂盒》的機頂盒的第一實施例的結構示意圖;
圖2為圖1所示的元數據生成模組的第一實施例的結構示意圖;
圖3為圖1所示的元數據生成模組的第二實施例的結構示意圖;
圖4為《節目錄製方法、錄製節目的回放方法及機頂盒》的機頂盒的第二實施例的結構示意圖;
圖5為圖4所示的預置模組的實施例的結構示意圖;
圖6為《節目錄製方法、錄製節目的回放方法及機頂盒》的機頂盒的第三實施例的結構示意圖;
圖7為《節目錄製方法、錄製節目的回放方法及機頂盒》的機頂盒的第四實施例的結構示意圖;
圖8為《節目錄製方法、錄製節目的回放方法及機頂盒》的節目錄製方法的第一實施例的流程圖;
圖9為圖8所示的步驟S101的第一實施例的具體流程圖;
圖10為圖8所示的步驟S101的第二實施例的具體流程圖;
圖11為《節目錄製方法、錄製節目的回放方法及機頂盒》的節目錄製方法的第二實施例的流程圖;
圖12為圖11所示的步驟S201的具體流程圖;
圖13為《節目錄製方法、錄製節目的回放方法及機頂盒》的錄製節目的回放方法的第一實施例的流程圖;
圖14為《節目錄製方法、錄製節目的回放方法及機頂盒》的錄製節目的回放方法的第二實施例的流程圖。
技術領域
《節目錄製方法、錄製節目的回放方法及機頂盒》涉及節目錄製及回放技術領域,尤其涉及一種節目錄製方法、錄製節目的回放方法及機頂盒。
權利要求
1.一種節目錄製方法,其特徵在於,包括:當接收到用戶的節目錄製請求時,機頂盒生成所請求錄製的節目的元數據檔案,所述元數據檔案包括:M位元組長度的第一隨機數;所述機頂盒採用預置的第一密鑰對所述第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數;所述機頂盒採用預置的第二密鑰對所述元數據檔案進行哈希HASH加密,獲得所請求錄製的節目的錄製校驗檔案;所述機頂盒將所述第二隨機數作為第三密鑰,對所請求錄製的節目的傳輸流TS流進行對稱加密,獲得TS流檔案;所述機頂盒將所述元數據檔案、錄製校驗檔案及TS流檔案寫入存儲設備中。
2.如權利要求1所述的方法,其特徵在於,所述元數據檔案包括:M位元組長度的第一隨機數;所述當接收到用戶的節目錄製請求時,機頂盒生成所請求錄製的節目的元數據檔案,包括:當接收到用戶的節目錄製請求時,機頂盒生成一個M位元組長度的第一隨機數;所述機頂盒將所述M位元組長度的第一隨機數作為所請求錄製的節目的元數據檔案。
3.如權利要求1所述的方法,其特徵在於,所述元數據檔案包括:M位元組長度的第一隨機數及所請求錄製的節目的失效時間;所述當接收到用戶的節目錄製請求時,機頂盒生成所請求錄製的節目的元數據檔案,包括:當接收到用戶的節目錄製請求時,機頂盒生成一個M位元組長度的第一隨機數;所述機頂盒從伺服器下發的節目流中獲取當前時間戳;所述機頂盒根據所述當前時間戳及預設的有效時長,計算得到所請求錄製的節目的失效時間;所述機頂盒對所述第一隨機數和所請求錄製的節目的失效時間進行封裝,形成所請求錄製的節目的元數據檔案。
4.如權利要求1-3任一項所述的方法,其特徵在於,所述當接收到用戶的節目錄製請求時,機頂盒生成所請求錄製的節目的元數據檔案之前,還包括:機頂盒預先設定第一密鑰和第二密鑰,包括:機頂盒獲取當前機頂盒的ID,所述ID為N位元組長度;所述機頂盒根據預設的第一規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第一密鑰;所述機頂盒根據預設的第二規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第二密鑰;其中,所述M的值大於N的值。
5.一種錄製節目的回放方法,其特徵在於,包括:當接收到用戶的錄製節目回放請求時,機頂盒從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案;所述機頂盒採用預置的第二密鑰對所述元數據檔案進行HASH加密,獲得所請求回放的錄製節目的回放校驗檔案;所述機頂盒將所述回放檢驗檔案與讀取的所述錄製校驗檔案進行匹配,若匹配成功,所述機頂盒則解析所述元數據檔案,獲得M位元組長度的第一隨機數;所述機頂盒採用預置的第一密鑰對所述第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數;所述機頂盒將所述第二隨機數作為第三密鑰,對所述TS流檔案進行對稱解密,獲得所請求回放的錄製節目的TS流;所述機頂盒播放所請求回放的錄製節目的TS流。
6.如權利要求5所述的方法,其特徵在於,所述機頂盒解析所述元數據檔案,還獲得所請求回放的錄製節目的失效時間;所述機頂盒解析所述元數據檔案之後,採用預置的第一密鑰對所述第一隨機數進行對稱加密之前,還包括:所述機頂盒獲取當前系統時間;所述機頂盒將當前系統時間與所請求回放的錄製節目的失效時間相比對,若當前系統時間未達到所請求回放的錄製節目的失效時間,所述機頂盒則執行對所述第一隨機數進行對稱加密的步驟。
7.如權利要求5所述的方法,其特徵在於,所述機頂盒從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案之前,還包括:機頂盒預先設定第一密鑰和第二密鑰,包括:機頂盒獲取當前機頂盒的ID,所述ID為N位元組長度;所述機頂盒根據預設的第一規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第一密鑰;所述機頂盒根據預設的第二規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第二密鑰;其中,所述M的值大於N的值。
8.如權利要求7所述的方法,其特徵在於,所述機頂盒預先設定第一密鑰和第二密鑰之後,從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案之前,還包括:當接收到用戶的錄製節目回放請求時,機頂盒檢測存儲設備中是否包含所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案;若檢測結果為是,所述機頂盒則執行讀取步驟。
9.一種機頂盒,其特徵在於,包括:元數據生成模組,用於當接收到用戶的節目錄製請求時,生成所請求錄製的節目的元數據檔案,所述元數據檔案包括:M位元組長度的第一隨機數;隨機數加密模組,用於採用預置的第一密鑰對所述元數據生成模組生成的元數據檔案中包括的第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數;元數據加密模組,用於採用預置的第二密鑰對所述元數據生成模組生成的元數據檔案進行哈希HASH加密,獲得所請求錄製的節目的錄製校驗檔案;TS流加密模組,用於將所述隨機數加密模組獲得的第二隨機數作為第三密鑰,對所請求錄製的節目的TS流進行對稱加密,獲得TS流檔案;錄製模組,用於將所述元數據生成模組生成的元數據檔案、所述元數據加密模組獲得的錄製校驗檔案及所述TS流加密模組獲得的TS流檔案寫入存儲設備中。
10.如權利要求9所述的機頂盒,其特徵在於,還包括:預置模組,用於預先設定第一密鑰和第二密鑰;所述預置模組包括:獲取單元,用於獲取當前機頂盒的ID,所述ID為N位元組長度;第一預置單元,用於根據預設的第一規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第一密鑰;第二預置單元,用於根據預設的第二規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第二密鑰;其中,所述M的值大於N的值。
11.如權利要求9或10所述的機頂盒,其特徵在於,所述元數據檔案包括:M位元組長度的第一隨機數;所述元數據生成模組包括:隨機數生成單元,用於當接收到用戶的節目錄製請求時,生成一個M位元組長度的第一隨機數;元數據生成單元,用於將所述隨機數生成單元生成的第一隨機數作為所請求錄製的節目的元數據檔案。
12.如權利要求9或10所述的機頂盒,其特徵在於,所述元數據檔案包括:M位元組長度的第一隨機數及所請求錄製的節目的失效時間;所述元數據生成模組包括:隨機數生成單元,用於當接收到用戶的節目錄製請求時,生成一個M位元組長度的第一隨機數;時間戳獲取單元,用於從伺服器下發的節目流中獲取當前時間戳;失效時間計算單元,用於根據所述時間戳獲取單元獲取的當前時間戳,及預設的有效時長,計算得到所請求錄製的節目的失效時間;元數據生成單元,用於對所述隨機數生成單元生成的第一隨機數和所述失效時間計算單元計算得到的所請求錄製的節目的失效時間進行封裝,形成所請求錄製的節目的元數據檔案。
13.一種機頂盒,其特徵在於,包括:讀取模組,用於當接收到用戶的錄製節目回放請求時,從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案;元數據加密模組,用於採用預置的第二密鑰對所述讀取模組讀取的元數據檔案進行HASH加密,獲得所請求回放的錄製節目的回放校驗檔案;匹配模組,用於將所述元數據加密模組獲得的回放檢驗檔案與所述讀取模組讀取的錄製校驗檔案進行匹配;解析模組,用於當所述匹配模組匹配成功時,解析所述讀取模組讀取的元數據檔案,獲得M位元組長度的第一隨機數;隨機數加密模組,用於採用預置的第一密鑰對所述解析模組獲得的第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數;TS流解密模組,用於將所述隨機數加密模組獲得的第二隨機數作為第三密鑰,對所述讀取模組讀取的TS流檔案進行解密,獲得所請求回放的錄製節目的TS流;回放模組,用於播放所述TS流解密模組解密後的TS流。
14.如權利要求13所述的機頂盒,其特徵在於,所述解析模組解析所述元數據檔案,還獲得所請求回放的錄製節目的失效時間;所述機頂盒還包括:時間獲取模組,用於獲取當前系統時間;比對模組,用於將所述時間獲取模組獲取的當前系統時間與所請求回放的錄製節目的失效時間相比對,若當前系統時間未達到所請求回放的錄製節目的失效時間,則通知所述隨機數加密模組對所述第一隨機數進行對稱加密。
15.如權利要求13或14所述的機頂盒,其特徵在於,還包括:檢測模組,用於檢測存儲設備中是否包含所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案,若檢測結果為是,則通知所述讀取模組進行檔案的讀取。
實施方式
操作內容
下面將結合《節目錄製方法、錄製節目的回放方法及機頂盒》實施例中的附圖,對《節目錄製方法、錄製節目的回放方法及機頂盒》實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是《節目錄製方法、錄製節目的回放方法及機頂盒》一部分實施例,而不是全部的實施例。基於《節目錄製方法、錄製節目的回放方法及機頂盒》中的實施例,該領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬於《節目錄製方法、錄製節目的回放方法及機頂盒》保護的範圍。
圖1為《節目錄製方法、錄製節目的回放方法及機頂盒》的機頂盒的第一實施例的結構示意圖;所述機頂盒包括:元數據生成模組101,用於當接收到用戶的節目錄製請求時,生成所請求錄製的節目的元數據檔案,所述元數據檔案包括:M位元組長度的第一隨機數。
用戶可通過按壓機頂盒遙控器上的PVR功能鍵或節目錄製功能鍵,向機頂盒傳送節目錄製請求。所述元數據生成模組101在接收到用戶的節目錄製請求時,生成所請求錄製的節目的元數據檔案,其中,該元數據檔案包括:M位元組長度的第一隨機數R。需要說明的是,所述元數據生成模組101可包括隨機數生成器,該隨機數生成器實時生成多個M位元組長度的隨機數,當接收到用戶的節目錄製請求時,所述元數據生成模組101則從中獲取一個M位元組長度的隨機數作為第一隨機數R。
具體實現中,所述元數據生成模組101還包括:所請求錄製的節目的失效時間Time_over。在節目錄製時,可設定所請求錄製的節目的有效時長,比如:設定有效時長為X小時,即所請求錄製的節目在X小時內有效,超過X小時,該節目過期,無法在任何一個機頂盒或其他媒體設備中播放;所請求錄製的節目的失效時間Time_over即為錄製時刻加上有效時長X小時得到。具體地,所述機頂盒從伺服器下發的節目碼流中獲取當前時間戳Time_cur,根據預設的有效時長X小時,計算得到所請求錄製的節目的失效時間Time_over為:Time_over=Time_cur+X;噹噹前系統時間到達Time_over時間時,所請求錄製的節目過期,無法再被任何一個機頂盒或其他媒體設備播放,用戶無法再觀看該請求錄製的節目。所述元數據生成模組101將第一隨機數R以及Time_over一併封裝,形成所請求錄製的節目的元數據檔案info.dat。
隨機數加密模組102,用於採用預置的第一密鑰對所述元數據生成模組101生成的元數據檔案中包括的第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數。
所述隨機數加密模組102可基於對稱加密算法,比如:AES(Advanced Encryption Standard,高級加密標準)算法、DES(Data Encryption Stardard,數據加密標準)算法等等,採用預置的第一密鑰K_a對所述第一隨機數據R進行加密,其中,K_a為當前機頂盒的ID根據預設的第一規則a進行數據填充後生成,加密後得到M位元組長度的第二隨機數K_r。
元數據加密模組103,用於採用預置的第二密鑰對所述元數據生成模組101生成的元數據檔案進行哈希HASH加密,獲得所請求錄製的節目的錄製校驗檔案。
所述元數據加密模組103可基於HASH加密算法,比如:MD5(Message-Digest Algorithm5,信息-摘要算法)、SHA-1(Secure Hash Algorithm1,安全散列算法)等等,採用預置的第二密鑰K_b對所述元數據檔案info.dat進行加密,獲得所請求錄製的節目的錄製校驗檔案info.hash。
TS流加密模組104,用於將所述隨機數加密模組102獲得的第二隨機數作為第三密鑰,對所請求錄製的節目的TS流進行對稱加密,獲得TS流檔案。
所述TS流加密模組104可基於對稱加密算法,比如:AES算法、DES算法等等,採用第二隨機數K_r作為密鑰對所請求錄製的節目的TS流進行加密,獲得TS流檔案program.ts。需要說明的是,由於第一隨機數R的隨機性,每次節目錄製時獲得的第二隨機數據K_r均不相同,從而保證每次節目錄製時所請求節目的TS流所基於的密鑰K_r均不相同,加大了破解難度,更有效地保證所請求錄製的節目的安全性。
錄製模組105,用於將所述元數據生成模組101生成的元數據檔案、所述元數據加密模組103獲得的錄製校驗檔案及所述TS流加密模組104獲得的TS流檔案寫入存儲設備中。
所述存儲設備可以為用戶對所請求錄製的節目的目的存儲設備,包括:移動硬碟、隨身碟等,在用戶請求節目錄製時,所述存儲設備與所述機頂盒相連線。所述錄製模組105將所請求錄製的節目的元數據檔案info.dat、錄製校驗檔案info.hash以及TS流檔案program.ts寫入存儲設備中,即完成了對用戶的節目錄製請求的回響,完成了節目的錄製過程。
《節目錄製方法、錄製節目的回放方法及機頂盒》實施例在節目錄製時,能夠防止對錄製的節目的隨意拷貝,對錄製的節目的著作權實現了有效地保護。
為了更清楚地說明《節目錄製方法、錄製節目的回放方法及機頂盒》,下面將對上述的元數據生成模組101進行詳細介紹。
參見圖2,為圖1所示的元數據生成模組的第一實施例的結構示意圖;該實施例中,所述元數據生成模組101生成的元數據檔案info.dat僅包括:M位元組長度的第一隨機數R。所述元數據生成模組101包括:隨機數生成單元11,用於當接收到用戶的節目錄製請求時,生成一個M位元組長度的第一隨機數。
如前述,用戶可通過按壓機頂盒遙控器上的PVR功能鍵或節目錄製功能鍵,向機頂盒傳送節目錄製請求。所述隨機數生成單元11可包括隨機數生成器,該隨機數生成器實時生成多個M位元組長度的隨機數,當接收到用戶的節目錄製請求時,所述隨機數生成單元11則從中獲取一個M位元組長度的隨機數作為第一隨機數R。
元數據生成單元12,用於將所述隨機數生成單元11生成的第一隨機數作為所請求錄製的節目的元數據檔案。
所述元數據生成單元12將所述隨機數生成單元11獲得的第一隨機數R作為所請求錄製的節目的元數據檔案info.dat。
參見圖3,為圖1所示的元數據生成模組的第二實施例的結構示意圖;該實施例中,所述元數據生成模組101生成的元數據檔案info.dat包括:M位元組長度的第一隨機數R及所請求錄製的節目的失效時間Time_over。所述元數據生成模組101包括:
隨機數生成單元13,用於當接收到用戶的節目錄製請求時,生成一個M位元組長度的第一隨機數。
該實施例的所述隨機數生成單元13與上一實施例的隨機數生成單元11可以為同一單元,其生成第一隨機數R的過程可參照上一實施例所述,在此不贅述。
時間戳獲取單元14,用於從伺服器下發的節目流中獲取當前時間戳。
在節目錄製時,可設定所請求錄製的節目的有效時長,比如:設定有效時長為X小時,即所請求錄製的節目在X小時內有效,超過X小時,該節目過期,無法在任何一個機頂盒或其他媒體設備中播放;所請求錄製的節目的失效時間Time_over即為錄製時刻加上有效時長X小時得到。具體地,所述時間戳獲取單元14從伺服器下發的節目碼流中獲取當前時間戳Time_cur,該當前時間戳Time_cur則為錄製時刻,即為所請求錄製的節目的失效時間Time_over的起算時間。
失效時間計算單元15,用於根據所述時間戳獲取單元14獲取的當前時間戳,及預設的有效時長,計算得到所請求錄製的節目的失效時間。
所述時間戳獲取單元14獲取的當前時間戳Time_cur,根據預設的有效時長X小時,所述失效時間計算單元15計算得到所請求錄製的節目的失效時間為:Time_over=Time_cur+X。噹噹前系統時間到達Time_over時間時,所請求錄製的節目過期,無法再被任何一個機頂盒或其他媒體設備播放,用戶也無法再觀看該請求錄製的節目。
元數據生成單元16,用於對所述隨機數生成單元13生成的第一隨機數和所述失效時間計算單元15計算得到的所請求錄製的節目的失效時間進行封裝,形成所請求錄製的節目的元數據檔案。
所述元數據生成單元16將第一隨機數R以及Time_over一併封裝,形成所請求錄製的節目的元數據檔案info.dat。需要說明的是,該實施例的所述元數據生成16與上一實施例的元數據生成單元12可以為兩個獨立的單元,也可以合併為同一單元。
參見圖4,為《節目錄製方法、錄製節目的回放方法及機頂盒》的機頂盒的第二實施例的結構示意圖;與圖1所示實施例相同,所述機頂盒包括:元數據生成模組101、隨機數加密模組102、元數據加密模組103、TS流加密模組104及錄製模組105。該實施例中,所述機頂盒還包括:預置模組106,用於預先設定第一密鑰和第二密鑰。具體實現中,所述第一密鑰K_a為當前機頂盒的ID根據預設的第一規則a進行數據填充後生成,所述第二密鑰K_b為當前機頂盒的ID根據預設的第二規則b進行數據填充後生成。
請一併參見圖5,為圖4所示的預置模組的實施例的結構示意圖;所述預置模組106包括:獲取單元61,用於獲取當前機頂盒的ID,所述ID為N位元組長度。
每一個機頂盒唯一對應一個ID號,該ID號用於對機頂盒進行唯一標識;具體地,該ID號在機頂盒出廠時,即被固化於機頂盒的存儲器中。在節目錄製時,進行所請求節目錄製的機頂盒即為當前機頂盒。所述獲取單元61從當前機頂盒的存儲器中,獲取當前機頂盒的ID號。需要說明的是,ID號為N位元組長度,其N的具體取值可根據實際需要或具體規範確定。
第一預置單元62,用於根據預設的第一規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第一密鑰。
所述第一預置單元62根據預設的第一規則a對當前機頂盒的ID進行數據填充,生成M位元組長度的第一密鑰K_a,其中,所述M的值大於N的值,M的取值可根據實際需要進行確定。需要說明的是,第一規則a可由錄製的當前機頂盒與回放機頂盒相互協商確定,或者由節目運營商根據實際需要進行確定。比如:規則a可設為“在ID之前填充數據|00112233|,則所述第一預置單元62生成的第一密鑰K_a為:00112233ID。當規則a為其他情況時可類似分析,在此不贅述。
第二預置單元63,用於根據預設的第二規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第二密鑰。
所述第二預置單元63根據預設的第二規則a對當前機頂盒的ID進行數據填充,生成M位元組長度的第二密鑰K_b,其中,所述M的值大於N的值,M的取值可根據實際需要進行確定。需要說明的是,第二規則b可由錄製的當前機頂盒與回放機頂盒相互協商確定,或者由節目運營商根據實際需要進行確定。比如:規則b可設為“在ID之後填充數據|44556677|,則所述第二預置單元63生成的第二密鑰K_b為:ID44556677。當規則b為其他情況時可類似分析,在此不贅述。
需要說明的是,《節目錄製方法、錄製節目的回放方法及機頂盒》實施例中在節目錄製時,將所請求錄製的節目通過預置的第一密鑰K_a和第二密鑰K_b與當前機頂盒相互綁定,與當前機頂盒相綁定的節目僅能在當前機頂盒中進行回放,如果將錄製的節目拷貝到另一台機頂盒、或電腦、攜帶型媒體播放器中,由於每個機頂盒的ID、當前機頂盒與電腦、攜帶型媒體播放器之間的ID均不相同,採用相同的規則所獲得的K_a和K_b也均不相同,拷貝後的節目將無法被解密,從而無法實現播放,有效地防止錄製的節目的隨意拷貝,有力地保護了錄製的節目的著作權。
《節目錄製方法、錄製節目的回放方法及機頂盒》實施例在節目錄製時,能夠防止對錄製的節目的隨意拷貝,對錄製的節目的著作權實現了有效地保護。
參見圖6,為《節目錄製方法、錄製節目的回放方法及機頂盒》的機頂盒的第三實施例的結構示意圖;所述機頂盒包括:讀取模組201,用於當接收到用戶的錄製節目回放請求時,從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案。
用戶可通過按壓機頂盒遙控器上的錄製回放功能鍵,向機頂盒傳送錄製節目回放請求,其中,所請求回放的錄製節目為經圖1或圖4所示實施例的機頂盒進行錄製的節目。所述讀取模組201當接收到用戶的錄製節目回放請求時,從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案。可以理解的是,在對所請求回放的錄製節目進行回放時,進行回放的機頂盒為當前機頂盒。
元數據加密模組202,用於採用預置的第二密鑰對所述讀取模組201讀取的元數據檔案進行HASH加密,獲得所請求回放的錄製節目的回放校驗檔案。
對錄製節目進行回放的機頂盒對第二密鑰K_b的預置過程與圖5所示實施例的節目錄製時的機頂盒的預置模組106的預置過程相同,在此不贅述。需要說明的是,若對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者預置的第二密鑰K_b相同,否則,二者預置的第二密鑰K_b不同。所述元數據加密模組202可基於HASH加密算法,比如:MD5、SHA-1等等,採用預置的第二密鑰K_b對所述讀取模組201讀取的元數據檔案info.dat進行加密,獲得所請求回放的錄製節目的回放校驗檔案info_to_verify.hash。該實施例的所述元數據加密模組202與圖1所示實施例的所述元數據加密模組103所採用的加密算法及加密過程相同,在此不贅述。可以理解的是,若對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者預置的第二密鑰K_b相同,加密後獲得的回放校驗檔案info_to_verify.hash與錄製校驗檔案info.hash也必定完全一致;否則,加密後獲得的回放校驗檔案info_to_verify.hash與錄製校驗檔案info.hash必定不完全一致。
匹配模組203,用於將所述元數據加密模組202獲得的回放檢驗檔案與所述讀取模組讀取的錄製校驗檔案進行匹配。
所述匹配模組203將所述元數據加密模組202獲得的回放檢驗檔案info_to_verify.hash與所述讀取模組201讀取的錄製校驗檔案info.hash進行匹配,其匹配的具體過程為:判斷info_to_verify.hash與info.hash是否完全一致,若二者完全一致,則匹配成功;若二者不完全一致,則匹配失敗,此時對錄製節目進行回放的當前機頂盒認為所請求回放的錄製節目的元數據檔案info.dat已被惡意篡改,禁止對所請求回放的錄製節目進行回放,停止執行回放的後續步驟。
解析模組204,用於當所述匹配模組203匹配成功時,解析所述讀取模組201讀取的元數據檔案,獲得M位元組長度的第一隨機數。
如前述,若所述元數據檔案info.dat僅包括:M位元組長度的第一隨機數R,所述解析模組204則從info.dat檔案中提取第一隨機數據R;若所述元數據檔案info.dat包括:M位元組長度的第一隨機數R和所請求回放的錄製節目的失效時間Time_over,所述解析模組204則對info.dat檔案進行解封裝,從中分離出第一隨機數R及Time_over。
隨機數加密模組205,用於採用預置的第一密鑰對所述解析模組204獲得的第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數。
對錄製節目進行回放的當前機頂盒對第一密鑰K_a的預置過程與圖5所示實施例的節目錄製時的機頂盒的預置模組106的預置過程相同,在此不贅述。需要說明的是,若對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者預置的第一密鑰K_a相同,否則,二者預置的第二密鑰K_a不同。所述隨機數加密模組205可基於對稱加密算法,比如:AES算法、DES算法等等,採用預置的第一密鑰K_a對所述第一隨機數R進行加密,加密後得到M位元組長度的第二隨機數K_r。該實施例的所述隨機數加密模組205與圖1所示實施例的所述隨機數加密模組102所採用的加密算法及加密過程相同,在此不贅述。可以理解的是,若對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者預置的第一密鑰K_a相同,加密後獲得的第二隨機數K_r也必定相同;否則,加密後獲得的第二隨機數K_r必定不同。
TS流解密模組206,用於將所述隨機數加密模組205獲得的第二隨機數作為第三密鑰,對所述讀取模組201讀取的TS流檔案進行解密,獲得所請求回放的錄製節目的TS流。
所述TS流解密模組206採用第二隨機數K_r作為密鑰,對TS流檔案進行解密,獲得所請求回放的錄製節目的TS流。所述TS流解密模組206對所請求回放的錄製節目的TS流檔案的解密過程與圖1所示實施例中在節目錄製時,所述TS流加密模組104對所請求錄製的節目的TS流進行加密的過程互為相逆。可以理解的是,若對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者的第二隨機數K_r相同,所述TS流解密模組206可成功解密獲得TS流;否則,解密失敗,無法獲得所請求回放的錄製節目的TS流。
回放模組207,用於播放所述TS流解密模組206解密後的TS流。具體實現中,所述回放模組207向用戶播放解密後的TS流,用戶即可觀看所請求回放的錄製節目。
需要說明的是,每一個機頂盒唯一對應一個ID,經過相同的第一規則a和第二規則b後,每一個機頂盒均唯一對應一個K_a和K_b。若該實施例中對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者的K_a和K_b均相同,回放過程中獲得的回放檢驗檔案info_to_verify.hash與節目錄製過程中獲得的錄製校驗檔案info.hash完全一致;回放過程中使用的K_r與節目錄製時使用的K_r完全相同,當前機頂盒可成功回放對所請求回放的錄製節目,使用戶可觀看自己所請求回放的錄製節目。若該實施例中對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒並非同一機頂盒,則二者的K_a和K_b均相同,回放過程中獲得的回放檢驗檔案info_to_verify.hash與節目錄製過程中獲得的錄製校驗檔案info.hash不完全一致;回放過程中使用的K_r與節目錄製時使用的K_r也不相同,當前機頂盒對所請求回放的錄製節目的回放失敗,用戶無法觀看自己所請求回放的錄製節目。
可以理解的是,上述僅為舉例,當採用電腦或攜帶型媒體播放器等其他媒體設備對所請求回放的錄製節目進行回放時,其回放過程可類似分析,在此不贅述。
《節目錄製方法、錄製節目的回放方法及機頂盒》實施例對錄製節目進行回放時,對當前機頂盒的許可權驗證,從而防止錄製節目被隨意播放,保護了錄製節目的著作權,保證了節目的安全性。
參見圖7,為《節目錄製方法、錄製節目的回放方法及機頂盒》的機頂盒的第四實施例的結構示意圖;與圖6所示實施例相同,所述機頂盒包括:讀取模組201、元數據加密模組202、匹配模組203、解析模組204、隨機數加密模組205、TS流解密模組206及回放模組207。該實施例中,所述機頂盒還包括:時間獲取模組208,用於獲取當前系統時間。
如前述,由於節目錄製時可設定錄製的節目的有效時長X小時,因此,所請求回放的錄製節目可能存在失效時間Time_over,所述時間獲取模組208用於獲取當前機頂盒的當前系統時間T。
比對模組209,用於將所述時間獲取模組208獲取的當前系統時間與所請求回放的錄製節目的失效時間相比對,若當前系統時間未達到所請求回放的錄製節目的失效時間,則通知所述隨機數加密模組205對所述第一隨機數進行對稱加密。
所述比對模組209將當前系統T與所請求回放的錄製節目的失效時間Time_over相比對,若T已到達Time_over,則認為所請求回放的錄製節目已過期,禁止回放;若T未到達Time_over,則認為所請求回放的錄製節目未過期,可以進行回放,所述比對模組209則通知隨機數加密模組205進行後續操作。
進一步參見圖7,所述機頂盒還包括:檢測模組210,用於檢測存儲設備中是否包含所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案,若檢測結果為是,則通知所述讀取模組201進行檔案的讀取。
所述檢測模組210在所述讀取模組201對檔案進行讀取之前,檢測存儲設備中所請求回放的錄製節目是否完整,即檢測存儲設備中是否包含所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案,若三個檔案中任意一個或多個缺失,則認為所請求回放的錄製節目的完整性被破壞,禁止回放;僅當三個檔案均完整存在時,才通知所述讀取模組201進行檔案的讀取操作。該實施例在對錄製節目讀取之前進行完整性檢測,可防止錄製節目被隨意拷貝,保證錄製節目的安全性。
實施案例
《節目錄製方法、錄製節目的回放方法及機頂盒》實施例對錄製節目進行回放時,對當前機頂盒的許可權驗證,從而防止錄製節目被隨意播放,保護了錄製節目的著作權,保證了節目的安全性。
為了更清楚地說明《節目錄製方法、錄製節目的回放方法及機頂盒》,下面將對《節目錄製方法、錄製節目的回放方法及機頂盒》的節目錄製方法進行詳細介紹。
參見圖8,為《節目錄製方法、錄製節目的回放方法及機頂盒》的節目錄製方法的第一實施例的流程圖;所述方法包括:
S101,當接收到用戶的節目錄製請求時,機頂盒生成所請求錄製的節目的元數據檔案,所述元數據檔案包括:M位元組長度的第一隨機數。
用戶可通過按壓機頂盒遙控器上的PVR功能鍵或節目錄製功能鍵,向機頂盒傳送節目錄製請求。所述S101在接收到用戶的節目錄製請求時,生成所請求錄製的節目的元數據檔案info.dat。
請一併參見圖9,為圖8所示的步驟S101的第一實施例的具體流程圖;該實施例中,元數據檔案info.dat僅包括:M位元組長度的第一隨機數R。步驟S101包括:S11,當接收到用戶的節目錄製請求時,機頂盒生成一個M位元組長度的第一隨機數。
所述S11可採用隨機數生成器,該隨機數生成器實時生成多個M位元組長度的隨機數,當接收到用戶的節目錄製請求時,所述S11則從中獲取一個M位元組長度的隨機數作為第一隨機數R。
S12,所述機頂盒將所述M位元組長度的第一隨機數作為所請求錄製的節目的元數據檔案。
所述機頂盒執行步驟S12時,將所述S11獲得的第一隨機數R作為所請求錄製的節目的元數據檔案info.dat。
請一併參見圖10,為圖8所示的步驟S101的第二實施例的具體流程圖;該實施例中,元數據檔案info.dat包括:M位元組長度的第一隨機數R及所請求錄製的節目的失效時間Time_over。所述S101包括:S13,當接收到用戶的節目錄製請求時,機頂盒生成一個M位元組長度的第一隨機數。
該實施例的所述S13與上一實施例的S13步驟相同,在此不贅述。
S14,所述機頂盒從伺服器下發的節目流中獲取當前時間戳。
在節目錄製時,可設定所請求錄製的節目的有效時長,比如:設定有效時長為X小時,即所請求錄製的節目在X小時內有效,超過X小時,該節目過期,無法在任何一個機頂盒或其他媒體設備中播放;所請求錄製的節目的失效時間Time_over即為錄製時刻加上有效時長X小時得到。具體地,所述S14從伺服器下發的節目碼流中獲取當前時間戳Time_cur,該當前時間戳Time_cur則為錄製時刻,即為所請求錄製的節目的失效時間Time_over的起算時間。
S15,所述機頂盒根據所述當前時間戳及預設的有效時長,計算得到所請求錄製的節目的失效時間。
所述S14獲取的當前時間戳Time_cur,根據預設的有效時長X小時,所述S15計算得到所請求錄製的節目的失效時間為:Time_over=Time_cur+X。噹噹前系統時間到達Time_over時間時,所請求錄製的節目過期,無法再被任何一個機頂盒或其他媒體設備播放,用戶也無法再觀看該請求錄製的節目。
S16,所述機頂盒對所述第一隨機數和所請求錄製的節目的失效時間進行封裝,形成所請求錄製的節目的元數據檔案。
所述S16將第一隨機數R以及Time_over一併封裝,形成所請求錄製的節目的元數據檔案info.dat。
S102,所述機頂盒採用預置的第一密鑰對所述第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數。
所述S102可基於對稱加密算法,比如:AES算法、DES算法等等,採用預置的第一密鑰K_a對所述第一隨機數據R進行加密,其中,K_a為當前機頂盒的ID根據預設的第一規則a進行數據填充後生成,加密後得到M位元組長度的第二隨機數K_r。
S103,所述機頂盒採用預置的第二密鑰對所述元數據檔案進行哈希HASH加密,獲得所請求錄製的節目的錄製校驗檔案。
所述S103可基於HASH加密算法,比如:MD5、SHA-1等等,採用預置的第二密鑰K_b對所述元數據檔案info.dat進行加密,獲得所請求錄製的節目的錄製校驗檔案info.hash。
S104,所述機頂盒將所述第二隨機數作為第三密鑰,對所請求錄製的節目的傳輸流TS流進行對稱加密,獲得TS流檔案。
所述S104可基於對稱加密算法,比如:AES算法、DES算法等等,採用第二隨機數K_r作為密鑰對所請求錄製的節目的TS流進行加密,獲得TS流檔案program.ts。需要說明的是,由於第一隨機數R的隨機性,每次節目錄製時獲得的第二隨機數據K_r均不相同,從而保證每次節目錄製時所請求節目的TS流所基於的密鑰K_r均不相同,加大了破解難度,更有效地保證所請求錄製的節目的安全性。
S105,所述機頂盒將所述元數據檔案、錄製校驗檔案及TS流檔案寫入存儲設備中。
所述存儲設備可以為用戶請求錄製的存儲設備,包括:移動硬碟、隨身碟等,在用戶請求節目錄製時,所述存儲設備與所述機頂盒相連線。所述S105將所請求錄製的節目的元數據檔案info.dat、錄製校驗檔案info.hash以及TS流檔案program.ts寫入存儲設備中,即完成了對用戶的節目錄製請求的回響,完成了節目的錄製過程。
《節目錄製方法、錄製節目的回放方法及機頂盒》實施例在節目錄製時,能夠防止對錄製的節目的隨意拷貝,對錄製的節目的著作權實現了有效地保護。
參見圖11,為《節目錄製方法、錄製節目的回放方法及機頂盒》的節目錄製方法的第二實施例的流程圖;所述方法包括:
S201,機頂盒預先設定第一密鑰和第二密鑰。
參見圖12,為圖11所示的步驟S201的具體流程圖;所述S201包括:S21,機頂盒獲取當前機頂盒的ID,所述ID為N位元組長度。
每一個機頂盒唯一對應一個ID號,該ID號用於對機頂盒進行唯一標識;具體地,該ID號在機頂盒出廠時,即被固化於機頂盒的存儲器中。在節目錄製時,進行所請求節目錄製的機頂盒即為當前機頂盒。當前機頂盒執行所述S21,從當前機頂盒的存儲器中,獲取當前機頂盒的ID號。需要說明的是,ID號為N位元組長度,其N的具體取值可根據實際需要或具體規範確定。
S22,所述機頂盒根據預設的第一規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第一密鑰。
所述S22根據預設的第一規則a對當前機頂盒的ID進行數據填充,生成M位元組長度的第一密鑰K_a,其中,所述M的值大於N的值,M的取值可根據實際需要進行確定。需要說明的是,第一規則a可由錄製的當前機頂盒與回放機頂盒相互協商確定,或者由節目運營商根據實際需要進行確定。比如:規則a可設為“在ID之前填充數據|00112233|,則所述S22生成的第一密鑰K_a為:00112233ID。當規則a為其他情況時可類似分析,在此不贅述。
S23,所述機頂盒根據預設的第二規則對當前機頂盒的ID進行數據填充,生成M位元組長度的第二密鑰;所述S23根據預設的第二規則a對當前機頂盒的ID進行數據填充,生成M位元組長度的第二密鑰K_b,其中,所述M的值大於N的值,M的取值可根據實際需要進行確定。需要說明的是,第二規則b可由錄製的當前機頂盒與回放機頂盒相互協商確定,或者由節目運營商根據實際需要進行確定。比如:規則b可設為“在ID之後填充數據|44556677|,則所述S23生成的第二密鑰K_b為:ID44556677。當規則b為其他情況時可類似分析,在此不贅述。
S202,當接收到用戶的節目錄製請求時,機頂盒生成所請求錄製的節目的元數據檔案,所述元數據檔案包括:M位元組長度的第一隨機數。
S203,所述機頂盒採用預置的第一密鑰對所述第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數。
S204,所述機頂盒採用預置的第二密鑰對所述元數據檔案進行哈希HASH加密,獲得所請求錄製的節目的錄製校驗檔案。
S205,所述機頂盒將所述第二隨機數作為第三密鑰,對所請求錄製的節目的傳輸流TS流進行對稱加密,獲得TS流檔案。
S206,所述機頂盒將所述元數據檔案、錄製校驗檔案及TS流檔案寫入存儲設備中。
該實施例中,所述S202-S206與圖10所示實施例的S101-S105步驟相同,在此不贅述。
《節目錄製方法、錄製節目的回放方法及機頂盒》實施例在節目錄製時,能夠防止對錄製的節目的隨意拷貝,對錄製的節目的著作權實現了有效地保護。
為了更清楚地說明《節目錄製方法、錄製節目的回放方法及機頂盒》,下面將對《節目錄製方法、錄製節目的回放方法及機頂盒》的錄製節目的回放方法進行詳細介紹。
參見圖13,為《節目錄製方法、錄製節目的回放方法及機頂盒》的錄製節目的回放方法的第一實施例的流程圖;所述方法包括:
S301,當接收到用戶的錄製節目回放請求時,機頂盒從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案。
用戶可通過按壓機頂盒遙控器上的錄製回放功能鍵,向機頂盒傳送錄製節目回放請求,其中,所請求回放的錄製節目為經圖10或圖11所示實施例的方法所錄製的節目。所述S301當接收到用戶的錄製節目回放請求時,從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案。可以理解的是,在對所請求回放的錄製節目進行回放時,進行回放的機頂盒為當前機頂盒。
S302,所述機頂盒採用預置的第二密鑰對所述元數據檔案進行HASH加密,獲得所請求回放的錄製節目的回放校驗檔案。
對錄製節目進行回放的機頂盒對第二密鑰K_b的預置過程與圖11所示實施例的所述S201的預置過程相同,在此不贅述。需要說明的是,若對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者預置的第二密鑰K_b相同,否則,二者預置的第二密鑰K_b不同。所述S302可基於HASH加密算法,比如:MD5、SHA-1等等,採用預置的第二密鑰K_b對所述讀取的元數據檔案info.dat進行加密,獲得所請求回放的錄製節目的回放校驗檔案info_to_verify.hash。該實施例的所述S302與圖10所示實施例的所述S103所採用的加密算法及加密過程相同,在此不贅述。可以理解的是,若對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者預置的第二密鑰K_b相同,加密後獲得的回放校驗檔案info_to_verify.hash與錄製校驗檔案info.hash也必定完全一致;否則,加密後獲得的回放校驗檔案info_to_verify.hash與錄製校驗檔案info.hash必定不完全一致。
S303,所述機頂盒將所述回放檢驗檔案與讀取的所述錄製校驗檔案進行匹配。
所述S303將所述S302獲得的回放檢驗檔案info_to_verify.hash與所述讀取的錄製校驗檔案info.hash進行匹配,其匹配的具體過程為:判斷info_to_verify.hash與info.hash是否完全一致,若二者完全一致,則匹配成功;若二者不完全一致,則匹配失敗,此時對錄製節目進行回放的當前機頂盒認為所請求回放的錄製節目的元數據檔案info.dat已被惡意篡改,禁止對所請求回放的錄製節目進行回放,停止執行回放的後續步驟。
S304,判斷是否匹配成功,若匹配成功,轉入S305;否則,結束。
S305,所述機頂盒解析所述元數據檔案,獲得M位元組長度的第一隨機數。
如前述,所述元數據檔案info.dat包括:M位元組長度的第一隨機數R,所述S305則從info.dat檔案中提取第一隨機數據R。
S306,所述機頂盒採用預置的第一密鑰對所述第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數。
對錄製節目進行回放的當前機頂盒對第一密鑰K_a的預置過程與圖11所示實施例所述S201的預置過程相同,在此不贅述。需要說明的是,若對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者預置的第一密鑰K_a相同,否則,二者預置的第二密鑰K_a不同。所述S306可基於對稱加密算法,比如:AES算法、DES算法等等,採用預置的第一密鑰K_a對所述第一隨機數R進行加密,加密後得到M位元組長度的第二隨機數K_r。該實施例的所述S306與圖10所示實施例的所述S102所採用的加密算法及加密過程相同,在此不贅述。可以理解的是,若對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者預置的第一密鑰K_a相同,加密後獲得的第二隨機數K_r也必定相同;否則,加密後獲得的第二隨機數K_r必定不同。
S307,所述機頂盒將所述第二隨機數作為第三密鑰,對所述TS流檔案進行對稱解密,獲得所請求回放的錄製節目的TS流。
所述S307採用第二隨機數K_r作為密鑰,對TS流檔案進行解密,獲得所請求回放的錄製節目的TS流。所述S307對所請求回放的錄製節目的TS流檔案的解密過程與圖10所示實施例中在節目錄製時,所述S104對所請求錄製的節目的TS流進行加密的過程互為相逆。可以理解的是,若對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者的第二隨機數K_r相同,所述S307可成功解密獲得TS流;否則,解密失敗,無法獲得所請求回放的錄製節目的TS流。
S308,所述機頂盒播放所請求回放的錄製節目的TS流。
具體實現中,所述S308向用戶播放解密後的TS流,用戶即可觀看所請求回放的錄製節目。
需要說明的是,每一個機頂盒唯一對應一個ID,經過相同的第一規則a和第二規則b後,每一個機頂盒均唯一對應一個K_a和K_b。若該實施例中對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒為同一機頂盒,則二者的K_a和K_b均相同,回放過程中獲得的回放檢驗檔案info_to_verify.hash與節目錄製過程中獲得的錄製校驗檔案info.hash完全一致;回放過程中使用的K_r與節目錄製時使用的K_r完全相同,當前機頂盒可成功回放對所請求回放的錄製節目,使用戶可觀看自己所請求回放的錄製節目。若該實施例中對錄製節目進行回放的當前機頂盒與節目錄製時的機頂盒並非同一機頂盒,則二者的K_a和K_b均相同,回放過程中獲得的回放檢驗檔案info_to_verify.hash與節目錄製過程中獲得的錄製校驗檔案info.hash不完全一致;回放過程中使用的K_r與節目錄製時使用的K_r也不相同,當前機頂盒對所請求回放的錄製節目的回放失敗,用戶無法觀看自己所請求回放的錄製節目。
《節目錄製方法、錄製節目的回放方法及機頂盒》實施例對錄製節目進行回放時,對當前機頂盒的許可權驗證,從而防止錄製節目被隨意播放,保護了錄製節目的著作權,保證了節目的安全性。
參見圖14,為《節目錄製方法、錄製節目的回放方法及機頂盒》的錄製節目的回放方法的第二實施例的流程圖。所述方法包括:
S401,機頂盒預先設定第一密鑰和第二密鑰。
該實施例中,所述S401與圖11所示實施例的S201步驟相同,在此不贅述。
S402,當接收到用戶的錄製節目回放請求時,機頂盒檢測存儲設備中是否包含所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案;若檢測結果為是,轉入S403;否則,結束。
所述S402檢測存儲設備中所請求回放的錄製節目是否完整,即檢測存儲設備中是否包含所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案,若三個檔案中任意一個或多個缺失,則認為所請求回放的錄製節目的完整性被破壞,禁止回放;僅當三個檔案均完整存在(即檢測結果為是)時,轉入S403。本步驟對完整性的檢測,可防止錄製節目被隨意拷貝,保證錄製節目的安全性。
S403,所述機頂盒從存儲設備中讀取所請求回放的錄製節目的元數據檔案、錄製校驗檔案及TS流檔案。
S404,所述機頂盒採用預置的第二密鑰對所述元數據檔案進行HASH加密,獲得所請求回放的錄製節目的回放校驗檔案。
S405,所述機頂盒將所述回放檢驗檔案與讀取的所述錄製校驗檔案進行匹配。
S406,判斷是否匹配成功,若判斷結果為是,轉入S407;否則,結束。
該實施例中,所述S402-S406與圖13所示實施例的S301-S304步驟相同,在此不贅述。
S407,所述機頂盒解析所述元數據檔案,獲得M位元組長度的第一隨機數及所請求回放的錄製節目的失效時間。
所述元數據檔案info.dat包括:M位元組長度的第一隨機數R和所請求回放的錄製節目的失效時間Time_over,所述S407則對info.dat檔案進行解封裝,從中分離出第一隨機數R及Time_over。
S408,所述機頂盒獲取當前系統時間。
如前述,由於節目錄製時可設定錄製的節目的有效時長X小時,因此,所請求回放的錄製節目可能存在失效時間Time_over,所述S408則獲取當前機頂盒的當前系統時間T。
S409,所述機頂盒將當前系統時間與所請求回放的錄製節目的失效時間相比對,判斷當前系統時間是否達到所請求回放的錄製節目的失效時間,若判斷結果為否,轉入S410;否則,結束。
所述S409將當前系統T與所請求回放的錄製節目的失效時間Time_over相比對,若T已到達Time_over,則認為所請求回放的錄製節目已過期,禁止回放,流程結束;若T未到達Time_over,則認為所請求回放的錄製節目未過期,可以進行回放,轉入S410。
S410,所述機頂盒採用預置的第一密鑰對所述第一隨機數進行對稱加密,獲得M位元組長度的第二隨機數。
S411,所述機頂盒將所述第二隨機數作為第三密鑰,對所述TS流檔案進行對稱解密,獲得所請求回放的錄製節目的TS流。
S412,所述機頂盒播放所請求回放的錄製節目的TS流。
該實施例中,所述S410-S412與圖13所示實施例的S305-S307的步驟相同,在此不贅述。
《節目錄製方法、錄製節目的回放方法及機頂盒》實施例對錄製節目進行回放時,對當前機頂盒的許可權驗證,從而防止錄製節目被隨意播放,保護了錄製節目的著作權,保證了節目的安全性。
通過上述實施例的描述,《節目錄製方法、錄製節目的回放方法及機頂盒》實施例在節目錄製時,採用預置的第二密鑰對元數據檔案進行加密,採用預置的第一密鑰對第一隨機數進行加密得到第三密鑰,最後採用第三密鑰對請求錄製的節目的TS流進行加密;在節目錄製時進行三次加密操作,可有力保護請求錄製的節目的安全性;另外,對所請求錄製的節目的TS流利用第一隨機數加密後得到的第二隨機數作為密鑰進行加密,隨機數的隨機性可保證每次節目錄製時的密鑰均不相同,從而加大了破解難度,更有效地保證請求錄製的節目的安全性;另外,《節目錄製方法、錄製節目的回放方法及機頂盒》實施例對錄製節目進行回放時,由當前機頂盒採用預置的第一密鑰和第二密鑰進行相應的加解密操作來實現對錄製節目的回放,由於第一密鑰和第二密鑰均由當前機頂盒的ID依據預設的規則形成,若當前機頂盒並非節目錄製時的機頂盒,則二者的ID不同,當前機頂盒無法獲得正確的密鑰來進行回放操作,此處即可實現對當前機頂盒的許可權驗證,從而防止錄製節目被隨意播放,保護了錄製節目的著作權,保證了節目的安全性。
該領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,是可以通過電腦程式來指令相關的硬體來完成,所述的程式可存儲於一計算機可讀取存儲介質中,該程式在執行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁碟、光碟、唯讀存儲記憶體(Read-Only Memory,ROM)或隨機存儲記憶體(Random Access Memory,RAM)等。
以上所揭露的僅為《節目錄製方法、錄製節目的回放方法及機頂盒》較佳實施例而已,當然不能以此來限定《節目錄製方法、錄製節目的回放方法及機頂盒》之權利範圍,該領域普通技術人員可以理解實現上述實施例的全部或部分流程,並依《節目錄製方法、錄製節目的回放方法及機頂盒》權利要求所作的等同變化,仍屬於發明所涵蓋的範圍。
榮譽表彰
2018年12月20日,《節目錄製方法、錄製節目的回放方法及機頂盒》獲得第二十屆中國專利優秀獎。