大家都知道,最初的视频加密方法可以称为直接加密算法,该加密算法没有利用视频数据的任何特性,仅仅将视频比特流与传统的文本数据同等对待,直接将视频图像数据用标准加密算法,比如DES,AES等进行加密,虽然这可能是最安全的视频图像加密方法,但是由于视频数据量非常大,使得该算法计算复杂度较高,实时性较差,所以在实际当中很少使用,另外一类视频图像加密算法称为选择性加密算法Aegis算法,VEA算法等,这类视频图像加密算法不同于传统的加密算法,它利用了视频数据的特性,仅仅对全部数据的一小部分进行加密,在多媒体数据传输过程中能用很小的计算复杂度来达到较高的安全性。

一、基于混沌序列的视频流部分加密

1、基于混沌序列的视频流部分加密系统设计

通过对国内外该领域内的专家学者的研究和发表的论文进行了大量的研究分析,我们采用了选择性加密算法的思想,结合视频流的实际应用要求,将混沌引入了选择性加密视频加密算法中,提出了一种新的视频图像加密算法——“基于混沌序列的视频流加密”(Encryption Algorithm for VideoStream Based on Chaos Sequence, EVSBC)算法,这是一种融合了加密和压缩的方案,其中应用的加密算法是频域选择性加密算法,在进行算法设计过程中,我们总结出了考虑视频加密算法时需要考虑的几个问题:

(1)多媒体数据和通常的电子信息有一个非常突出的不同点就是多媒体数据的价值比较低,但是数据量或数据速率又非常高;

(2)视频信息相对于其他类型的数据,对于实时性的要求非常高;

(3)通常数字图像传输系统都包含压缩模块以减少传输的比特率,这就要求必须很小心地设计加密方法,防止对压缩效率造成潜在的负面影响;

(4)由于时域上的选择性视频图像加密算法主要是在空间上直接对图像进行扰乱,这样会极大地改变原始图像的统计特性,这就使得图像压缩变得非常困难。

本文所提出的方法是在视频图像的变换域即频域由混沌序列对视频数据进行加/解密,在频域进行加/解密操作,由于低频变换系数的方块效应,使计算量大大降低。视频图像的变换域由DCT变换即离散余弦变换得到。

对于N×N的输入抽样值矩阵,经过DCT变换得到N×N的系数矩阵。DCT变换可表示为:

基于混沌序列的视频流部分加密

IDCT表示为:

基于混沌序列的视频流部分加密

(1)、(2)式表示为累加和的形式。

基于混沌序列的视频流部分加密2、混沌系统及应用

混沌现象是非线性动态系统中出现的确定性的伪随机过程。这种过程是非周期的、整体上稳定而在局部上具有扩张性,它对初始条件的敏感性以及混沌信号的宽带性是好的密码系统的重要特征。

在本文提出的系统中采用的是广泛应用的混沌系统Logistic映射,研究表明,一维Logistic混沌映射产生的混沌序列具有均值为零,自相关近似为冲激函数,互相关为零的类似白噪声的概率统计特性,其根本特性是对初值的极端敏感性。Logistic映射由下式给出:

基于混沌序列的视频流部分加密其中μ∈(0,2],xn∈[一1,1]。

文章考虑满映射(μ=2)的情况,满足条件时,由该映射产生的序列呈现出混沌态,即迭代后的终值xn与初始值x0、系统参数μ及迭代次数有着非常敏感的关系,参数的细微之差将得到截然不同的终值Xn;而且生成序列{Xk,k=0,1,2,3,…}具有混沌序列特性,由(5)式以0.345 6为初值产生的混沌时间序列如图1所示。

基于混沌序列的视频流部分加密图2是该序列的功率谱。

基于混沌序列的视频流部分加密 将(5)式中产生的实值混沌序列变换成GF(2)域中的二进制序列:

基于混沌序列的视频流部分加密

其中sgn(…)是符号函数。就得到了混沌序列的二值量化序列{yk,k=0,1,2,3,…},该序列在EVSBC系统中作为控制频域选择性加密的伪随机序列。

3、系统实现

文章将提出的EVSBC集成到目前最新的MPEG -4视额编/解码器中。编码器部分,该算法在MPEG一4压缩编码的过程中引入基于混沌序列的视频流加密。具体实现流程是:

(1)生成分别用于加密直流分量(DC),交流分量(AC)及运动矢量(MV)的混沌序列;

(2)视频图像完成运动补偿和进行DCT变换,分别得到MV分量和变换系数;

(3)进行量化编码;

(4)每个宏块(Macroblock)的DC,AC分量和MV分量分别与相应的混沌序列进行异或运算,即相当于用相应的混沌序列随机地改变DC,AC分量和MV分量的符号;

(5)进行压缩编码;

(6)对每帧图像重复至结束。其框图如图3所示。

