郭麗霞
(中國(guó)聯(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ù)器和客戶(hù)端。在視頻DRM系統(tǒng)框架下,視頻流分配和使用的權(quán)限控制算法是DRM系統(tǒng)需要解決的關(guān)鍵問(wèn)題[2]。
可分級(jí)視頻編碼(Scalable video coding,SVC)[3]是適合于網(wǎng)絡(luò)視頻流傳輸?shù)囊曨l編碼算法。目前提出的基于RAS的加密算法和選擇式加密算法存在一定量的數(shù)學(xué)運(yùn)算[4],增加了視頻傳輸系統(tǒng)的額外開(kāi)銷(xiāo),提出的層次化的SVC碼流的權(quán)限控制方法方案[5]沒(méi)有很好考慮到SVC碼流在網(wǎng)絡(luò)中傳輸?shù)囊蛩?,不能很好地適用于實(shí)際的DRM系統(tǒng)中。網(wǎng)絡(luò)編碼[6]技術(shù)通過(guò)在中間節(jié)點(diǎn)對(duì)收到的多個(gè)信息進(jìn)行線(xiàn)性編碼的方式給DRM系統(tǒng)中權(quán)限控制算法提供了新的思路。隨機(jī)線(xiàn)性網(wǎng)絡(luò)編碼[6](Random Linear Network Coding,RLNC)在每條網(wǎng)絡(luò)鏈路上隨機(jī)的產(chǎn)生局部編碼向量。已有的基于RLNC算法沒(méi)有結(jié)合DRM系統(tǒng)的框架說(shuō)明權(quán)限控制的方法[7],仍需研究DRM機(jī)制下權(quán)限控制方法。
為此,在RLNC的基礎(chǔ)上,通過(guò)基于全局編碼向量(Global Encoding Kernel,GEK)的加密和認(rèn)證證書(shū)相結(jié)合的方式,提出了一種SVC視頻流的權(quán)限控制方法。
在DRM系統(tǒng)中,為了保護(hù)信息的安全性,避免非法者獲取帶有知識(shí)產(chǎn)權(quán)的數(shù)字視頻內(nèi)容,必須在傳輸前對(duì)數(shù)字內(nèi)容進(jìn)行加密,在客戶(hù)端采用合理的分配方式控制視頻內(nèi)容的分配。
RLNC算法中,網(wǎng)絡(luò)中的每條邊隨機(jī)地產(chǎn)生局部編碼向量(Local Encoding Kernel,LEK),每個(gè)節(jié)點(diǎn)對(duì)收到的多個(gè)信息流進(jìn)行線(xiàn)性運(yùn)算后生成新的信息,LEK參與線(xiàn)性運(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)行線(xiàn)性運(yùn)算,其結(jié)果為RS:
RS由LEK和X的線(xiàn)性組合構(gòu)成。源節(jié)點(diǎn)把新的數(shù)據(jù)包分發(fā)出去,在任意一個(gè)中間節(jié)點(diǎn),RLNC算法對(duì)收到的數(shù)據(jù)包進(jìn)行線(xià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可以用下式來(lái)表示:
從RD中可以分別獲得GEK和Y,當(dāng)GEK滿(mǎn)秩時(shí),原始信息可以由式(4)得到:
由于RLNC在所有中間節(jié)點(diǎn)都采用線(xià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),可以通過(guò)限制用戶(hù)對(duì)GEK的恢復(fù),完成數(shù)據(jù)的加密算法。
在源節(jié)點(diǎn)中,由M個(gè)數(shù)據(jù)包組成的數(shù)據(jù)單元中包括一個(gè)M×M的單位矩陣和原始信息X,在數(shù)據(jù)單元參與線(xiàn)性運(yùn)算之前,首先選擇一個(gè)M×M的非奇異系數(shù)矩陣KEY代替數(shù)據(jù)單元中的單位矩陣,新的數(shù)據(jù)單元包括系數(shù)矩陣KEY和原始信息,然后再對(duì)該數(shù)據(jù)單元進(jìn)行如式(1)所示的線(xiàn)性運(yùn)算后采用RLNC算法進(jìn)行數(shù)據(jù)傳輸。由上述分析可知,目的接收收到的數(shù)據(jù)包ZD可以表示為:
其中Y=GEK·X,由式(5)可知,如果要得到原始信息X,必須獲得GEK,目的節(jié)點(diǎn)只能通過(guò)KEY矩陣解密后獲得GEK。因此,X可以通過(guò)式(6)得到:
這里的M×M的非奇異矩陣KEY就是該加密算法的密鑰。
在DRM系統(tǒng)中,內(nèi)容服務(wù)器通過(guò)KEY對(duì)原始信息進(jìn)行加密,客戶(hù)端獲得加密的數(shù)據(jù)后,從許可證服務(wù)器申請(qǐng)KEY密鑰進(jìn)行解密。
在實(shí)際的網(wǎng)絡(luò)視頻系統(tǒng)中,視頻服務(wù)器在同一時(shí)間內(nèi)可以發(fā)出多個(gè)節(jié)目流,用戶(hù)可以從這些節(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)客戶(hù)端收到具有該結(jié)構(gòu)的SVC碼流時(shí),可以通過(guò)給用戶(hù)頒發(fā)證書(shū)的形式精確地控制用戶(hù)對(duì)SVC碼流的獲取,使客戶(hù)根據(jù)其權(quán)限恢復(fù)出相應(yīng)視頻圖像。采用3種不同形式的證書(shū)就能合理地控制用戶(hù)對(duì)數(shù)據(jù)包內(nèi)視頻碼流的獲取,這3種證書(shū)分別是:品質(zhì)證書(shū)、節(jié)目證書(shū)和GOP證書(shū)。
①品質(zhì)證書(shū):該證書(shū)用于描述給用戶(hù)分配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ì)證書(shū),Q-PM中對(duì)角元素(1≤i≤H)用來(lái)控制用戶(hù)訪(fǎng)問(wèn)不同層的碼流的權(quán)限,當(dāng)Q-PM中的對(duì)角元素等于1時(shí),表示用戶(hù)可以獲取H層的碼流中某層的碼流。
②節(jié)目證書(shū):該證書(shū)用來(lái)描述用戶(hù)獲取節(jié)目的權(quán)限。假設(shè)內(nèi)容服務(wù)器發(fā)出的碼流中一共包含P個(gè)節(jié)目流{P1,P2,…,PP},定義一個(gè)P維的單位矩陣P-PM(Program Permission Matrix)為節(jié)目證書(shū),該矩陣對(duì)角元素表示節(jié)目流的使用權(quán)限,當(dāng)節(jié)目證書(shū)P-PM中對(duì)角元素時(shí),說(shuō)明用戶(hù)可以獲取某個(gè)節(jié)目的碼流。
③GOP證書(shū):該證書(shū)描述了用戶(hù)獲取SVC視頻流中單個(gè)GOP碼流的權(quán)限。定義連續(xù)的K個(gè)GOP 為一個(gè)GOP分組{GG:G1,G2,…,GK},用一個(gè)K維的單位矩陣S-PM表示GOP證書(shū),用S-PM對(duì)角線(xiàn)上的元素表示在該GOP分組中的GOP的訪(fǎng)問(wèn)權(quán)限,當(dāng)其值等于1時(shí),表示用戶(hù)可以獲取該GOP的碼流。特別地,定義g_access(1≤g_access≤K)參數(shù)把一個(gè)GOP分組劃分成2部分,使得S-PM中的,這樣就可以控制用戶(hù)對(duì)GOP分組中連續(xù)GOP的訪(fǎng)問(wèn),因此,該證書(shū)還可以根據(jù)g_access的設(shè)置來(lái)選擇性的控制用戶(hù)恢復(fù)視頻圖像。
首先對(duì)SVC分層碼流進(jìn)行打包和加密,生成的數(shù)據(jù)包通過(guò)基于RLNC算法的網(wǎng)絡(luò)發(fā)送,目的節(jié)點(diǎn)收到數(shù)據(jù)包后,根據(jù)自己的權(quán)限從第三方申請(qǐng)密鑰和證書(shū),解密數(shù)據(jù)包后根據(jù)授權(quán)的證書(shū)獲取碼流。該算法的框圖如圖2所示。
圖2 DRM系統(tǒng)使用控制算法示意圖
通過(guò)對(duì)證書(shū)中的參數(shù)的控制實(shí)現(xiàn)了一種使用控制方法,參數(shù)的選擇如表1所示。A、B和C3個(gè)用戶(hù)分別獲得了KEY密鑰和不同參數(shù)的3個(gè)證書(shū),他們對(duì)視頻碼流的使用權(quán)限受到證書(shū)的限制。視頻流中包括3個(gè)節(jié)目,每個(gè)節(jié)目的SVC碼流層數(shù)H都是5,Gsize=16。3個(gè)用戶(hù)分別獲取不同的節(jié)目,其中用戶(hù)A和B可以獲得所有GOP的碼流,但是B只能從碼流的低3層中恢復(fù)出具有一定失真的視頻圖像,用戶(hù)C只能收到節(jié)目3中每5個(gè)GOP中的1個(gè),并且只能從SVC碼流的基本層中恢復(fù)出圖像。
表1 證書(shū)中參數(shù)的設(shè)置
權(quán)限控制算法通過(guò)密鑰和證書(shū)的發(fā)送以及證書(shū)中參數(shù)的選擇控制視頻內(nèi)容的分配。如上所述,用戶(hù)A和C分別享有最高和最低的權(quán)限,事實(shí)上,在視頻DRM系統(tǒng)中,可以通過(guò)合理地選擇這些參數(shù),靈活實(shí)現(xiàn)多種SVC碼流的分配方式。
討論了基于GOP的混合多節(jié)目流的數(shù)據(jù)包結(jié)構(gòu),提出了一種SVC碼流的DRM系統(tǒng)權(quán)限控制方法,并從加密和證書(shū)認(rèn)證兩方面詳細(xì)說(shuō)明了權(quán)限控制算法的原理和工作方式。提出的權(quán)限控制方法充分考慮了SVC和RLNC的特點(diǎn),加密和分配算法都易于實(shí)現(xiàn)并且沒(méi)有增加額外的信息。該算法具有復(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.