基于整数动态耦合帐篷映射的视频加密算法

2019-12-12 07:30:24刘建东张世博
计算机应用与软件 2019年12期
关键词:码流密钥加密

刘 博 刘建东 陈 飞 钟 鸣 张世博

1(北京石油化工学院信息工程学院 北京 102617)2(北京化工大学信息科学与技术学院 北京 100029)

0 引 言

H.264/AVC具有低码率、强容错能力等特点,被广泛应用于视频通信等多个领域[1-2]。基于H.264/AVC协议的选择加密算法对关键数据加密,具有加密效率高、实时性强等优点[3],然而较少的加密数据会降低加密效果,导致视频信息泄露。混沌模型具有伪随机性、初值敏感性,适用于视频加密领域[4-5]。然而高维混沌求解时间过长,会消弱视频传输的实时性,进而通信失败。正确的加密位置与高质量的伪随机序列可以避免以上问题,因此视频加密的关键在于加密效率与加密安全二者兼顾。

加密效率取决于加密数据选取。加密数据为帧内预测模式、运动矢量差、熵编码参数等。文献[6-8]分别对MVD幅值、色度块、熵编码参数加密,加密效果良好,但时间耗费大。因此基于视频编码协议及视频序列安全性,通过分析视频码流来设计加密算法,进而减少加密数据,提高加密效率。加密安全依赖于伪随机序列模型的密码学特性。伪随机序列模型主要为RC4、混沌模型等。文献[7-10]分别采用分段线性混沌映射、线性反馈移位寄存器、RC4、5阶超混沌等方法生成伪随机序列,加密效果良好,但在加密效率或安全方面有缺陷。然而基于整数域的时空混沌模型,既保持了低维混沌的序列生成效率,又具有高维混沌的序列安全性。

为提高加密效率和系统安全性,本文提出了整数动态耦合帐篷映射模型优化形式,并从安全性和实时性考虑,引入两级加密方案。实验结果表明:该方案的加密效果良好,混沌模型的安全性高,生成速度快,适用于对实时性和安全性需求较高的视频通信领域。

1 密钥生成算法

1.1 整数动态耦合帐篷映射模型

1.1.1耦合映象格子优化形式

耦合映象格子模型[11](coupled map lattice,CML)的数学表达式为:

f(xn(i+1))]

(1)

式中:非线性函数f选择非线性帐篷映射函数;ε为耦合系数,且满足0≤ε≤1;n为迭代步数;i=1,2,…,L为格点坐标,L为系统格点数;模型的边界条件由xn(0)=xn(L)、xn(L+1)=xn(1)实现,初值为[0,1]内的随机数。由于CML模型相邻格点耦合具有较大的安全性缺陷,为解决此问题,可将耦合机制设为猫映射,同时去掉耦合系数。整数非线性耦合映象格子模型[12]的数学表达式为:

xn+1(i)=[f(xn(i))+f(xn(j))+f(xn(k))]mod 2a

(2)

式中:n、i、L的含义与模型相同;mod为取模运算;a为系统的位数,2a为系统的可容纳的最大状态值;j、k为空间格点坐标,由猫映射决定;f为整数动态帐篷映射。

1.1.2整数动态耦合帐篷映射模型

整数动态帐篷映射具有良好的均匀分布特性、拉伸与折叠特性,同时克服了整数帐篷映射的短周期问题,避免了实数域向整数域的转换,能够快速生成高质量的整数混沌伪随机序列[13]。其数学形式为:

(3)

gn(i)=(xn(i)+ki)mod 2a

(4)

式中:a、n、i、mod、f含义与CML模型相同;xn(i)∈[0,2a-1];gn(i)为动态映射输入;ki为函数的动态参量。然而整数动态帐篷映射的拉伸和折叠行为需要反复进行区域判断,影响了混沌序列的产生效率,降低了系统的安全性。为提高整数帐篷映射生成序列效率,将位运算和逻辑运算相结合,引入整数帐篷的等价模型[14]。

((gn>>(a-1))∧1)

(5)

gn(i)=(xn(i)+ki)mod 2a

(6)

