基于密钥矩阵序列的视频乱序加密方法(1)(2)
2015-02-09 01:34
导读:乱序是保持明文的基本元素(如文本的字符、数据的比特位)相同,但顺序被打乱。利用乱序算法的特点,以VLC码字为基本元素而在加密时保证相同,就很容
乱序是保持明文的基本元素(如文本的字符、数据的比特位)相同,但顺序被打乱。利用乱序算法的特点,以VLC码字为基本元素而在加密时保证相同,就很容易保证VLC码字合法有效,解决格式兼容问题。由于视频信号数据量大,RMSP以帧为分组对MB乱序、以块为分组对VLC码字乱序,均便于操作。但每帧MB个数和每块VLC码字数都不固定,即每组元素个数不断变化。乱序分组的元素个数称为模数,模数可变的乱序称为变模乱序。
2.1乱序算法描述
2.3由随机序列生成乱序矩阵序列
一次一密被证明是绝对安全的密码体制,给序列密码的研究和应用以强大支持,并取得了不少高性能密钥序列的研究成果[11]。这些序列虽不能直接用于RMSP,但其随机性成果可以利用。RMSP设计了一种由随机序列构造变模乱序矩阵序列用于变模乱序的算法。
3RMSP算法及实现
RMSP方法同时使用MB乱序加密形状与VLC码字乱序加密纹理实现互补,达到完全隐藏画面视觉信息和互相消除相关性的效果,使用随机乱序矩阵序列实现一次一密。其增加计算量不多,可满足实时应用。
3.1MB乱序
当前广泛应用的编码标准的视频数据呈层次结构,每帧划分为16×16像素的宏块MB并按顺序传输,接收方按此逐块解码恢复原视频。若以每帧分组,以MB为基本元素乱序,速度快、不降低压缩率、完全保持编码格式,非法接收方也能正常解码,但原视频的形状信息被隐藏。块间差分的DC和预测帧运动矢量同时得到加密,PB帧密文完全不能理解。 MB乱序加密形状效果很好,但没有加密纹理细节。MB乱序效果如图1(b)所示。由于AC没有加密,MB内纹理可辨,尤其如边界清楚的数字、字母等。将各块差分DC置零(即DC为常数)时如图1(c)所示。为更清楚说明问题,图1(d)所示为破译了DC时的情况。相邻MB的边界像素值相关,DC加密使相邻边界像素值变得不相等,但其差值仍接近相等,这个未被加密的相关性为用拼接方法破译I帧提供了足够的条件。破译I帧就得到了主要视频信息,所以单独的MB乱序不安全,易被破译。
(科教范文网http://fw.NSEAC.com编辑发布)
3.2VLC码字乱序
帧内压缩主要基于DCT和VLC等。数据一般分成8×8像素块(Block),经DCT得到8×8系数块。每个宏块包括四个亮度块和两个色差块。一般将游程编码与熵编码结合进行。每一非零DCT系数对应一个Event(Last,Run,Level),各〦vent查表得到VLC码字并顺序传输。
在每块中将VLC码字作为基本元素乱序。若块尾(最后一个)VLC码字改变位置,则将其(Last)置零,而让乱序密文的块尾VLC码字改为对应Last=1的码字。
该算法加密纹理效果好,画面细节、数字、字母等都无法识别,速度快,保持编码格式,也不降低压缩率。但是密文画面的轮廓可能很清楚,图2为仅采用VLC码字乱序的效果。
3.3两种乱序的同步实现算法
在RMSP中,MB乱序以帧(Frame)分组,VLC码字乱序以块分组,对应以MB和VLC码字为元素。MB乱序和VLC码字乱序结合进行,先分析一帧编码流并生成MB乱序密钥矩阵,按矩阵找到各宏块。针对其六个块生成VLC码字乱序密钥矩阵,按矩阵输出各VLC码字。
本文原文
在视频编码数据流中:①每帧编码宏块数和每块VLC码字数不恒定,因此每分组要产生相应不同阶数的密钥矩阵;②每元素的数据长度也是变化的,因此定义指示元素数据的结构,并用结构数组指示每分组的元素数据的起点和长度。
(4)MB直接送回缓冲区排队。
(5)分别对六个块执行VLC码字乱序。生成VLC码字乱序密钥矩阵并按元素指示将VLC码字送回缓冲区重新排队。每块若最后一个码字参与了乱序,则其对应Last=1要换为对应Last=0的码字;将乱序后的最后码字(对应Last=0)换为对应Last=1的码字。