一种鲁棒的H.264加密方案

2010-12-22 11:46詹志飞
重庆三峡学院学报 2010年3期
关键词:压缩比复杂度矢量

詹志飞

(重庆师范大学物理学与信息技术学院,重庆 400047)

H.264是由ITU-T和ISO/IEC联合制定的新一代视频编码标准.相对于以前的标准H.263和MPEG4,H.264具有更高的压缩效率.图像重建质量相同时,H.264能够节省30%~50%的码率.其原因为H.264在预测、变换、量化以及熵编码等方面有了重要改进.主要表现在:

1)H.264引入了帧内预测的方法,利用相邻宏块的相关性对待编码的宏块进行预测,对预测残差进行变换编码,以消除空间冗余.

2)在运动预测与运动补偿上,采用了可变块大小、多帧运动估计、亚像素精度的运动估计以及去块效应滤波等技术来降低时间冗余度.

4)熵编码方面,H.264建议了两种方案,即CABAC和CAVLC.其中CAVLC是基于符号概率的统计编码方法,各类语法元素使用统一的码表,并根据已编码语法元素的情况动态调整编码中使用的码表,以求达到更高的编码效率;CABAC是基于区间划分的算术编码方法,编码效率很高,但缺点是算法相对复杂,编解码速度较慢.

新标准H.264优异的压缩性能必将使其在多媒体应用的各个领域发挥重要作用,如视频点播、视频监控和视频会议等.因而其安全加密技术正成为研究的热点.

本文在分析和总结前人工作的基础上,提出了一种鲁棒的H.264加密方案.

1 现有算法及分析

人们对加密后的多媒体视频数据不但要求安全性高,而且要求实时性好、不改变压缩比以及支持直接码率控制等.最近十年来,根据多媒体视频内容的保密需求,出现了许多相应的视频加密算法.

为了减少加解密的处理时间,文献[1]提出了一种仅针对I帧加密的视频加密算法,并指出由于P帧和B帧以I帧作为参考帧,可以在一定程度上继承I帧的安全性.这种算法相对于全加密将处理时间减少了80%~85%.但文献[2]证明了其安全性较低,并对其作了一定的改进,即加密I帧和P/B帧中的所有I块.这种策略虽只将处理时间减少到全加密所需要的65%~75%,但是提高了安全性.然而,文献[2]也注意到播放加密后的码流时泄露了重要的运行信息.为了克服此问题,文献[3]提出了一种对I宏块和预测宏块头信息选择加密的算法,并给出了三种安全等级的改进.

如果直接置乱块内 DCT系数,将显著地改变系数分析的统计特性,压缩比降低明显.文献[4]提出将块内64个DCT系数按频带划分为三段,然后根据不同的安全性要求选择相应的段置乱加密.但其压缩比仍降低了15%~25%.[9]为了尽量不影响压缩比,文献[5]提出加密DCT系数符号位的方法,但文献[8]指出加密所有系数符号位将使运算复杂度增加15%~20%.

文献[6]利用H.264的帧内块编码特性,提出了一种简单有效的数字视频置乱方法.该算法仅对 I帧中的4х4和16х16块预测模式分别进行随机置乱.只要修改帧内预测模式,视频序列就很容易被置乱.但是从算法性能分析和实验结果可以看出,这种算法的安全性比较低,主要原因为:①仅对 I帧进行了置乱,虽然视频变得模糊,但其运动信息还是清晰可见的;[2]②采用了定长伪随机序列,难以抵抗已知明文攻击,如果序列周期不够长,攻击者通过Friedman穷举攻击就能够猜测出原始序列;③根据H.264标准和统计测试结果表明,当QP = 30时,大约只有50%左右4х4块的预测模式采用三位二进制编码,即对于一帧GIF图像如果全部采用4х4块编码,其穷举空间为[352х288/(4х4)/2]3= 31794757632.

据野外钻探成果显示,该场地钻探深度内主要岩性为灰岩。中风化基岩岩体较完整,根据物探声波测试报告,本场地中等风化基岩完整性系数0.56~0.67,为较完整岩体。对各中风化岩体基本质量等级评价如下:灰岩饱和单轴抗压强度标准值53.24 MPa,属较硬岩,岩体较完整,确定本场地灰岩岩体基本质量等级为III级。

