配色: 字号:
高性能视频加密算法研究 (1)
2014-05-14 | 阅:  转:  |  分享 
  
高性能视频加密算法研究

杨发毅张静昌

(第二军医大学图书馆上海200433)

【摘要】视频信息已经成为数字图书馆的主要信息存储方式,其版权和安全已经成为一个重要的问题。

讨论了几种典型的视频加密算法,并提出了一种新的高效视频加密算法。

【关键词】视频加密数字图书馆FRMVEA【分类号】G250.76

StudyonHighPerformanceVideoEncryptionAlgorithm

YangFayiZhangJingchang

(LibraryoftheSecondMilitaryMedicalUniversity,Shanghai200433,China)

【Abstract】Thevideoinformationhasbecomethemaininformationstoragewayofthedigitallibrary.Thevideo

information’scopyrightandsafealsobecomeaimportantquestion.Thisarticlediscussesseveralkindoftypicalvideo

encryptionalgorithms,andproposesahighlyeffectivevideoencryptionalgorithm.

【Keywords】VideoencryptionDigitallibraryFRMVEA

收稿日期:2005-10-14

收修改稿日期:2005-12-01

1引言

随着存储和编码技术的发展,视频得到了广泛的使

用。数字图书馆作为建立在Internet上的一种巨大的国

家级文化信息基础设施,以数字化的格式存储了大量的

视频类型的信息并能对存储的信息资源进行高效的管

理。它为数字视频的传播提供了一个网络化的平台。

但是,随着数字图书馆的不断发展,视频信息的安全

与版权问题,也不可避免的出现在我们面前。如何对授

权的视频信息进行保护,使其在限定的范围内传播,使

用,已经成为数字图书馆建设面临的重要问题。

目前,对视频信息的主要保护来自对视频信息的加

密。目前,世界上比较流行的用于MPEG视频标准的加

密算法分为两大类型。一种类型是对视频流的数据全部

加密,这些算法虽然安全性能很高,但同时加密速度非常

慢,并且花费昂贵;一种类型是根据MPEG视频流的结

构,对某些特定帧进行加密,即选择性加密算法,如VEA

视频加密算法,它只对MPEG视频压缩中DCT系数的标

志比特进行加密。这种算法安全性能比较高,同时加密

速度比较快,而且帧的大小基本不发生改变,但是,这种

加密算法也有其明显的缺陷,那就是可能遭受攻击而被

破解[1,2]。

本文中,作者提出一种新的快速MPEG视频的实时

加密算法FRMVEA(FastRealMpegVideoEncryptionAl2

gorithm)。新算法在VEA加密算法的基础上进行了几个

方面的改进:第一,FRMVEA使用合适的密钥来加密数

据,其安全性能有明显的改善;第二,FRMVEA算法对宏

块中交叉的Y块和色度块Cr,Cb之一进行加密,相比

VEA算法只对所有Y块进行加密,FRMVEA算法不仅加

密强度提高了,速度也更快了;第三,FRMVEA通过确定

的DCT系数的标志比特个数来降低加密的计算复杂性。

实践证明,FRMVEA加密算法具有加密速度非常快,加密

强度高,多余消耗少等特点,易于用软、硬件实现,是一种

简单、实用、高效的视频加密方法。

2MPEG视频加密原理和几种MPEG视频加密算法

介绍

2.1MPEG视频编码原理

见参考文献[4-6]。

2.2几种MPEG视频加密算法介绍

(1)完全加密算法(NaiveAlgorithm)。它用传统的密码直

接加密数据,算法安全性很高,但是改变了原来的数据格式,

同时计算复杂度较高。最直接的方式就是用标准的加密方式

(如DES)对视频进行加密,将视频比特流同传统的文本数据

同样对待,没有利用视频压缩后数据流的特殊结构。这种方

法显然计算量巨大,很难保证视频的实时传输。

·74·

《现代图书情报技术》2006年第3期信息检索技术总第134期

(2)选择性加密(SelectiveAlgorithm)。基本的Selective

Algorithm基于I、P、B帧结构且只对I帧进行加密,由于帧间

关联以及P、B帧中未加密的I块,导致此基本方法不安全。

Tang提出新的改进方法,称为SECMPEG,它将SelectiveAlgo2

rithm和附加头文件信息结合起来,可以使用两种传统的加密

方法DES和RSA实现4个级别的安全性:

①加密所有格式头信息;

②加密所有的格式头信息及DCT的DC系数和较低层的AC系

数;

③加密I帧、P帧和B帧中所有的I块;

④加密所有数据。

可见,这4个级别的安全性是由低到高递增的,但是SEC2

MPEG并不能与MPEG标准兼容,需要专门的解码器播放。

(3)Zig-Zag置乱算法(Zig-ZagPermutationAlgorithm)。