式中:k为动态变量;x、g、k、1均采用无符号整型。为提高整数动态耦合帐篷映射模型(Integer Dynamic Coupled Tent Map,IDCTM)的伪随机序列生成效率,采用整数动态帐篷映射等价形式替换整数动态帐篷映射,引入非线性耦合映象格子模型,得出整数动态耦合帐篷映射模型的优化形式[14]:

xn+1(i)=[f(xn(i))+f(xn(j))+f(xn(k))]mod 2a

(7)

((gn>>(a-1))∧1)

(8)

gn(i)=(xn(i)+ki)mod 2a

(9)

耦合映象格子能够快速并行产生伪随机序列,其空间格点耦合的扩散作用以及非线性函数的混淆作用增加了序列的复杂度以及系统的安全性。仿真结果表明,改进后的整数动态耦合帐篷映射模型生成伪随机序列效率显著提高。同时在信息熵、互信息、差值特性、随机性均有良好的性能。

1.2 伪随机序列生成

视频加密过程采用流密码加密,针对视频特性,选择关键位置加密,实现一次一密。

第一步:模型参数初始化,取L=30、p=10、q=8、a=32,序列流长度为200万,并随机产生第一列30个序列初值{x1(1),x1(2),…,x1(30)}。

第二步:通过提出的整数动态帐篷映射优化形式进行迭代,快速生成具有良好独立性和均匀分布性的序列{f2(1),f2(2),…,f2(30)}。

第三步:通过猫映射生成耦合映射格子坐标j、k。再利用耦合映象格子进行序列全耦合,并行生成独立性高的序列{x2(1),x2(2),…,x2(30)}。

第四步:反复迭代产生出所有序列,随机选取6个混沌伪随机序列{key1,key2,…,key6}对相应位置加密。

2 视频加密方案

2.1 码流分析

H.264视频编码标准中规定的编码帧结构均含有I帧,单个I帧的码流贡献至少是P帧的好几倍,存储的视频信息更加丰富,作为视频编码阶段的首个关键帧,其加密性能影响整个视频的加密效果。表1和表2给出9种国际标准视频测试序列的I帧和P帧码流分析。

表1 9种标准视频测试序列I帧码流分析

由表1可知,I帧码流中变换阶段占比较大,说明I帧能量集中在编码残差数据上。然而I帧有效的加密手段为帧内预测模式加密[15],加密后的视频质量主观评价较低。若能对I帧变换参数加密,在保证了I帧的安全性基础上再研究P帧的加密,可提高安全性能。

表2中,P帧码流中预测阶段占比显著增加,变换阶段占比稍大。P帧的加密位置通常为预测阶段的MVD符号处[16],整体加密效果良好,然而初期的P帧MVD符号加密效果不佳。若能分析P帧变化阶段码流并提出加密方案,可提高安全性能。

表2 9种标准视频测试序列P帧码流分析

码流分析结果表明P帧变换阶段占比稍大的原因有两个。一是P帧中宏块预测模式太多太杂,比如Football序列中,P帧I宏块占比较大;Ice和Soccer和Mobile序列中8×8分区较多。二是编码残差总量较大,从而变换系数较多。针对第一个原因导致P帧加密效果不足的问题,将I帧加密方法扩散到全体I宏块,再提出基于P帧的加密方案,消除了这种加密效果不佳的情况。第二个原因则不能降低加密效果。码流分析结果表明,P帧残差均值低于1,即便残差数量大,但量化后大部分都变为0,间接消除P帧残差数据量规模大带来的问题。

图1分别为Foreman、City和Mobile序列I帧加密图,图2分别为以上三种序列初期P帧加密图。

图1表明I帧的帧内预测加密效果不理想,视频轮廓可见,仍有信息泄露的风险。图2显示初期P帧的运动矢量差符号加密效果一般。尽管运动矢量差数值加密效果良好,但MVD数值加密可能会导致视频解密失败[17]。根据上述分析,可以将I帧加密方式用于全体I宏块,既保证了I帧的安全性,也增强了P帧的安全性。

图1 I帧帧内预测模式加密主观效果

图2 P帧运动矢量差符号加密主观效果

2.2 一级加密方案

