郭麗霞
(中國聯合網絡通信有限公司石家莊市分公司,河北石家莊050011)
數字權限管理(Digital Right Management,DRM)[1]系統是以保護數字內容知識產權為目的的,其系統模型由3部分構成[2]:內容服務器、許可證服務器和客戶端。在視頻DRM系統框架下,視頻流分配和使用的權限控制算法是DRM系統需要解決的關鍵問題[2]。
可分級視頻編碼(Scalable video coding,SVC)[3]是適合于網絡視頻流傳輸的視頻編碼算法。目前提出的基于RAS的加密算法和選擇式加密算法存在一定量的數學運算[4],增加了視頻傳輸系統的額外開銷,提出的層次化的SVC碼流的權限控制方法方案[5]沒有很好考慮到SVC碼流在網絡中傳輸的因素,不能很好地適用于實際的DRM系統中。網絡編碼[6]技術通過在中間節點對收到的多個信息進行線性編碼的方式給DRM系統中權限控制算法提供了新的思路。隨機線性網絡編碼[6](Random Linear Network Coding,RLNC)在每條網絡鏈路上隨機的產生局部編碼向量。已有的基于RLNC算法沒有結合DRM系統的框架說明權限控制的方法[7],仍需研究DRM機制下權限控制方法。
為此,在RLNC的基礎上,通過基于全局編碼向量(Global Encoding Kernel,GEK)的加密和認證證書相結合的方式,提出了一種SVC視頻流的權限控制方法。
在DRM系統中,為了保護信息的安全性,避免非法者獲取帶有知識產權的數字視頻內容,必須在傳輸前對數字內容進行加密,在客戶端采用合理的分配方式控制視頻內容的分配。
RLNC算法中,網絡中的每條邊隨機地產生局部編碼向量(Local Encoding Kernel,LEK),每個節點對收到的多個信息流進行線性運算后生成新的信息,LEK參與線性運算并傳輸到下個節點。最終,目的節點收到的數據包中包括2部分內容:全局編碼向量(GEK)和有效信息(Y),它們的矩陣形式如下式所示:

假設原始數據X包含M個行向量,RLNC算法隨機的產生一個M×M的初始編碼矩陣LEKS,其行向量Si(1≤i≤M)分別同發送的信息進行線性運算,其結果為RS:

RS由LEK和X的線性組合構成。源節點把新的數據包分發出去,在任意一個中間節點,RLNC算法對收到的數據包進行線性運算后生成新的數據包,再把該數據包發送出去,假設一個中間節點收到j(1≤j≤M)個數據包,其中每個數據包中包括Si和Si·X,RLNC隨機生成j維的局部編碼向量Ij,那么該節點發送的數據包RI可以表示為:

式中,Kj表示M個Ki中任意j個向量組成的矩陣。由此遞推,結合式(1)和式(2),接收節點收到的M個數據包RD可以用下式來表示:

從RD中可以分別獲得GEK和Y,當GEK滿秩時,原始信息可以由式(4)得到:

由于RLNC在所有中間節點都采用線性算法對信息進行處理,由式(1)可知,在網絡中傳輸的信息可以看作是由局部編碼向量LEK加密后的密文,且由式(4)知,目的節點只有在獲取全局編碼向量GEK后,才能恢復出原始數據,此時GEK可以認為是加密密鑰。因此,考慮到RLNC算法這一特點,可以通過限制用戶對GEK的恢復,完成數據的加密算法。
在源節點中,由M個數據包組成的數據單元中包括一個M×M的單位矩陣和原始信息X,在數據單元參與線性運算之前,首先選擇一個M×M的非奇異系數矩陣KEY代替數據單元中的單位矩陣,新的數據單元包括系數矩陣KEY和原始信息,然后再對該數據單元進行如式(1)所示的線性運算后采用RLNC算法進行數據傳輸。由上述分析可知,目的接收收到的數據包ZD可以表示為:

其中Y=GEK·X,由式(5)可知,如果要得到原始信息X,必須獲得GEK,目的節點只能通過KEY矩陣解密后獲得GEK。因此,X可以通過式(6)得到:

這里的M×M的非奇異矩陣KEY就是該加密算法的密鑰。
在DRM系統中,內容服務器通過KEY對原始信息進行加密,客戶端獲得加密的數據后,從許可證服務器申請KEY密鑰進行解密。
在實際的網絡視頻系統中,視頻服務器在同一時間內可以發出多個節目流,用戶可以從這些節目中進行選擇。為了更有效地控制SVC視頻流的分配,在分級數據包結構的基礎上,提出了基于GOP的混合多節目流的數據包結構。假設源點同時發送m個節目流{P1,P2,…,Pm},每個節目流的K個GOP是一個GOP分組{G1,G2,…,GK},把GOP分組中m個節目流的碼流按照分層遞增的順序依次進行打包。打包算法得到的數據包的結構如圖1示,其中Lij(1≤i≤H,1≤j≤m)表示第j個節目流中S個GOP的第i層SVC碼流的集合。