Zig-Zag置乱算法的基本思想:使用一个随机的置乱序列来

代替Zig-Zag扫描顺序,来将各个8×8块的DCT系数映射

成一个1×64矢量。基本算法由三步组成,步骤如下:

①产生一个基数为64的置乱序列表;

②把DC系数分成两个较小值的数。

假设DC是二进制数d7d6d5d4d3d2d1d0,将它分成两个数

d7d6d5d4和d3d2d1d0,它们的范围都在[0,15]。然后将DC系数置

为d7d6d5d4,将原最后一个AC系数置为d3d2d1d0。(这种分离处理

是基于以下两点:

1)通常DC系数值远大于AC系数值,因此乱序后很容易被识别。

分离变小后就难于从AC系数中区分出来;

2)最末一个AC系数作用很小,通常为0,可以用其存放

d3d2d1d0,恢复时取0值,不影响图象质量,也不增加数据量。

③用随机置乱序列表将经分离处理的8×8块映射成1×64序列

(Vector)。

Zig-Zag置乱算法有严重的安全性问题。对已知明文攻

击是脆弱的。

(4)改变Huffman码表算法。改变Huffman码表的视频

加密算法原理是:对于熵编码用Huffman编码的视频编码标

准,将通用Huffman码表修改后使用,修改后的特殊Huffman

码表作为密钥。非法接收方无此特殊码表,不能正确解码视

频(图像)信息。该算法的安全性取决于保持压缩率不变的前

提下,Huffman码表的可变空间(密码空间)。改变Huffman码

表,一般会降低压缩率。Huffman编码是对数据流中出现频

率高的位组合模式对应短码字,出现频率低的位组合模式对

应长码字,达到缩短平均码字,压缩数据的目的。Huffman码

表通过统计码流中各种位组合模式出现的概率制作。本算法

在改变各组合模式对应的Huffman码字时,保持对应码字长

度不变,即保持了特定出现概率的组合模式对应的特定码字

长度不变,也就保持了原压缩率不变。该算法完全不增加计

算量。适用于使用Huffman编码的各种视频和图像压缩编码

标准和算法。其缺点是安全性较差(密钥空间小)。

(5)基于统计规律的视频加密算法(VideoEncryptionAl2

gorithm,VEA)。MPEG有一定的统计特征,不同字节值的出

现频率相当;连续值成对出现的频率相当;I帧的1/16小块

中,连续值成对出现的次数一般不大于1。研究MPEG的属

性和它的统计特征并对MPEG按字节逐一处理可以得到VEA

方法。VEA算法是对所有块的DCT系数的符号位进行加密,

包括I,P,B帧。VEA采用一个长为m的伪随机序列bi作为

密钥k,明文为s=sl.s2.s.s+l.s+2.s2,si为DC和AC系

数的符号位,因为DC为差分编码,所以s为差值的符号位。

VEA的加密函数为Ek(S)=(b。s。)(bs).(bms).(b。s

+。).(bms),接收端的解密则利用密钥k对媒体流进行和加

密端相同的XOR处理过程,该方法的破译复杂度为2m一1,

当m=56时和DES在穷尽搜索方式上的破译复杂度相同。

该方法不加密头信息结构格式等数据,只加密图像数据本身。

将待加密数据分为两半,一半用密码方法(函数E)加密,另一

半用简单异或,因此总体减少了计算量,提高了计算速度。该

方法不影响压缩率。适用于压缩的视频(或图像)编码数据,

而且压缩效果越好,加密效果也越好[3,7]。

3FRMVEA加密算法

本文中,我们基于VEA加密算法进行了几个方面的

改进,提出了一种新的快速MPEG视频的实时加密算法

FRMVEA。

3.1FRMVEA加密算法设计

MPEG视频加密算法的目标就是阻止那些非授权接

收者用非法手段方式解码视频数据。一般的方案就是提

供一种可逆转的变换Ek给视频流S(简单图像明文),然

后产生一个比特流C=Ek(S)(加密文本)。一个知道密

钥k合法接收者就能够用变换Dk=Ek-1来解密视频数

据。FRMVEA也是一种选择性加密算法,它仅仅只对

MPEG压缩视频的每个宏块确定的64个DCT系数和运

动矢量的标志比特加密[8]。

为了描述FRMVEA算法的实际操作,如果我们忽略

其它比特,而仅仅只考虑MPEG视频流的标志位,那么,

MPEG视频流S就可以用下式来表示:

S=...S1…S2…S3…Sm…Sm+1…Sm+2….

这里,Si(i=1,2,3,….m,m+1…)是运动矢量或者

DCT系数(对于I帧和运动矢量的DC系数,它们的标志

比特有不同的值,因为它们编码方法不相同)。

FRMVEA从每一个宏块中选择64个标志比特(8字

节)进行加密,由于I帧图像、P帧图像和B帧图像的特