基于混沌序列的视频流部分加密
解码器部分的设计和编码器部分的设计基本是相反的。解码器将接收到的经过加密的压缩比特流,首先进行解压缩,得到加密的变换系数和运动矢量。加密的变换系数和运动矢量又在与加密端完全相同的混沌序列的作用下进行解密,之后,就可按标准的步骤进行逆变换,最后得到重构的视频帧,完成解码和解密的过程。集成解密的MPEG -4解码器示意图,如图4所示。

基于混沌序列的视频流部分加密

系统的示意图中虚线框中的部分,即是集成到标准MPEG -4编码器中的基于混沌序列的选择性加/解密模块,完成对视频图像数据的加/解密操作。加密端和解密端的加/解密部分是在2个独立的、完全相同的混沌系统的控制下完成的,2系统间不存在耦合关系。

EVSBC的加密过程相对而言很简单,但是很有效。可以提供不同加密级别,本文提出的视频图像文件加密系统的另一个重要特点是对运动矢量的有效加密。许多专业资料中提出的加密算法往往只是注重了对变换系数的加密,而忽略了运动矢量的重要性。

二、基于混沌序列的视频图像加密性能评估

1、安全性分析

首先,混沌系统对初始值和参数非常敏感,可以提供很大的密钥集合,完全满足加密的需要。由于混沌的内在随机性、初值敏感性确保了混沌序列中“0”与“1"的出现次数均服从二项分布,概率均收敛于1/2.这样使得该函数的设计在概率意义上是不可预测的。

其次,混沌加密属于流密码,对分组加密的攻击方法是无效的。同时,对选择明文/密文攻击方法,由于混沌序列的单向性和混沌信号的迭代处理,异或操作后密钥流的推断几乎不可能。加密操作和视频压缩的集成也在一定程度上增加了破解的难度,文本文实现了EVSBC算法之后,进行了一系列的实验。

采用细节较丰富的标准测试图像序列mobile—qaif.yuv进行实验。

基于混沌序列的视频流部分加密

基于混沌序列的视频流部分加密

图5是从标准测试图像序列molnle—qcif.yuv中提取出的原始图像帧,图6是对该帧图像的DCT变换系数的AC分量进行加密后得到的结果。从图中可以很直观地看出,该帧视频图像已经被有效地加密,整幅图像已经模糊不清。

基于混沌序列的视频流部分加密
图7是图6(AC系数加密后的图像)右上角区域的局部放大,从图中可以非常明显地看到图像已经被混沌序列随机扰乱了。

基于混沌序列的视频流部分加密图8则是由同一 Logistic混沌映射Xn+1=f(Xn)=1- μX2n,但是取与加密序列不同的初始值x0=0. 3458得到的混沌序列对加密后的图像进行解密得到的结果,从中可以看出,该帧图像整体上依然是模糊的,无法辨认细节内容,因而,可以说,如果接收方不能获得正确的混沌序列,那么加密后的图像是不能正确解密的。

2、代价分析

算法的代价主要包括时间代价和空间代价,时间代价又分为准备时间和加密时间,通常,加密前的准备时间主要是用来完成生成子密钥,即生成混沌序列;加密时间主要是在子密钥的控制下对明文数据进行变换所需时间。

本文提出的EVSBC属于流密码的范畴,其准备时间非常短,加密时只是对视频数据进行选择性的异或操作。其总的运行时间相对于目前流行的分组加密算法来说也是很少的,表1就是EVSBC算法和用IDEA加密视频文件的对比数据。

基于混沌序列的视频流部分加密
空间代价分为算法实现的静止空间和运行态空间。EVSBC算法没有S- box空间,临时变量也比较少,而且,它通过循环产生密钥流,循环过程中需要寄存的变量有限,因此,其运行时占用的空间很少。在空间代价上是比较优秀的。

此外,本文提出的基于混沌序列的视频图像加密系统是一个融合了加密和压缩的方案,该方案充分考虑了多媒体数据的特点,在频域对数据进行有效地加密,同时对压绾效率几乎没有负面影响,表2和表3分别是对大小分别为11 404 800 bytes和11 407 360 byte的标准测试序列foreman一qcif.yuv和mobile一qcif,yuv在正常压缩和带EVSBC加密的压缩结果的对比。

基于混沌序列的视频流部分加密
本文提出了一种基于混沌序列的视频流部分加密方法,该算法针对视频图像数据的特点在混沌序列的控制下在变换域对视频数据进行扰乱。实验表明该算法实现特性较好,具有较高的安全性和实用价值。

小知识之视频流

视频流(Video Streaming)是指视频数据的传输,例如,它能够被作为一个稳定的和连续的流通过网络处理。因为流动,客户机浏览器或插件能够在整个文件被传输完成前显示多媒体数据。视频流技术基于 2 密钥技术,视频译码技术和可升级的视频分发技术发展。