圖1 打包結構
在DRM系統中,當客戶端收到具有該結構的SVC碼流時,可以通過給用戶頒發證書的形式精確地控制用戶對SVC碼流的獲取,使客戶根據其權限恢復出相應視頻圖像。采用3種不同形式的證書就能合理地控制用戶對數據包內視頻碼流的獲取,這3種證書分別是:品質證書、節目證書和GOP證書。
①品質證書:該證書用于描述給用戶分配SVC視頻流中碼流層次的權限。SVC算法提供了3種可分級形式:時間域﹑空間域和質量域,同時這3種可分級形式碼流的恢復決定了圖像的幀率,分辨率和質量。在1個層數為H的SVC視頻流{L1,L2,…,LH}中,定義一個H維的單位矩陣Q-PM(Quality Permission Matrix)為品質證書,Q-PM中對角元素(1≤i≤H)用來控制用戶訪問不同層的碼流的權限,當Q-PM中的對角元素等于1時,表示用戶可以獲取H層的碼流中某層的碼流。
②節目證書:該證書用來描述用戶獲取節目的權限。假設內容服務器發出的碼流中一共包含P個節目流{P1,P2,…,PP},定義一個P維的單位矩陣P-PM(Program Permission Matrix)為節目證書,該矩陣對角元素表示節目流的使用權限,當節目證書P-PM中對角元素時,說明用戶可以獲取某個節目的碼流。
③GOP證書:該證書描述了用戶獲取SVC視頻流中單個GOP碼流的權限。定義連續的K個GOP 為一個GOP分組{GG:G1,G2,…,GK},用一個K維的單位矩陣S-PM表示GOP證書,用S-PM對角線上的元素表示在該GOP分組中的GOP的訪問權限,當其值等于1時,表示用戶可以獲取該GOP的碼流。特別地,定義g_access(1≤g_access≤K)參數把一個GOP分組劃分成2部分,使得S-PM中的,這樣就可以控制用戶對GOP分組中連續GOP的訪問,因此,該證書還可以根據g_access的設置來選擇性的控制用戶恢復視頻圖像。
首先對SVC分層碼流進行打包和加密,生成的數據包通過基于RLNC算法的網絡發送,目的節點收到數據包后,根據自己的權限從第三方申請密鑰和證書,解密數據包后根據授權的證書獲取碼流。該算法的框圖如圖2所示。

圖2 DRM系統使用控制算法示意圖
通過對證書中的參數的控制實現了一種使用控制方法,參數的選擇如表1所示。A、B和C3個用戶分別獲得了KEY密鑰和不同參數的3個證書,他們對視頻碼流的使用權限受到證書的限制。視頻流中包括3個節目,每個節目的SVC碼流層數H都是5,Gsize=16。3個用戶分別獲取不同的節目,其中用戶A和B可以獲得所有GOP的碼流,但是B只能從碼流的低3層中恢復出具有一定失真的視頻圖像,用戶C只能收到節目3中每5個GOP中的1個,并且只能從SVC碼流的基本層中恢復出圖像。

表1 證書中參數的設置
權限控制算法通過密鑰和證書的發送以及證書中參數的選擇控制視頻內容的分配。如上所述,用戶A和C分別享有最高和最低的權限,事實上,在視頻DRM系統中,可以通過合理地選擇這些參數,靈活實現多種SVC碼流的分配方式。
討論了基于GOP的混合多節目流的數據包結構,提出了一種SVC碼流的DRM系統權限控制方法,并從加密和證書認證兩方面詳細說明了權限控制算法的原理和工作方式。提出的權限控制方法充分考慮了SVC和RLNC的特點,加密和分配算法都易于實現并且沒有增加額外的信息。該算法具有復雜度低和易于實現的特點,可以用于實際DRM系統中對SVC碼流權限控制方法的設計。
[1]IANNELLA R.Digital Rights Management(DRM)Architecture[J].D2Lib Magazine,2001,7(6):6-11.
[2]范科峰,莫瑋,曹山,等.數字版權管理技術及應用研究進展[J].電子學報,2007,6(35):1139-1147.
[3]SCHWARZ H,MARPE D,WIEGANDT.Overview of the Scalable Video Coding Extension of the H.264/AVC Standard[J].IEEE Trans.on Circuits and Systems for Video Technology,2007,17(9):1103-1120.
[4]PARK S U,SHIN S U.Efficient Selective Encryption Scheme for the H.264/Scalable Video Coding(SVC)[C]//Fourth International Conference on Networked Computing and Advanced information management,Gyeongju,Korea,2008:371-376.
[5]LIAN Shi-guo.Digital Rights Management for the Home TV based on Scalable Video Coding[J].IEEE Trans.On Consumer Electronics,2008,53(3):1287-1293.
[6]HO T,MEDARD M,KOETTER R,KARGER D R,et al.A Random Linear Network Coding Approach to Multicast[J].IEEE Trans.on Inf.Theory,2006,52(10):4413-4430.
[7]LU Ji,XIAO Song,WU Cheng-ke.EfficientProtection Scheme for SVC Content based on Network Coding[C]//Fifth International Conference on Information Assurance and Security,Xi’an,China,2009,2:585-588.