性不同,所以,在选择的时候有所区别。

我们可以用βα1α2α3α4…αn这样一个比特流来表示

一个MPEG压缩8×8块,这里的β表示DC系数的代码,

·84·

《现代图书情报技术》2006年第3期信息检索技术总第134期

αi表示第i个AC系数的标志比特。

根据前面的介绍,我们知道,每一个16×16宏块有6

个8×8块组成,它们是由Y1,Y2,Y3,Y4四个亮度块和

Cr,Cb两个色度块组成。图2定义了FRMVEA算法的β

和αi标志比特的选取顺序。FRMVEA的解密操作的选

择和加密操作一样。

FRMEVA加密采用从一片片图像切片中的选取的每

一个宏块的比特流和密钥k异或得到新的比特流,并将

新值一一对应替代原比特值的方法。

设宏块比特流为Sh

那么按照前述,根据每个宏块选择64个标志比特,有Sh

=…S1…S2…S64

Si(i=1,2,3…64)为选取的宏块的所有标志比特。

设FRMVEA的密钥是随机生成的长度为m(m≥64)的比

特流km,bi(i=1,2.,…m)为第i位上的比特值,那么,其密钥

的表达式为:

km=b1b2b3…bm

设FRMVEA的加密过程为Ek,其表达式为:

Ek(Sh)=…(k1⊕S1)…(k2⊕S2)…(k64⊕S64)…

标志比特根据已给定的密钥可以随机改变,其值要

么不会改变(如果密钥中相应的比特为0),要么从0变

为1,要么从1变为0。对于拥有密钥的接收者,可以通

过解密得到原始的视频数据。由于Ek(Ek(Sh))=Sh,

FRMVEA的解密过程Ek-1与其加密操作完全相同,加密

所用的密钥和解密所用的密钥也相同,如果不知道密钥,

将解码出和原始视频不同的视频。

3.2FRMVEA加密算法分析

FRMVEA的加密效果在MPEG视频解码期间的逆离

散变换余弦(IDCT)中得到了充分的体现。假定A代表

一个8×8图像块,在经过离散余弦变换(DCT)后,我们

得到了一个8×8图像块B,那么就有:

B=DCT(A)

当我们对B进行FRMVEA加密操作的时候(为了简

单起见,我们将忽略MPEG量化,Zig-Zag的顺序及

Huffman熵编码操作),对应于已经得到的密钥我们实际

上改变了B的元素的值。用Z代表加密的结果,那么有:

Z=FRMVEA(B)

在对Z解密后再解码,我们将得到一个图像块,用Ax

表示,显然

Ax=IDCT(FRMVEA-1(Z))=IDCT(B)

Ax是接近原始图像像素值A,但不完全等同原始图

像像素值A,因为前面说了,为了简单起见,在加密的时

候,忽略了MPEG量化,Zig-Zag的顺序及Huffman熵编

码等操作,因此解码后将得到图像块Ay:

图2宏块中标志比特的选择顺序

(注:I帧宏块按照上面的顺序,P帧宏块不选Y1块的α10、α11,B帧

宏块不选四个Y块的α11)

Ay=IDCT(Z)=Ax+N

这里的N为噪声或者相对于A的变换增加值。对于

8×8矩阵C,如果我们定义:

|C|=6

7

0

6

7

0

|αij|

那么:|Ay-Ax|=|N|

|N|的值将伴随A和FRMVEA的密钥变化而变化。

上面的分析显示,虽然FRMVEA仅仅只改变了DCT

系数的标志比特,但在MPEG解码的逆离散余弦变换

(IDCT)操作中,多数图像像素值将发生改变;由于DC系

数的编码和运动矢量的编码不相同,如果最初对DC系数

的猜测是错误的,那么,要正确猜测到随后的DC系数是

非常困难的。同时,由于改变了P帧和B帧运动矢量的

标志比特,将会误导非授权者对视频的解码播放。

FRMVEA加密算法仅仅选择每个宏块的6个子块的

其中三个子块的64个DCT系数的标志比特进行加密,因

此,我们可以预料到,它会大大地减少了加密计算量和加

密时间。例如,对于352×240分辨率的视频帧,每帧含

有22×15个16×16的宏块,如果要求播放速度为每秒

30帧,那么,FRMVEA每秒需要加密的数据为22×15×

·94·

《现代图书情报技术》2006年第3期信息检索技术总第134期

30×8=79200字节,而现在普通配置的处理芯片为赛扬

2G的电脑,其处理速度大致为每秒9100000字节,因此,

如果用普通配置的处理芯片为赛扬2G的电脑作为处理

平台,FRMVEA算法在一秒内对三十帧352×240分辨率

的视频帧加密所需要的时间为:79200÷9100000=0.

