RMVEA视频时实加密算法

视频加密算法,有别于其他加密算法的地方在于它更需要平衡加密强度与加密之间的关系。当前,世界上比较流行的用于 MPEG视频标准的加密算法分为两大类型:一种类型是对视频流的数据全部加密,这类算法虽然安全性能很高,但同时加密速度非常慢,并且花费昂贵;另一种类型是根据 MPEG视频流的结构,对某些特定帧进行加密,即选择性加密算法,如VEA视频加密算法,它对 MPEG视频压缩中全部的DCT系数的标志比特进行加密。这种算法安全性能比较高,而且帧的大小基本不发生改变,但是,这种加密算法也有其明显的缺陷,那就是假若有一个未授权者掌握有数个简单图像明文帧,他就能够很容易地找到密钥从而破解整个的视频。
为此有学者,提出一种有效的 MPEG视频实时加密算法RMVEA。这种算法对VEA加密算法进行了两个方面的改进:首先,RMVEA 使用合适的密钥来加密数据,其安全性能有明显的改善;第二,RMVEA算法对宏块中的所有Y块和色度块Cr,Cb进行了加密,RMVEA算法的加密强度大大提高。
MPEG视颇编码原理
MPEG—l、MPEG一2、MPEG一4和MPEG一4AVC视频编码标准虽然不同,但它们的视频流的采样和编码结构是基本相同的,这里,以MPEG—l为例,来说明MPEG视频的编码结构和原理 。MPEG—l视频的采样结构是 由视频帧组序列 (GOPs)组成的 。I,每个图像组层 (GOP) 由一系列 I,P和B帧组成,其中I帧是不需要参考其它帧的帧内图;P帧是参考前面的 I帧或者 P帧的来进行预测编码的预测图;B帧是进行双向运动补偿预测编码的双向预测图像。一个GOP 至少要有一幅I帧。
每帧图像包含若干图像切片 (slice),每个切片包含若干个宏块,宏块是一个 l6×l6像素的图像块,是视频编码的基本单位。每一个宏块用亚取样的方式更进一步分成4个8×8像素亮度块 (Y块)和2个8×8像素色度块 (1个cr块和1个Cb块)。

每一个Y,Cb和cr块都要进行DCT (离散余弦变换)、量化和熵编码。离散余弦变换后将大部分低频分量集中到8×8块空问的左上角,变换系数进行量化后许多AC系数变成了0,量化输出的结果是根据 zig—zag顺序线形排列的:<DC、ACI,AC2,…,AC63>。DC系数表示在空间块上亮度的平均值,AC系数包含了图像信息的细节。

RMVEA也是一种选择性加密算法,它仅仅只对 MPEG压缩视频的每个宏块确定的64个DCT系数和运动矢量的标志比特加密。RMVEA采用选择性的加密方法,选择每个宏块的64个DCT系数的标志比特用密钥进行异或加密,加密速度快 ,所消耗的时问非常少,并且算法简单,其加密强度可以和DES等加密方法相当,易于用软件和硬件简单实现,是一种具有较高实用价值的视频实时加密方案。
手机视频加密的需求现在也日趋增加,如需了解超时代手机视频加密软件请访问: