項(xiàng)煜東,吳桂興
(1. 中國科學(xué)技術(shù)大學(xué) 軟件學(xué)院,安徽 合肥 230051; 2. 中國科學(xué)技術(shù)大學(xué) 蘇州研究院,江蘇 蘇州 215123)
?
一種基于加密域可逆水印的H.265視頻認(rèn)證加密方案*
項(xiàng)煜東1,吳桂興2
(1. 中國科學(xué)技術(shù)大學(xué) 軟件學(xué)院,安徽 合肥 230051; 2. 中國科學(xué)技術(shù)大學(xué) 蘇州研究院,江蘇 蘇州 215123)
輕量級(jí)視頻加密技術(shù)和近年來興起的加密域可逆水印技術(shù)為視頻的認(rèn)證加密提供了新的技術(shù)支撐,但現(xiàn)有的加密域可逆水印技術(shù)大多數(shù)局限于靜態(tài)圖像,而視頻的認(rèn)證加密不能直接使用傳統(tǒng)靜態(tài)圖像的數(shù)字水印方案。在此背景下,提出一種加密域可逆數(shù)字水印方案,并利用它實(shí)現(xiàn)視頻的認(rèn)證加密。該方案基于H.265/HEVC視頻編碼標(biāo)準(zhǔn),通過在DCT域?qū)ψ儞Q系數(shù)進(jìn)行操作,能夠把加密和可逆水印嵌入進(jìn)行分離,進(jìn)而可以實(shí)現(xiàn)在已經(jīng)加密的視頻中可逆地嵌入消息認(rèn)證碼(Message Authentication Code,MAC),最終同時(shí)實(shí)現(xiàn)內(nèi)容安全性保護(hù)與完整性認(rèn)證。實(shí)驗(yàn)表明該方案不僅能在加密的視頻中嵌入可逆水印,還能對視頻的篡改進(jìn)行定位。
視頻加密;數(shù)字水??;HEVC;認(rèn)證加密
隨著計(jì)算機(jī)信息處理能力、網(wǎng)絡(luò)傳輸能力的提升,多媒體信息已經(jīng)可以方便高效地在互聯(lián)網(wǎng)中傳播,并可以讓人們?nèi)我獾乜截惻c修改。在此趨勢下,多媒體信息的內(nèi)容安全性已經(jīng)成為人們普遍關(guān)注的問題。在眾多的信息安全技術(shù)中,加密和信息隱藏技術(shù)成為了多媒體信息內(nèi)容隱私保護(hù)、篡改檢測、版權(quán)管理等的主要手段。
認(rèn)證加密是指在通信中同時(shí)提供保密性和完整性認(rèn)證的加密系統(tǒng)。許多應(yīng)用和協(xié)議中都同時(shí)需要這兩種形式的安全性保證,以前這兩類安全系統(tǒng)一直分離設(shè)計(jì),直到近些年才合并在一起考慮。而對于視頻來說,視頻內(nèi)容的保密性和完整性都非常重要。因?yàn)橐曨l在加密以及解密之后仍然可能被篡改,水印也不能保證視頻的內(nèi)容安全性[1]。而加密技術(shù)和加密域信息隱藏技術(shù),特別是加密域可逆水印,為視頻內(nèi)容的安全性和完整性保護(hù)提供了一種可選的方案。
圖1 E&M認(rèn)證加密模式
圖2 MtE認(rèn)證加密模式
圖3 EtM認(rèn)證加密模式
認(rèn)證加密有如下三種模式[2]:(1)加密同時(shí)生成認(rèn)證碼(Encrypt & MAC,E&M),該模式使用兩個(gè)密鑰,首先加密消息得到密文C=E(K2,M),然后通過計(jì)算認(rèn)證碼(簡稱MAC)的值T=MAC(K1,M)并考察(C,T)對明文進(jìn)行認(rèn)證,如圖1所示。(2)先生成認(rèn)證碼再加密(MAC then Encrypt,MtE),該模式使用兩個(gè)密鑰,先通過計(jì)算MAC值T=MAC(K1,M)對明文進(jìn)行認(rèn)證碼生成,然后將數(shù)據(jù)和MAC一起加密:E(K2,(M‖T)),如圖2所示。(3)先加密再生成認(rèn)證碼(Encrypt then MAC, EtM),該模式使用兩個(gè)密鑰,首先加密消息得到密文,C=E(K2,M),然后通過計(jì)算MAC值T=MAC(K1,C)并考察(C,T)對明文進(jìn)行認(rèn)證,如圖3所示。對于視頻來說,由于其數(shù)據(jù)量極大,傳統(tǒng)的加密、哈希、認(rèn)證策略是不能直接使用的。PARK S W等[3]提出一種基于H.264/SVC的認(rèn)證加密方案,但是該方案中,含水印的視頻不能直接解密,必須事先去除水印。
在已加密的視頻中嵌入水印[4],這是一個(gè)長期以來被人忽視的問題,直到2007年Lian Shiguo等人[5]提出一種水印和加密相結(jié)合的方案,同時(shí)保護(hù)視頻的機(jī)密性和申明視頻的版權(quán)或進(jìn)行完整性認(rèn)證等。相對于早期的加密和水印結(jié)合的方式,加密域視頻水印允許直接對加密后的視頻進(jìn)行水印嵌入和提取。本文具體通過加密幀內(nèi)預(yù)測模式、運(yùn)動(dòng)向量差(MVD)和DCT系數(shù)的符號(hào)來實(shí)現(xiàn)加密,并同時(shí)在DCT系數(shù)中通過奇偶量化嵌入水印,從而實(shí)現(xiàn)了水印和加密的分離。文獻(xiàn)[6-7]發(fā)展了上述方法,提出利用熵編碼的特性,在碼流層面上進(jìn)行加密與數(shù)據(jù)嵌入。后來文獻(xiàn)[8]又提出了一種加密域可逆水印的策略,但是使用該方法嵌入的水印導(dǎo)致的視覺失真比較明顯。
本文將會(huì)以EtM模式為例,選擇DCT系數(shù)的符號(hào)(coeff_sign_flag)和量化步長QP的殘差的符號(hào)(cu_qp_delta_sign)進(jìn)行加密,以權(quán)衡性能和視覺安全性,再把加密后的數(shù)據(jù)進(jìn)行哈希得到認(rèn)證碼,最后提出使用一種加密域可逆水印算法把認(rèn)證碼嵌入到DCT系數(shù)中。在接收方,先進(jìn)行水印的提取以及水印去除,再對恢復(fù)的數(shù)據(jù)進(jìn)行哈希,將得到的哈希值與提取出的值進(jìn)行對比,實(shí)現(xiàn)認(rèn)證。最后根據(jù)需要進(jìn)行解密。實(shí)驗(yàn)表明該方案中加密策略具有較強(qiáng)的視覺安全性,水印嵌入導(dǎo)致的失真較小,且能在提取后完全恢復(fù)原始數(shù)據(jù),可以實(shí)現(xiàn)篡改幀的定位。
圖4 認(rèn)證加密整體方案
圖5 認(rèn)證方可采取的操作
國內(nèi)外針對H.265/HEVC的加密和水印算法大多是基于現(xiàn)有的編碼標(biāo)準(zhǔn)。從根本上來說,H.265/HEVC視頻編碼標(biāo)準(zhǔn)的編碼框架并沒有革命性的改變,類似于以往的標(biāo)準(zhǔn),仍然采用混合編碼框架:變換、量化、熵編碼、幀內(nèi)預(yù)測、幀間預(yù)測以及環(huán)路濾波等模塊。但是具體到各個(gè)模塊的認(rèn)證加密,相對于H.264都有較大的革新[9]。本文中的加密和加密域水印算法都在熵編碼階段實(shí)現(xiàn),需要在加密或水印嵌入之前對視頻進(jìn)行部分解碼,但不需要重新進(jìn)行整數(shù)DCT變換,這在一定程度上保證了該方案的運(yùn)行效率。
整個(gè)方案采用的技術(shù)主要包含4個(gè)部分:選擇性加密、認(rèn)證碼生成、用于嵌入水印的變換塊的選擇以及水印的嵌入。它們之間的關(guān)系結(jié)構(gòu)如圖4所示。
由于使用了EtM模式,因此整體方案為先加密,再生成認(rèn)證碼,最后嵌入水印。在認(rèn)證解密端,可以有如圖5所示的幾種操作,根據(jù)不同的應(yīng)用場景進(jìn)行選擇。其中只有第四種操作同時(shí)需要加密密鑰和水印密鑰。
1.1 選擇性加密方案
對H.265/HEVC以及其他常見視頻來說,選擇性加密的首要任務(wù)是找到適合的語法元素。文獻(xiàn)[10]詳細(xì)對比了各種語法元素加密產(chǎn)生的效果,表1是文獻(xiàn)[10]中做出的總結(jié)。為了實(shí)現(xiàn)加密和水印的分離,這里選用coeff_sign_flag和cu_qp_delta_sign作為要加密的語法元素,即加密DCT系數(shù)的符號(hào)和量化步長QP的殘差的符號(hào)。這兩個(gè)語法元素使用旁路編碼,可以比較方便地在碼流層面進(jìn)行加密,保證了加密的效率,另外加密這兩種語法元素的視覺安全性已經(jīng)分別被前人論證過[11]。
表1 其他文獻(xiàn)中加密不同語法元素之間的比較
在加密算法的選擇方面,使用了幾種常見的算法,并對比了其加密之后視頻的SSIM[12],如表2所示,可以看出輸出反饋模式(DES-OFB)是一種相對視覺安全性較高的選擇,所以本文使用DES-OFB。測試視頻來自VQEG(視頻質(zhì)量專家組)的數(shù)據(jù)庫,分辨率為1 920×1 080。
表2 不同算法加密后的SSIM值對比
1.2 加密域可逆水印嵌入方案
1.2.1 認(rèn)證碼的生成
圖6 N位認(rèn)證碼的生成過程
對于加密過的視頻,以一個(gè)樹形編碼單元(LCU)為單位進(jìn)行哈希。本文使用MD5算法將一個(gè)LCU中的所有編碼單元(CU)各通道的DCT系數(shù)散列成一個(gè)128 bit的哈希值。這128 bit的哈希值將被嵌入到當(dāng)前LCU的亮度分量中,由于LCU的劃分方式不同,水印的容量也是不同的,因此需要將哈希值劃分成長為N的序列,并把它們進(jìn)行異或運(yùn)算,得到長為Nbit的認(rèn)證碼,過程如圖6所示。這樣對于一些運(yùn)動(dòng)比較平緩的視頻,就可以人為地把N設(shè)置小一些,而對于運(yùn)動(dòng)較劇烈的視頻,可以讓N稍大一些。
1.2.2 嵌入策略
在H.264/AVC中,編碼塊(CB)的大小是固定的。而在H.265/HEVC中,一個(gè)樹形編碼塊(CTB,又稱為LCB)可以直接作為一個(gè)CB,也可以進(jìn)一步以四叉樹的形式劃分為多個(gè)小的CB,所以H.265/HEVC中CB的大小是可變的。亮度編碼塊(亮度CB)最大為64×64,最小為8×8,而一個(gè)CB又劃分為一個(gè)或多個(gè)變換塊(TB),一個(gè)TB也作為一個(gè)熵編碼單元而存在,其最大為32×32,最小為4×4。
水印嵌入的第一步是先找到合適的TB,在TB的選擇方面,使用文獻(xiàn)[13]所提出的CDE (Coefficient Difference Energy)準(zhǔn)則,以公式(1)的值作為TB選擇的依據(jù):
(1)
式中L為一個(gè)TB中的DCT系數(shù)以Zigzag順序組成的向量。h(L)為嵌入水印后的向量。在水印嵌入時(shí),只選擇CDE(L)
本文的可逆水印嵌入算法屬于直方圖平移算法的范疇[14]。在一個(gè)Slice中,所有使用CDE準(zhǔn)則篩選出的TB組成集合A,再使用水印密鑰在集合A中選出一部分TB組成有序集合B。首先對于集合A中的每一個(gè)TB,找到TB中在ZigZag順序下的最后一個(gè)非零系數(shù),這些非零系數(shù)組成集合A′,集合B中每個(gè)TB的最后一個(gè)非零系數(shù)組成集合B′,易得A′?B′,然后在集合A′中做公式(2)所示的直方圖平移以嵌入水印:
(2)
式中sgn()為符號(hào)函數(shù),ax表示x位置的DCT系數(shù)的值。ω為要嵌入的1 bit水印(w=ω0ω1…ωN-1)。該水印嵌入算法與被加密的語法元素沒有關(guān)聯(lián),不會(huì)影響到解密,是可分離的。
1.3 認(rèn)證與解密
在認(rèn)證和解密階段,首先要找到上一節(jié)提到的集合A。具體方法為,對于每一個(gè)Slice,計(jì)算每個(gè)TB的CDE,如果CDE
(3)
式中L′為嵌入水印后的L。即原本滿足CDE
對于集合A中的每一個(gè)TB,使用下式提取水印w′:
(4)
ax=
(5)
去除水印后的Slice可以再使用1.2.1節(jié)的方案進(jìn)行哈希,生成認(rèn)證碼,最后與ω′比對從而完成認(rèn)證。
在以上過程中,只擁有水印密鑰的人不能完成解密操作,所以在認(rèn)證過程中不會(huì)泄漏視頻的內(nèi)容。只有擁有加密密鑰的人才能進(jìn)行解密操作。解密過程先使用對稱密鑰以DES-OFB模式生成流密鑰,再找到語法元素coeff_sign_flag和cu_qp_delta_sign,按序與流密鑰做異或操作即可。
本文的實(shí)驗(yàn)基于H.265/HEVC參考軟件HM12.0,使用的測試序列分辨率為1 920×1 080,內(nèi)容為一只松鼠在走路,幀率為30 f/s。本文使用的編碼配置為encoder_randomaccess_main,這是HEVC默認(rèn)配置的文件之一,包含I, P, B幀,支持隨機(jī)訪問。此外本文把GOP大小設(shè)為8,QP默認(rèn)值設(shè)為26,取其中的50幀進(jìn)行測試??勺儏?shù)Th=0.25,N=10。本文在計(jì)算SSIM時(shí)使用的參考視頻為未編碼過的原始視頻。
首先對視頻進(jìn)行加密。用不同分辨率的多個(gè)視頻序列進(jìn)行測試,結(jié)果見表3。從表中可以看出,加密過程對視頻的碼率沒有任何影響,且失真足夠大。然后在加密過的視頻中嵌入可逆水印,得到含水印的秘密視頻。
表3 視頻加密性能
在視頻的接收端,本文進(jìn)行了如圖5所示的幾種操作。在僅做解密之后,視頻中還包含水印,所以有一定的失真,但水印本身帶來的失真以及對碼率的影響都應(yīng)該盡可能地小,所以本文與文獻(xiàn)[8]中提到的直方圖平移方案做了對比,結(jié)果如表4、表5所示。從表中可以看出,使用本文的方案得到的含水印視頻的碼率低于文獻(xiàn)[8]的方案,且含水印視頻的SSIM高于文獻(xiàn)[8]的方案。僅作認(rèn)證或者認(rèn)證后再去除水印而未解密的視頻,即使其SSIM有輕微的變化,其加密的效果也不受影響,如圖7所示。另外,在運(yùn)行效率方面,本文的方案與文獻(xiàn)[8]的方案沒有顯著的差別,對于30幀1 080 p視頻,使用酷睿i5-4590處理器,加密和加密域水印嵌入總共用時(shí)在0.5~1.0 s之間。
最后,為了測試認(rèn)證的效果,把視頻解密后進(jìn)行了篡改,把松鼠手中的栗子換成草,對于認(rèn)證失敗的LCU,該方案可以將其定位,在實(shí)驗(yàn)程序中將該LCU中的DCT系數(shù)隨機(jī)修改,可以使被篡改區(qū)域變成模糊的方塊,以便人眼能夠觀察到,如圖8所示。
表5 文獻(xiàn)[13]的嵌入方案
圖7 水印對已加密視頻的影響
圖8 對被篡改的LCU的定位
本文提出一種視頻加密域可逆水印方案并將其用于認(rèn)證加密中。該方案選擇視頻的預(yù)測殘差DCT系數(shù)的符號(hào)和QP殘差的符號(hào)做加密,并在DCT系數(shù)中使用改進(jìn)的直方圖平移算法嵌入可逆水印,既保護(hù)了視頻的內(nèi)容安全性,同時(shí)又實(shí)現(xiàn)了視頻的完整性認(rèn)證。水印具有較強(qiáng)的不可見性,而加密也有較強(qiáng)的視覺安全性,與以往類似工作[3,8]相比,本文的方案實(shí)現(xiàn)了水印和加密的分離,更具靈活性,同時(shí)水印嵌入導(dǎo)致的失真更小。而且在加密、水印嵌入、解密、認(rèn)證的過程中視頻不需要完全解碼,這保證了整個(gè)算法的效率。實(shí)驗(yàn)結(jié)果表明該方案對視頻的碼率影響極小,也能實(shí)現(xiàn)認(rèn)證加密的功能。
[1] 劉敏. 數(shù)字視頻水印技術(shù)綜述[J]. 微型機(jī)與應(yīng)用,2012,31(7): 6-10.
[2] BELLARE M, NAMPREMPRE C. Authenticated encryption: relations among notions and analysis of the generic composition paradigm[J]. Journal of Cryptology,2008,21(4): 469-491.
[3] PARK S W, SHIN S U. Combined scheme of encryption and watermarking in H.264/scalable video coding (SVC)[M].New Directions in Intelligent Interactive Multimedia. Springer Berlin Heidelberg, 2008.
[4] BOHO A, VAN WALLENDAEL G, DOOMS A, et al. End-to-end security for video distribution: the combination of encryption, watermarking, and video adaptation[J]. Signal Processing Magazine, IEEE,2013,30(2): 97-107.
[5] Lian Shiguo, Liu Zhongxuan, Ren Zhen, et al. Commutative encryption and watermarking in video compression[J]. IEEE Transactions on Circuits and Systems for Video Technology,2007,17(6): 774-778.
[6] Xu Dawen, Wang Rangding, Shi Yunqing. Data hiding in encrypted H.264/AVC video streams by codeword substitution[J]. IEEE Transactions on Information Forensics and Security,2014,9(4): 596-606.
[7] Xu Dawen, Wang Rangding. Context adaptive binary arithmetic coding-based data hiding in partially encrypted H.264/AVC videos[J]. Journal of Electronic Imaging,2015,24(3).
[8] Xu Dawen, Wang Rangding, Shi Yunqing. Reversible data hiding in encrypted H. 264/AVC video streams[M].Digital-Forensics and Watermarking. Springer, 2014.
[9] 王亞民, 鄧虎超. H.264標(biāo)準(zhǔn)中基于感知加密算法的視頻加密方案[J]. 電子技術(shù)應(yīng)用,2012,38(1): 133-135.
[10] WALLENDAEL V, COCK G D, LEUVEN J V, et al. Format compliant encryption techniques for HEVC[C]. 20th IEEE International Conference on Image Processing, 2013: 4583-4587.
[11] HOFBAUER H, UHL A, UNTERWEGER A. Transparent encryption for HEVC using bit-stream-based selective coefficient sign encryption[C]. IEEE International Conference on Acoustics, Speech and Signal Processing, 2014: 2005-2009.
[12] Wang Zhou, BOVIK A C, SHEIKH H R, et al. Image quality assessment: from error visibility to structural similarity[J]. IEEE Transactions on Image Processing,2004,13(4): 600-612.
[13] Lin Yichuan, Li Junghong. Joint data-hiding and rate-distortion optimization for H.264/AVC videos[J]. Optical Engineering,2012,51(7): 397-407.
[14] Ni Zhicheng, Shi Yunqing, ANSARI N, et al. Reversible data hiding[J]. IEEE Transactions on Circuits and Systems for Video Technology,2006,16(3): 354-362.
An authenticated encryption scheme for H.265 video based on reversible watermarking in encrypted domain
Xiang Yudong1, Wu Guixing2
(1. School of Software, University of Science and Technology of China, Hefei 230051, China; 2. Suzhou Institute for Advanced Study, University of Science and Technology of China, Suzhou 215123, China)
Lightweight video encryption and the emerging encryption domain reversible watermarking technologies are the new tools which can be used for the authenticated encryption of video stream. The methods of reversible watermarking for images in encrypted domain, which are mostly explored, can’t be used for video because of the complexity of video compression. In this paper, we proposed a reversible watermarking scheme in the encrypted domain and implemented an authenticated encryption system. This scheme, based on the H.265/HEVC video coding standard, separates the reversible watermarking embedding from the encrypting process in the DCT domain so that the Message Authentication Code (MAC) can be embedded into the encrypted video stream. Thereby, the content security and the content authentication can be achieved simultaneously. Experiments show that the proposed method can be adopted to reversibly embed watermark into encrypted video and locate the data tampering.
video encryption; watermark; HEVC; authenticated encryption
江蘇省自然科學(xué)基金-面上研究項(xiàng)目(BK20141209); 蘇州市應(yīng)用基礎(chǔ)研究項(xiàng)目(SYG201543)
TN919.81
A
10.19358/j.issn.1674- 7720.2017.14.002
項(xiàng)煜東,吳桂興.一種基于加密域可逆水印的H.265視頻認(rèn)證加密方案[J].微型機(jī)與應(yīng)用,2017,36(14):4-7,13.
2017-02-21)
項(xiàng)煜東(1991-),男,碩士研究生,主要研究方向:多媒體信息安全。
吳桂興(1972-),通信作者,男,博士,講師,主要研究方向:信號(hào)處理,多媒體信息安全。E-mail:gxwu@ustc.edu.cn。