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

假設(shè)原始數(shù)據(jù)X包含M個(gè)行向量,RLNC算法隨機(jī)的產(chǎn)生一個(gè)M×M的初始編碼矩陣LEKS,其行向量Si(1≤i≤M)分別同發(fā)送的信息進(jìn)行線性運(yùn)算,其結(jié)果為RS:

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

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

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

由于RLNC在所有中間節(jié)點(diǎn)都采用線性算法對(duì)信息進(jìn)行處理,由式(1)可知,在網(wǎng)絡(luò)中傳輸?shù)男畔⒖梢钥醋魇怯删植烤幋a向量LEK加密后的密文,且由式(4)知,目的節(jié)點(diǎn)只有在獲取全局編碼向量GEK后,才能恢復(fù)出原始數(shù)據(jù),此時(shí)GEK可以認(rèn)為是加密密鑰。因此,考慮到RLNC算法這一特點(diǎn),可以通過限制用戶對(duì)GEK的恢復(fù),完成數(shù)據(jù)的加密算法。
在源節(jié)點(diǎn)中,由M個(gè)數(shù)據(jù)包組成的數(shù)據(jù)單元中包括一個(gè)M×M的單位矩陣和原始信息X,在數(shù)據(jù)單元參與線性運(yùn)算之前,首先選擇一個(gè)M×M的非奇異系數(shù)矩陣KEY代替數(shù)據(jù)單元中的單位矩陣,新的數(shù)據(jù)單元包括系數(shù)矩陣KEY和原始信息,然后再對(duì)該數(shù)據(jù)單元進(jìn)行如式(1)所示的線性運(yùn)算后采用RLNC算法進(jìn)行數(shù)據(jù)傳輸。由上述分析可知,目的接收收到的數(shù)據(jù)包ZD可以表示為:

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

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

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

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

表1 證書中參數(shù)的設(shè)置
權(quán)限控制算法通過密鑰和證書的發(fā)送以及證書中參數(shù)的選擇控制視頻內(nèi)容的分配。如上所述,用戶A和C分別享有最高和最低的權(quán)限,事實(shí)上,在視頻DRM系統(tǒng)中,可以通過合理地選擇這些參數(shù),靈活實(shí)現(xiàn)多種SVC碼流的分配方式。
討論了基于GOP的混合多節(jié)目流的數(shù)據(jù)包結(jié)構(gòu),提出了一種SVC碼流的DRM系統(tǒng)權(quán)限控制方法,并從加密和證書認(rèn)證兩方面詳細(xì)說明了權(quán)限控制算法的原理和工作方式。提出的權(quán)限控制方法充分考慮了SVC和RLNC的特點(diǎn),加密和分配算法都易于實(shí)現(xiàn)并且沒有增加額外的信息。該算法具有復(fù)雜度低和易于實(shí)現(xiàn)的特點(diǎn),可以用于實(shí)際DRM系統(tǒng)中對(duì)SVC碼流權(quán)限控制方法的設(shè)計(jì)。
[1]IANNELLA R.Digital Rights Management(DRM)Architecture[J].D2Lib Magazine,2001,7(6):6-11.
[2]范科峰,莫瑋,曹山,等.數(shù)字版權(quán)管理技術(shù)及應(yīng)用研究進(jìn)展[J].電子學(xué)報(bào),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.