2 H.264加密方案

根据以上算法的分析,针对H.264视频流的具体特性,提出了一种加密方案(图1).在帧内,沿用4х4块预测模式置乱;在帧间,对具有相同数目运动矢量的预测块进行了块间置乱;对整数变换系数,只对拖尾系数(±1)符号位进行加密;为了降低计算复杂度,对运动矢量采用选择加密.所有置乱和加密过程都是由一个密钥生成分布系统控制.

图1 H.264视频加密方案

2.1 帧内预测模式置乱

文献[6]中提出的帧内预测模式置乱是简单而且有效的,其安全性主要取决于其使用的伪随机序列.由于定长伪随机序列很难抵抗已知明文攻击和穷举攻击.在此,对其作了改进:将定长伪随机序列变成混沌序列生成器生成的随机序列.对于4х4块预测模式置乱过程如下:

预测模式new=预测模式old⊕3比特伪随机序列其中⊕为异或运算.

这种方法简单易实现.由于预测模式new和预测模式old的长度相同,即运算前后的码长相同,按上述方法置乱后没有改变压缩比;而且由于使用了混沌伪随机序列,安全性较高.

2.2 帧间预测模式置乱

H.264提供16х16、16х8、8х16和8х8四种宏块划分方式,还能将8х8宏块进一步划分成8 х4、4х8和4х4子宏块.每个宏块都有明确数目的运动矢量,因此,对于一对具有相同数目运动矢量的块,如16х8块和8х16块,8х4块和4х8块,它们之间可以用来置乱.方法如下:

生成1比特伪随机序列

将具有相同数目运动矢量的预测块进行了置乱,实现简单,没有增加计算复杂度和改变压缩比.

2.3 拖尾系数符号位加密

由于在4х4块中,非零系数数目为0~16,拖尾系数(±1)数目为0~3.如果±1的个数大于3个,只有最后3个被视为拖尾系数,其余均被视为普通的非零系数.如果对所有非零系数都加密的话,显然计算复杂度很大.在这里,只对拖尾系数的符号位进行加密.加密过程如下:

拖尾系数的符号位new=拖尾系数的符号位old⊕3比特伪随机序列

文献[8]指出,如果对所有DCT系数的符号位都加密,计算复杂度增加15%~20%.很难满足实时性要求.这里只对 DCT系数中一类特殊的系数——拖尾系数(±1,4х4块中最多3个)符号位进行了简单的异或运算,几乎没有增加计算复杂度,显然也不影响压缩比.

2.4 运动矢量加密

文献[7]指出,运动矢量数据占据了超过一半的视频流带宽,忽视它们的安全显然不明智.文献[7]还利用运动矢量具有聚集的特征,提出了一种视频恢复算法,只需要运动矢量就可以恢复出低分辨率的运动对象等重要信息.可见,对运动矢量的加密显得非常重要.运动矢量数据量很大,为了降低计算复杂度,对运动矢量采用选择加密,加密过程如下:

计数器用来记录已经被预测的某种宏块块数;间隔块数为经验值,可以在实验中选定,文献[3]中指出其最佳值为3;N的值取3时加密效果最佳.这种方法既有效地加密了视频流中重要的运动信息,同时很大程度地降低了计算复杂度,能够满足实时性要求.MV.x和MV.y前后长度相同,也没有改变压缩比.

2.5 密钥生成分布系统

采用了二维的超混沌系统进行加密,密钥空间大,加解密速度快.用户密钥是用来生成二维混沌序列生成器的初始值.初始值一旦确定,就可以得到随机性能很好的混沌序列.将此混沌序列量化成二进制序列,然后用于帧内、帧间置乱和拖尾系数符号位加密以及运动矢量的选择加密.

2.6 解密

解密是加密的逆过程,如对运动矢量进行解密时,授权用户拥有加密时同样的密钥,就可以生成同样的密钥序列.从序列中读入加密时使用的同样的N位随机序列,进行异或操作,就可以重建原始图像序列.解密过程如下:

3 加密方案分析

3.1 安全性分析

该加密方案对整个视频流进行了完全的加密.相对于文献[3,5~7]中的加密算法,该方法具有更高的安全性.其采用了二维混沌序列生成器生成的流密码对整个视频流进行加密,算法的安全性较高.对于穷举攻击分析,入侵者如果想获取用户密钥,必须破译二维混沌系统.如果混沌序列生成器的初始值长度为64位,则其穷举空间为2128.因此,采用穷举攻击来进行解密是极为困难的.