0087秒。从计算来看,加密的速度是惊人,而加密所需要

的时间微乎其微。同时我们也看到,加密速度和加密时

间与帧的分辨率有关,会随分辨率的大小不同而发生变

化。

我们将FRMVEA加密算法与MPEG-1标准编码程

序相结合,测试对加密对MPEG编码效率的影响。每次

都采用不同的密钥加密,共进行了5次测试,测试得到的

所有视频图像都无法识别,测试结果如表1所示,这里,

我们用f表示每秒的帧数。

表1测试结果

实验序号没有加密的压缩(f)加密后的压缩(f)

10.3000.295

20.2990.299

30.3150.303

40.2980.298

50.2970.297

平均值0.3020.298

实验环境采用奔腾2GCPU、256MDDR的内存的微

机,WinXP操作系统。从以上的说明和分析,我们可以得

出FRMVEA加密算法所具有的三点性质:

(1)FRMVEA有选择性地对每一个宏块所选定的64个

标志比特用长度为m(m≥64)的密钥进行按比特异或加密,

可操作性非常强,便于软、硬件的简单实现;由于对每个宏块

选择64个标志比特进行加密,因此,相对于其它可选择性的

视频加密方法,如VEA等,加密强度大大提高;由于密钥长度

m≥64,在加密的时候,可以按顺序选用其中一段长度为64的

子密钥加密,也可以随机组成长度为64的子密钥加密,因此,

如果要攻击加密的MPEG视频,需要攻击的次数必定≥263,

其破解难度大于破解DES密钥的难度。

(2)用FRMVEA加密视频多次,而只需要解密一次,这是

因为对于两个密钥k1和k2,其中k1≠k2,FRMVEA有如下性

质:Ek1(Ek2(S))=E(k1⊕K2)(S)

如果k3=k1⊕K2,则可以只用k3解密加密视频一次即

可。

(3)由于在加密中,其过程是选取宏块的64个DCT系数

的标志比特用密钥进行加密,然后把加密结果替换选取的64

个DCT系数标志比特,所以,加密后,MPEG的大小不会发生

改变。

4结论

数字图书馆拥有的视频资源的数量在飞速的增长。

新增的视频资源大部分是数字格式。如何组织、管理这

些视频资源,进行高效和安全的运用,相比于以前的非数

字视频资源的数字化,任务更为突出。我们提出的FRM2

VEA加密方法,采用选择性的加密方法,选择每个宏块中

的三个子块的64个DCT系数的标志比特用密钥进行异

或加密,可以有效的减轻对硬件资源的要求,减少加密消

耗的时间,具有较高的实用价值。

参考文献:

1杨京峰,张成昱.数字图书馆中视频资源应用及技术浅析.现代图

书情报技术,2004(11):14-16

2邓达,张凌,董守斌,余英林.数字化视频图书馆的若干关键技术

及其实现.华南理工大学学报,1999(3):19-24

3廉士国,孙金生,王执铨.视频加密算法及其发展现状.信息与控

制,2004(10):560-566

4divxvsxvid.http://home.so—net.tom.hk/lfchan/ebook/source/

408.htm(AccessedFeb.10,2004)

5WallaceGregoryK.TheJPEGstillimagecompressionstandard.Com2

municationsoftheACM,1991,34(4):30-44

6P.J.Shenoy,P.Goyal,S.RaoandH.M.Vin.“Symphony:An

IntegratedMultimediaFileSystem.”InProceedingsofSPIE/ACM

ConferenceonMultimediaComputingandNetworking(MMCN98),

SanJose,CA,pages124-138,January,1998

7M.Vernick,C.VemkatramaniandT.Chiueh.“AdventuresinBuild2

ingtheStonyBrookVideoServer”,InProceedingsofACMMultimedi2

a,pages287-295,Boston,Nov.,1997

8FrancoChiaraluce.LorenzoCiccarelli.EnnioGambi,eta1.Anew

chaoticalgorithmforvideoencryption.IEEETransactionsonConsumer

Electronics,2002,48(4):838-844

(作者E-mail:fyyang@smmu.edu.cn)

《现代图书情报技术》2006年(年刊)征订通知

《现代图书情报技术》2006年(年刊)即将出版。每册定价30元(含邮费)。内容涉及数字图书馆技术、图书馆自动化、信息检索技术、

网络资源与建设、网络多媒体技术、图书情报技术工作交流等方面。如欲定购,请直接将款汇到:北京中关村北四环西路33号《现代图书

情报技术》编辑部邮编:100080,本刊编辑部收,款到后即将发票随刊一并寄出。印数有限,欲购从速!

编辑部联系电话:(010)82624938。(编辑部)

·05·

《现代图书情报技术》2006年第3期信息检索技术总第134期

献花(0)
+1
(本文系海漩涡首藏)