加密方案采用协议的基本档次。由于基本档次应用在实时传输领域,视频的安全性和实时性侧重于后者。在保证安全性的前提下,通过加密位置选取和加密算法简单化从而不增加编码码流和编码复杂度,可进一步保证视频传输的实时性。

2.2.1帧内预测模式加密

将视频全部I宏块的4×4亮度块的预测模式加密,预测模式编码至少需要4 bit,然而编码过程中使用条件运算符,通过比较预测模式的预测值和真实值,仅需3 bit将预测模式的最终值编码到语法元素rem_intra4×4_pred_mode中。加密方法如下:

(10)

式中:IPM、modeflag为语法元素,代表实际预测模式和预测模式的预测值;key1为IDCTM优化模型并行产生的任意一条伪随机序列;IPMen为加密后的IPM。

2.2.2I宏块CAVLC编码加密

基于内容的自适应变长编码(CAVLC)对量化后的残差系数编码,是编码过程的重要阶段。此处加密位置选择拖尾系数符号与非零系数幅值符号。加密方法如下:

T1sen=T1s⊕key2

(11)

Level_signen=Level_sign⊕key3

(12)

式中:T1s、T1sen为加密前后拖尾系数符号;Level、Levelen为加密前后的非零系数;key2、key3为IDCTM优化模型并行产生的任意一条伪随机序列。

2.2.3P宏块MVD符号加密

P宏块的能量集中在参考帧上,加密MVD符号位,码流影响小,加密效果好。加密方法如下:

MVD_signen=MVD_sign⊕key4

(13)

式中:MVD_sign为运动矢量差符号;MVD_signen为加密后的MVD_sign;key4为IDCTM优化模型并行产生的任意一个伪随机序列。

2.3 二级加密方案

商业上或军事上的视频会议会对视频的安全性提出非常高的标准。在第一级加密方案的基础上,增加新的加密方法,提升加密级别。

2.3.1I宏块DCT变换系数加密

选取I宏块4×4亮度块的DCT系数加密。为避免打乱所有系数的能量分布,仅选取能量最高的DC系数加密即可。加密方法如下:

DCen=DC⊕key5

(14)

式中:DC为直流系数;DCen为加密后的DC;key5为IDCTM优化模型并行产生的任意一条伪随机序列。

2.3.2指数哥伦布编码加密

指数哥伦布编码为变长编码,对Mbit的INFO加密。输入数据codeNum与输出码流INFO对应关系如下:

M=floor(log2(codeNum+1))

(15)

INFO=codeNum+1-2M

(16)

式中:floor为向下取整。指数哥伦布编码根据编码参数k与编码字codeNum映射关系分为四种编码:无符号映射、有符号映射、定制表映射和短码字截断映射。有符号映射编码次数最多,主要是对运动矢量差编码,为保证格式兼容,适合加密。加密方法如下:

INFOen=INFO⊕key6

(17)

式中:INFO、INFOen为加密前后指数哥伦布编码码流信息位;key6为IDCTM优化模型并行产生的任意一个伪随机序列。

3 实 验

3.1 实验运行环境

实验使用H.264/AVC参考模型JM8.6基本档次,电脑处理器为Intel(R) Core(TM) i5-6500 3.20 GHz,8 GB RAM,双核。编码帧结构为IPP…,编码帧数为50,量化参数为默认的28,设置编码CAVLC编码模式编码Foreman、News、Crew、City、Football、Bus、Ice、Soccer、Mobile等九种国际标准视频测试序列。视频序列分辨率为QCIF(176×144),采样格式为4∶2∶0。以上一级加密方案和二级加密方案简称为方案一、方案二。

3.2 主观效果分析

视频图像质量认定非常依赖主观分析[18],采用的测试方法参考ITU-R BT.500-11规定的一些主观标准测试程序。已知原始序列,对加密后的序列进行打分评测从而判断加密效果。选取Foreman、City、Mobile的第五帧作为测试序列,分别如图3(a)、(b)、(c)所示。图3(d)、(e)分别为两种加密方案对3种序列帧的测试结果,结果表明主观上无法理解视频加密后的帧,且第二种加密方案加密效果更好。

(a) Foreman (b) City (c) Mobile

(e) 基于二方案加密(a)、(b)、(c)的结果图3 主观效果对比