3.2 计算复杂度

该方案主要由简单的异或运算和选择加密所组成,计算复杂度相对来说是比较低的.帧间预测模式置乱只是简单地对具有相同数目的运动矢量进行置乱,不增加计算复杂度.对数据量最大的运动矢量,采用选择加密(每间隔两个预测块加密一次);对整数变换系数,只对拖尾系数符号位进行加密.

3.3 压缩比

从整个加密过程可以看出,该方案对压缩比几乎没有影响.主要原因在于其加密过程都是在码流存储时作一些简单的置乱或加密操作,没有改变DCT系数的统计特性.

3.4 实验结果

采用标准的视频序列Foreman.cif和Mobile.cif进行测试,加密后的I帧、P帧和B帧图像它们都不可辨别.可见,该方案对I、P和B帧都有很好的加密效果,安全性较高.

4 结束语

根据最新视频编码标准H.264视频流的具体特性,在分析了现有的视频加密算法,取其所长,提出了一种鲁棒的H.264加密方案.该方法的特点是:

1)安全性.不仅对整个视频都进行了加密,包括帧内、帧间、运动矢量和整数变换系数,还采用了二维混沌序列生成器,增加了流密码算法的安全性.

2)实时性.整个加密过程都只采用了简单的异或运算,并选择加密了运动矢量和整数变换系数中的拖尾系数,能够满足视频流实时性要求.

3)压缩比.相对于DCT系数置乱或DCT系数分段置乱方法,几乎不影响压缩比.

4)所有置乱和加密都不影响编码过程,支持直接码率控制;采用了流密码加密,将码流控制精度保持在位一级,误码弹性较好.

[1] G A Spanos, T B Maples. Security for Real-time MPEG Compressed Video in Distributed Multimedia Applications// Proc of the 15thAnnual International Conference on Computers and Communications. Scottsdale, USA, 1996:72-78.

[2] A M Alattar, G I A1-Regib. Evaluation of Selective Encryption Techniques for Secure Transmission of MPEG Video Bit-streams// Proc of the 1999 IEEE Symposium on Circuits and Systems. Orlando, USA, 1999:340-343.

[3] A M Alattar, G I A1-Regib, S A Semari. Improved Selective Encryption Techniques for Secure Transmission of MPEG Video Bit-Streams// Proc of the IEEE International Conference on Image Processing. Kobe, Japan, 1999:256-260

[4] A S Tosun, W C Feng. Efficient Multilayer Coding and Encryption of MPEG Video Streams// Proc of IEEE International Conference on Multimedia and Expo. New York, USA, 2000:119-122.

[5] C G Shi, B Bhargava. A fast MPEG Video Encryption Algorithm// Proc of the 6thACM International Multimedia Conference. Bristol, UK, 1998:81-88.

[6] J Ahn, H J Shim, B Jeon, et al. Digital Video Scrambling Method Using Intra Prediction Mode/// Proc of 2004 Pacific-Rim Conference on Multimedia. Springer-Verlag, 2004:386-393.

[7] Z Liu, X Li. Motion Vector Encryption in Multimedia Streaming// Proc of the 10thInternational Multimedia Modeling Conference. 2004:64-71.

[8] W Zeng, S Lei. Efficient frequency domain selective scrambling of digital video[J]. IEEE Transactions on Multimedia, 2003, 5(1):118-129.

[9]廉士国,王执铨.基于熵编码加密的MPEG视频加密算法研究[J].小型微型计算机系统,2004,25(12):2207-2210.

猜你喜欢
压缩比复杂度矢量
矢量三角形法的应用
质量比改变压缩比的辛烷值测定机
一种低复杂度的惯性/GNSS矢量深组合方法
求图上广探树的时间复杂度
基于矢量最优估计的稳健测向方法
三角形法则在动态平衡问题中的应用
某雷达导51 头中心控制软件圈复杂度分析与改进
出口技术复杂度研究回顾与评述
低温废气再循环及低压缩比对降低欧6柴油机氮氧化物排放的影响
高几何压缩比活塞的燃烧室形状探讨