项煜东,吴桂兴
(1. 中国科学技术大学 软件学院,安徽 合肥 230051; 2. 中国科学技术大学 苏州研究院,江苏 苏州 215123)
一种基于加密域可逆水印的H.265视频认证加密方案*
项煜东1,吴桂兴2
(1. 中国科学技术大学 软件学院,安徽 合肥 230051; 2. 中国科学技术大学 苏州研究院,江苏 苏州 215123)
轻量级视频加密技术和近年来兴起的加密域可逆水印技术为视频的认证加密提供了新的技术支撑,但现有的加密域可逆水印技术大多数局限于静态图像,而视频的认证加密不能直接使用传统静态图像的数字水印方案。在此背景下,提出一种加密域可逆数字水印方案,并利用它实现视频的认证加密。该方案基于H.265/HEVC视频编码标准,通过在DCT域对变换系数进行操作,能够把加密和可逆水印嵌入进行分离,进而可以实现在已经加密的视频中可逆地嵌入消息认证码(Message Authentication Code,MAC),最终同时实现内容安全性保护与完整性认证。实验表明该方案不仅能在加密的视频中嵌入可逆水印,还能对视频的篡改进行定位。
视频加密;数字水印;HEVC;认证加密
随着计算机信息处理能力、网络传输能力的提升,多媒体信息已经可以方便高效地在互联网中传播,并可以让人们任意地拷贝与修改。在此趋势下,多媒体信息的内容安全性已经成为人们普遍关注的问题。在众多的信息安全技术中,加密和信息隐藏技术成为了多媒体信息内容隐私保护、篡改检测、版权管理等的主要手段。
认证加密是指在通信中同时提供保密性和完整性认证的加密系统。许多应用和协议中都同时需要这两种形式的安全性保证,以前这两类安全系统一直分离设计,直到近些年才合并在一起考虑。而对于视频来说,视频内容的保密性和完整性都非常重要。因为视频在加密以及解密之后仍然可能被篡改,水印也不能保证视频的内容安全性[1]。而加密技术和加密域信息隐藏技术,特别是加密域可逆水印,为视频内容的安全性和完整性保护提供了一种可选的方案。
图1 E&M认证加密模式
图2 MtE认证加密模式
图3 EtM认证加密模式
认证加密有如下三种模式[2]:(1)加密同时生成认证码(Encrypt & MAC,E&M),该模式使用两个密钥,首先加密消息得到密文C=E(K2,M),然后通过计算认证码(简称MAC)的值T=MAC(K1,M)并考察(C,T)对明文进行认证,如图1所示。(2)先生成认证码再加密(MAC then Encrypt,MtE),该模式使用两个密钥,先通过计算MAC值T=MAC(K1,M)对明文进行认证码生成,然后将数据和MAC一起加密:E(K2,(M‖T)),如图2所示。(3)先加密再生成认证码(Encrypt then MAC, EtM),该模式使用两个密钥,首先加密消息得到密文,C=E(K2,M),然后通过计算MAC值T=MAC(K1,C)并考察(C,T)对明文进行认证,如图3所示。对于视频来说,由于其数据量极大,传统的加密、哈希、认证策略是不能直接使用的。PARK S W等[3]提出一种基于H.264/SVC的认证加密方案,但是该方案中,含水印的视频不能直接解密,必须事先去除水印。
在已加密的视频中嵌入水印[4],这是一个长期以来被人忽视的问题,直到2007年Lian Shiguo等人[5]提出一种水印和加密相结合的方案,同时保护视频的机密性和申明视频的版权或进行完整性认证等。相对于早期的加密和水印结合的方式,加密域视频水印允许直接对加密后的视频进行水印嵌入和提取。本文具体通过加密帧内预测模式、运动向量差(MVD)和DCT系数的符号来实现加密,并同时在DCT系数中通过奇偶量化嵌入水印,从而实现了水印和加密的分离。文献[6-7]发展了上述方法,提出利用熵编码的特性,在码流层面上进行加密与数据嵌入。后来文献[8]又提出了一种加密域可逆水印的策略,但是使用该方法嵌入的水印导致的视觉失真比较明显。
本文将会以EtM模式为例,选择DCT系数的符号(coeff_sign_flag)和量化步长QP的残差的符号(cu_qp_delta_sign)进行加密,以权衡性能和视觉安全性,再把加密后的数据进行哈希得到认证码,最后提出使用一种加密域可逆水印算法把认证码嵌入到DCT系数中。在接收方,先进行水印的提取以及水印去除,再对恢复的数据进行哈希,将得到的哈希值与提取出的值进行对比,实现认证。最后根据需要进行解密。实验表明该方案中加密策略具有较强的视觉安全性,水印嵌入导致的失真较小,且能在提取后完全恢复原始数据,可以实现篡改帧的定位。
图4 认证加密整体方案
图5 认证方可采取的操作
国内外针对H.265/HEVC的加密和水印算法大多是基于现有的编码标准。从根本上来说,H.265/HEVC视频编码标准的编码框架并没有革命性的改变,类似于以往的标准,仍然采用混合编码框架:变换、量化、熵编码、帧内预测、帧间预测以及环路滤波等模块。但是具体到各个模块的认证加密,相对于H.264都有较大的革新[9]。本文中的加密和加密域水印算法都在熵编码阶段实现,需要在加密或水印嵌入之前对视频进行部分解码,但不需要重新进行整数DCT变换,这在一定程度上保证了该方案的运行效率。
整个方案采用的技术主要包含4个部分:选择性加密、认证码生成、用于嵌入水印的变换块的选择以及水印的嵌入。它们之间的关系结构如图4所示。
由于使用了EtM模式,因此整体方案为先加密,再生成认证码,最后嵌入水印。在认证解密端,可以有如图5所示的几种操作,根据不同的应用场景进行选择。其中只有第四种操作同时需要加密密钥和水印密钥。
1.1 选择性加密方案
对H.265/HEVC以及其他常见视频来说,选择性加密的首要任务是找到适合的语法元素。文献[10]详细对比了各种语法元素加密产生的效果,表1是文献[10]中做出的总结。为了实现加密和水印的分离,这里选用coeff_sign_flag和cu_qp_delta_sign作为要加密的语法元素,即加密DCT系数的符号和量化步长QP的残差的符号。这两个语法元素使用旁路编码,可以比较方便地在码流层面进行加密,保证了加密的效率,另外加密这两种语法元素的视觉安全性已经分别被前人论证过[11]。
表1 其他文献中加密不同语法元素之间的比较
在加密算法的选择方面,使用了几种常见的算法,并对比了其加密之后视频的SSIM[12],如表2所示,可以看出输出反馈模式(DES-OFB)是一种相对视觉安全性较高的选择,所以本文使用DES-OFB。测试视频来自VQEG(视频质量专家组)的数据库,分辨率为1 920×1 080。
表2 不同算法加密后的SSIM值对比
1.2 加密域可逆水印嵌入方案
1.2.1 认证码的生成
图6 N位认证码的生成过程
对于加密过的视频,以一个树形编码单元(LCU)为单位进行哈希。本文使用MD5算法将一个LCU中的所有编码单元(CU)各通道的DCT系数散列成一个128 bit的哈希值。这128 bit的哈希值将被嵌入到当前LCU的亮度分量中,由于LCU的划分方式不同,水印的容量也是不同的,因此需要将哈希值划分成长为N的序列,并把它们进行异或运算,得到长为Nbit的认证码,过程如图6所示。这样对于一些运动比较平缓的视频,就可以人为地把N设置小一些,而对于运动较剧烈的视频,可以让N稍大一些。
1.2.2 嵌入策略
在H.264/AVC中,编码块(CB)的大小是固定的。而在H.265/HEVC中,一个树形编码块(CTB,又称为LCB)可以直接作为一个CB,也可以进一步以四叉树的形式划分为多个小的CB,所以H.265/HEVC中CB的大小是可变的。亮度编码块(亮度CB)最大为64×64,最小为8×8,而一个CB又划分为一个或多个变换块(TB),一个TB也作为一个熵编码单元而存在,其最大为32×32,最小为4×4。
水印嵌入的第一步是先找到合适的TB,在TB的选择方面,使用文献[13]所提出的CDE (Coefficient Difference Energy)准则,以公式(1)的值作为TB选择的依据:
(1)
式中L为一个TB中的DCT系数以Zigzag顺序组成的向量。h(L)为嵌入水印后的向量。在水印嵌入时,只选择CDE(L)
本文的可逆水印嵌入算法属于直方图平移算法的范畴[14]。在一个Slice中,所有使用CDE准则筛选出的TB组成集合A,再使用水印密钥在集合A中选出一部分TB组成有序集合B。首先对于集合A中的每一个TB,找到TB中在ZigZag顺序下的最后一个非零系数,这些非零系数组成集合A′,集合B中每个TB的最后一个非零系数组成集合B′,易得A′⊇B′,然后在集合A′中做公式(2)所示的直方图平移以嵌入水印:
(2)
式中sgn()为符号函数,ax表示x位置的DCT系数的值。ω为要嵌入的1 bit水印(w=ω0ω1…ωN-1)。该水印嵌入算法与被加密的语法元素没有关联,不会影响到解密,是可分离的。
1.3 认证与解密
在认证和解密阶段,首先要找到上一节提到的集合A。具体方法为,对于每一个Slice,计算每个TB的CDE,如果CDE
(3)
式中L′为嵌入水印后的L。即原本满足CDE
对于集合A中的每一个TB,使用下式提取水印w′:
(4)
ax=
(5)
去除水印后的Slice可以再使用1.2.1节的方案进行哈希,生成认证码,最后与ω′比对从而完成认证。
在以上过程中,只拥有水印密钥的人不能完成解密操作,所以在认证过程中不会泄漏视频的内容。只有拥有加密密钥的人才能进行解密操作。解密过程先使用对称密钥以DES-OFB模式生成流密钥,再找到语法元素coeff_sign_flag和cu_qp_delta_sign,按序与流密钥做异或操作即可。
本文的实验基于H.265/HEVC参考软件HM12.0,使用的测试序列分辨率为1 920×1 080,内容为一只松鼠在走路,帧率为30 f/s。本文使用的编码配置为encoder_randomaccess_main,这是HEVC默认配置的文件之一,包含I, P, B帧,支持随机访问。此外本文把GOP大小设为8,QP默认值设为26,取其中的50帧进行测试。可变参数Th=0.25,N=10。本文在计算SSIM时使用的参考视频为未编码过的原始视频。
首先对视频进行加密。用不同分辨率的多个视频序列进行测试,结果见表3。从表中可以看出,加密过程对视频的码率没有任何影响,且失真足够大。然后在加密过的视频中嵌入可逆水印,得到含水印的秘密视频。
表3 视频加密性能
在视频的接收端,本文进行了如图5所示的几种操作。在仅做解密之后,视频中还包含水印,所以有一定的失真,但水印本身带来的失真以及对码率的影响都应该尽可能地小,所以本文与文献[8]中提到的直方图平移方案做了对比,结果如表4、表5所示。从表中可以看出,使用本文的方案得到的含水印视频的码率低于文献[8]的方案,且含水印视频的SSIM高于文献[8]的方案。仅作认证或者认证后再去除水印而未解密的视频,即使其SSIM有轻微的变化,其加密的效果也不受影响,如图7所示。另外,在运行效率方面,本文的方案与文献[8]的方案没有显著的差别,对于30帧1 080 p视频,使用酷睿i5-4590处理器,加密和加密域水印嵌入总共用时在0.5~1.0 s之间。
最后,为了测试认证的效果,把视频解密后进行了篡改,把松鼠手中的栗子换成草,对于认证失败的LCU,该方案可以将其定位,在实验程序中将该LCU中的DCT系数随机修改,可以使被篡改区域变成模糊的方块,以便人眼能够观察到,如图8所示。
表5 文献[13]的嵌入方案
图7 水印对已加密视频的影响
图8 对被篡改的LCU的定位
本文提出一种视频加密域可逆水印方案并将其用于认证加密中。该方案选择视频的预测残差DCT系数的符号和QP残差的符号做加密,并在DCT系数中使用改进的直方图平移算法嵌入可逆水印,既保护了视频的内容安全性,同时又实现了视频的完整性认证。水印具有较强的不可见性,而加密也有较强的视觉安全性,与以往类似工作[3,8]相比,本文的方案实现了水印和加密的分离,更具灵活性,同时水印嵌入导致的失真更小。而且在加密、水印嵌入、解密、认证的过程中视频不需要完全解码,这保证了整个算法的效率。实验结果表明该方案对视频的码率影响极小,也能实现认证加密的功能。
[1] 刘敏. 数字视频水印技术综述[J]. 微型机与应用,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标准中基于感知加密算法的视频加密方案[J]. 电子技术应用,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
江苏省自然科学基金-面上研究项目(BK20141209); 苏州市应用基础研究项目(SYG201543)
TN919.81
A
10.19358/j.issn.1674- 7720.2017.14.002
项煜东,吴桂兴.一种基于加密域可逆水印的H.265视频认证加密方案[J].微型机与应用,2017,36(14):4-7,13.
2017-02-21)
项煜东(1991-),男,硕士研究生,主要研究方向:多媒体信息安全。
吴桂兴(1972-),通信作者,男,博士,讲师,主要研究方向:信号处理,多媒体信息安全。E-mail:gxwu@ustc.edu.cn。