3.3 客观效果分析

视频图像质量的主观测试结果一目了然,但在视频图像质量相近时,主观判断的偶然性较大,不具有说服力。视频质量的客观测试可以准确地识别视频图像的质量高低。

3.3.1感知置乱效果分析

视频加密后的加密效果客观分析方法参考视频编解码的视频质量客观评价准则,即峰值信噪比(PSNR)和结构相似性比较(SSIM),可以衡量压缩损失的信息量。其中PSNR公式如下:

(18)

(19)

式中:M、N分别为图像的高度和宽度;x、y为对应像素位置坐标;f(x,y)、f′(x,y)为加密前后图像像素,MSE用来衡量加密前后图像改变度,n为图像像素内存,一般取8。PSNR为峰值信噪比。

视频帧的质量与其PSNR值正相关,当PSNR大于40时,视频帧质量极好;当PSNR在15附近,视频帧质量极差,人类主观无法识别。表3给出使用两种加密方案的9种国际标准测试序列的Y分量的PSNR值。文献[19]、文献[9]的PSNR值在15附近,基本满足加密要求,本文的两种加密方案PSNR值均小于15,说明本文提出的加密方案明显优于前两种加密方案,尤其是第二级加密方案小于10,相对与第一极加密方案,安全性显著提高。

表3 9种标准视频测试序列的PSNR dB

传统的视频质量检测方法PSNR与人类主观视觉测试存在差异,而基于感知SSIM(structural similarity index)方法更符号人类视觉感知,因而常用作评价视频质量的方式。SSIM的计算公式为:

(20)

视频帧的质量与其SSIM值正相关,即SSIM越高,视频质量越好。当SSIM接近1时,视频帧质量极好,非常接近原视频帧;反之当SSIM接近0时,两个视频帧相似度极低,视频质量差。当SSIM在0.1附近,人类主观无法识别视频内容。表4给出使用两种加密方案的9种国际标准测试序列的SSIM值。尽管不同视频序列的SSIM值存在差异,但四种加密方案SSIM值在0.1附近,基本满足加密要求,尤其是第二级加密方案SSIM平均值小于前三种方案,因此优于前三种加密方案。相对与第一极加密方案,安全性显著提高。

表4 9种标准视频测试序列的SSIM

3.3.2压缩比分析

第一级加密方案中和MVD仅加密符号位,帧内预测模式为3位固定长度编码,理论上不影响码流,实际上加密后的预测模式预测时的偏差会对码流产生一些影响。第二级加密方案中Exp-Golomb加密Mbit信息位,不影响码流,DCT变换系数加密会影响码流,但仅选择最少的I宏块中亮度DC系数加密,影响有限。以上加密位置的选取均不影响视频编码格式。9种标准视频测试序列的码流长度如表5所示。

表5 9种标准视频测试序列的码流长度

续表5

可以看出,码流长度增加的百分比范围为-1.175%~2.8%,码流有的增加,有的减少,但大部分码流长度增加的百分比小于1,加密对码流的总体影响可忽略。

3.3.3时效性分析

实时视频传输对编码效率要求较高,基于视频编码的加密方案在保证安全性的基础上,应尽力避免增加编码时间。加密算法的加密数据量、加密操作复杂度、以及伪随机序列的产生速率是视频加密时间耗费增加的主要方面。本文提出的加密方案在保证视频加密的有效性和视频格式兼容性前提下,采用较少的加密数据,简单的异或操作,同时混沌模型为整数动态耦合帐篷映射模型,进一步降低了视频加密对视频编码的时间耗费。9种标准视频测试序列的编码时间耗费如表6所示。

表6 9种标准视频测试序列编码时间耗费

可以看出,不同序列编码时间耗费差异较大,这是由于各个序列中单个帧宏块预测模式组成不同引起的。其中加密方案一、方案二对视频编码的影响都比较小,且比较接近,方案二的时间耗费稍大,但其安全性较高。模型生成伪随机序列的数目和长度对系统的安全性和时效性影响较大,随着编码帧的增加,产生伪随机序列的时间固定不变,总的编码时间耗费百分比降低。实时视频传输时,编码传输单位为帧级别,时间耗费更低。

3.4 安全性分析

3.4.1密钥空间分析

加密方案的密钥包括混沌模型的初值x1(1)、x1(2) 、…、x1(L),参数(p、q、ki)。为保证视频加密安全性,其密钥空间不小于2128。由于整数动态耦合帐篷映射模型初值数量L=30,关键参数数量为3,密钥长度为32位。所以密钥空间为2(32×33)=21 056,完全能够抵挡穷举攻击。33个密钥中任一个发生变化,产生的30个混沌伪随机序列将会改变。同时该模型能够并行快速产生L个伪随机序列,L的值可以无限大,进而会拓展密钥空间无限大。加密方案的安全性非常高。表7为密钥空间对比。

表7 密钥空间对比

3.4.2密钥敏感性分析

图5为密钥敏感性分析。选取mobile序列第五帧,密钥改变1 bit加密。解密效果如图4所示,其中(a)、(b)、(c)使用一级加密方案,(d)、(e)、(f)使用二级加密方案。图4(a)、(d)为未使用密钥直接解码图像,图像加密效果良好,(b)、(e)为使用对称密钥正确解密图,(c)、(f)为使用改变一位的密钥解密图,解密失败,因此密钥敏感性良好。

(a) 无密钥图 (b) 正确密钥图 (c) 密钥变化图

3.4.3直方图分析

如图5所示,分别对Mobile序列第5帧以及采用不同密钥加密的第五帧进行直方图分析,结果如下:两种加密方案在采用不同密钥后,直方图均发生了很大的变化。图5(c)相对于(b),灰度值分布更加均匀,(f)相对于(e),灰度值分布趋势完全改变。由此可以看出,两种加密方案均能抵抗差分攻击和统计学攻击。

(a) 加密原图直方图 (b) 方案一加密直方图 (c) 方案一加密2直方图

3.4.4替代攻击分析

替代攻击是唯密文攻击,通过将加密后的语法元素设为固定值,进而正确解密整个视频。将加密后的mobile序列第5帧的帧内预测模式设为最可能的模式值,分别对两种加密方案解密。图6(a)、(b)分别为方案一、方案二的替代攻击图。替代攻击结果表明,两种加密方案均能抵挡替代攻击。

(a) 方案一替代攻击 (b) 方案二替代攻击图6 替代攻击

3.4.5数据兼容与可操作性分析

加密后的码流符合标准协议H.264/AVC要求,加密后的视频格式以及加密过程中的控制信息未发生改变。加密后的视频能够正常解码并播放。同时,加密后视频流可以进行图像块剪贴、增加、删除以及码率控制等基本操作。因此两种加密方案均具有良好的数据兼容与可操作性。

3.4.6比较分析

表8列出近几年研究者们提出的几种视频加密方法,分别从四个方面对比。结果表明,本文的加密方案计算复杂度低,不增加比特率,同时采用时空混沌模型,安全性高,生成伪随机序列快,完全满足视频加密的实时性和安全性需求。

表8 比较分析

4 结 语

给出了基于位运算的整数动态耦合帐篷映射模型,提高了伪随机序列生成效率,拓展密钥空间为21 056,增加了安全性。通过分析I帧、P帧的码流,针对不同的应用领域,提出了一种视频加密算法,从而产生加密效率和加密安全的两级加密方案。实验结果表明,本文算法减少了加密数据量,保证了视频加密的安全性,视频加密效率和加密安全性均得到提升,在视频加密效果的主客观分析和安全性分析方面均显示出良好的性能。

猜你喜欢
码流密钥加密
探索企业创新密钥
分布式码流实时监控与录制系统的设计与实现
电视技术(2021年8期)2021-10-21 08:19:48
数字电视TS码流协议简要分析
视听(2021年8期)2021-08-12 10:53:42
密码系统中密钥的状态与保护*
一种基于熵的混沌加密小波变换水印算法
一种对称密钥的密钥管理方法及系统
基于ECC的智能家居密钥管理机制的实现
电信科学(2017年6期)2017-07-01 15:45:06
认证加密的研究进展
基于ECC加密的电子商务系统
一种比较ASN.1码流差异的方法