
钥矩阵序列视频乱序加密方法.docx
13页钥矩阵序列视频乱序加密方法 摘要:提出RMSP(RandomMatrixSequencePermutation)方法,同时完成帧内宏块(MacroBlock,MB)之间、块内VLC(VariableLengthCoding)码字之间双重互补的乱序加密,并利用随机序列生成随机乱序密钥矩阵序列,供每帧和每块依次用不重复的密钥矩阵对MB和VLC码字乱序RMSP方法完全保持编码格式和压缩率,具有对应序列密码的抗攻击能力且明文信息完全隐藏的特点,速度快约四倍,适用于MPEG、H.26x及JPEG等主流编码信号加密,可制作单独模块 关键词:视频加密;变长编码码字乱序;宏块乱序;密钥矩阵序列 图像和视频应用日益广泛,使得实用图像和视频加密技术越来越重要视频加密的评价较之通用密码体制具有新的要求:应具备足够的抗攻击能力、视觉信息应被充分隐藏同时,由于视频数据量大、结构性强等特征,实用加密方法的计算速度、对编码格式和压缩率的影响等指标也很重要 视频密文保持编码格式十分重要格式信息在存储、传输和处理过程中具有重要作用,如实现检索、暂停、快进、快退等交互功能和QoS保障作用,提高容错能力和网络适应性。
付费视频等商业应用往往需要非授权用户能顺利解码密文却得不到所需视频信息,从而破坏了编码格式,使这些用户因不能识别或解码死机,误认为是线路或软硬件故障,妨碍业务开展;格式被破坏的视频数据可能更容易引起注意,增加遭到攻击和被破译的机会,而对不含视频源信息的长零串等公开的特殊规则序列加密,既为明文攻击提供了便利,也浪费了计算资源 直接密码方法将视频当做普通流用分组密码、序列密码等加密,安全且易实现[1,2],但往往不能同时满足视频数据安全、实时和传输处理等实用需要,在很多场合不适用其最难克服的缺陷是破坏编码格式VLC码字作为编码视频数据中的重要成分必须重点加密,而有效的VLC码字远未遍历对应比特码空间直接使用密码加密,必然随机产生大量非法的VLC码字,密文不可能符合编码格式因此寻求VLC码字的理想加密方法是一个急需研究的课题 1现有的方法 近年针对视频加密进行了大量研究,提出很多各有不同优缺点的方法[2],但仍很难解决VLC码字加密的难题现有针对VLC码字的视频加密方法大致分为:①DCT系数乱序(Zig-ZagPermutation)[3]其速度快,但乱序表固定或有限,对明、密文攻击都脆弱[1],且大幅降低了压缩率[2];块置乱(BlockShuffling)和块旋转(BlockRotation)[4]同样对明、密文攻击脆弱。
由于没有加密宏块的运动矢量,视频的运动信息非常清楚,同时子带乱序[4]方式也降低了压缩率②改变Huffman码表方法[5,6]它不增加处理负担(Lightweight),可以不降低压缩率,但因密钥空间受限而降低了安全性,且产生密钥困难[5,6];密钥码表固定,不能抵抗明文攻击;码字出现依长度具有统计规律,便于唯密文分析③VLC码字映射成定长索引加密[7,8]其增加了加密比特数即计算量;不同长度码字统一处理(可为多个VLC码字数是2的幂的子集),降低了压缩率④随机改变VLC码字符号位[9,10]它不降低压缩率,但加密信息量过少,安全性不高这些方法虽能保持编码格式,但均存在明显缺陷,实验还表明它们的视频信息隐藏效果不够 本文提出利用密钥矩阵序列随机改变乱序表的视频乱序加密方法(RandomMatrixSequencePermutation,RMSP),通过帧内MB乱序来加密视频画面形状和帧间运动信息,通过块内VLC码字乱序来加密纹理细节信息,两者结合使明文视频信息完全隐藏;再由随机序列构造乱序密钥矩阵序列,通过使用每次随机变化的乱序表,使乱序接近一次一密的安全强度RMSP方法速度快、完全保持编码格式、不降低压缩率,能同时满足安全、实时、传输处理、码流带宽等多项实用要求。
2基于密钥矩阵序列的变模乱序算法 乱序是保持明文的基本元素(如文本的字符、数据的比特位)相同,但顺序被打乱利用乱序算法的特点,以VLC码字为基本元素而在加密时保证相同,就很容易保证VLC码字合法有效,解决格式兼容问题由于视频信号数据量大,RMSP以帧为分组对MB乱序、以块为分组对VLC码字乱序,均便于操作但每帧MB个数和每块VLC码字数都不固定,即每组元素个数不断变化乱序分组的元素个数称为模数,模数可变的乱序称为变模乱序 2.1乱序算法描述 2.3由随机序列生成乱序矩阵序列 一次一密被证明是绝对安全的密码体制,给序列密码的研究和应用以强大支持,并取得了不少高性能密钥序列的研究成果[11]这些序列虽不能直接用于RMSP,但其随机性成果可以利用RMSP设计了一种由随机序列构造变模乱序矩阵序列用于变模乱序的算法 3RMSP算法及实现 RMSP方法同时使用MB乱序加密形状与VLC码字乱序加密纹理实现互补,达到完全隐藏画面视觉信息和互相消除相关性的效果,使用随机乱序矩阵序列实现一次一密其增加计算量不多,可满足实时应用 3.1MB乱序 当前广泛应用的编码标准的视频数据呈层次结构,每帧划分为1616像素的宏块MB并按顺序传输,接收方按此逐块解码恢复原视频。
若以每帧分组,以MB为基本元素乱序,速度快、不降低压缩率、完全保持编码格式,非法接收方也能正常解码,但原视频的形状信息被隐藏块间差分的DC和预测帧运动矢量同时得到加密,PB帧密文完全不能理解MB乱序加密形状效果很好,但没有加密纹理细节MB乱序效果如图1(b)所示由于AC没有加密,MB内纹理可辨,尤其如边界清楚的数字、字母等将各块差分DC置零(即DC为常数)时如图1(c)所示为更清楚说明问题,图1(d)所示为破译了DC时的情况相邻MB的边界像素值相关,DC加密使相邻边界像素值变得不相等,但其差值仍接近相等,这个未被加密的相关性为用拼接方法破译I帧提供了足够的条件破译I帧就得到了主要视频信息,所以单独的MB乱序不安全,易被破译 3.2VLC码字乱序 帧内压缩主要基于DCT和VLC等数据一般分成88像素块(Block),经DCT得到88系数块每个宏块包括四个亮度块和两个色差块一般将游程编码与熵编码结合进行每一非零DCT系数对应一个Event(Last,Run,Level),各Event查表得到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的码字。
(6)对MB乱序矩阵下一元素,重复执行(3)~(5),送出最后一个MB (7)返回第(1)步读下一帧数据 接收方解密时只要将乱序密钥矩阵改为解乱密钥矩阵即可,其余算法相同 4RMSP方法的性能分析 4.1加密效果 RMSP加密Clairec、Mobile序列后再按标准解码I帧画面分别如图3(a)、(c)所示;预测帧效果分别如图3(b)、(d)所示,完全不能得到原视频信息 4.2常规攻击方法 由于视频数据量大,RMSP又采用一次一密方式,只要选用足够随机的密钥流,常规攻击方法很难破译穷举攻击几乎不可能,仅考虑对单帧的攻击情况由于预测帧(PB帧)解码离不开参考帧(最终依靠I帧),攻击者必先破译I帧I帧Cif方式有396个编码宏块,Qcif方式有99个,分别有396!和99!种排序Qcif预测帧最少约20个编码宏块,在已破译I帧的前提下还有20!>>257种排序方式 破译少量块数的块内VLC乱序没有意义若要得到有价值的信息量,如1/3数量的块,Qcif应为198块,计算量非常巨大已知明文或选择明文攻击也无效,由于VLC码字乱序和MB乱序双重互补加密,明文和密文很难对照找出乱序表得到密钥流,即使得到部分密钥流,只要很容易地选用线性复杂度比较高的密钥流,因为每帧每块的乱序表(码本)都是不同的,就难以得到其他视频信息。
4.3特殊攻击方法 VLC码字乱序和MB乱序也在抗攻击能力上互补纹理清楚的块组成的MB的边界特征信息丰富,便于MB拼接但是由于VLC码字多而乱序充分难破译,无法获得MB边界相关性VLC码字少的块容易破译,但大部分这种MB的边界信息接近,所以VLC码字乱序使攻击者难以依靠边界相关性来分析拼接乱序的MB另一方面,MB乱序消除了邻块间VLC码字的相关性,增加了VLC码字乱序的破译难度 MB除边界相关性之外,在全帧中的分布依画面随机不同而不同,不容易找到可利用的规律但由于视频数据的相关性,DCT系数具有分布规律相关性强的块内像素能量集中于左上角DCT系数(DC及低频AC),使DCT系数从DC到低频AC再到高频AC在三个方面呈现统计规律:①系数非零的频率由高到低;②系数绝对值由大到小;③非零系数间的间隔由小到大块内像素变化平缓相关性越强,这种分布规律越明显,能量越集中;反之纹理越清楚,相关性越弱,能量分散,就没有明显的规律RMSP注重加密纹理清楚、信息量大的块,使利用这些特性的分析方法失效 4.3.1频数分析 根据不同位置系数的非零频率不同,若乱序表固定或有限,如ZigZag乱序,可通过统计各个位置出现非零系数的频率来破译。
尤其容易破译DC和低频AC从而得到主要的视频信息[1]但是RMSP每块都使用随机不同的乱序表,频数统计得不到明确的系数分布特征,无法反映其非零频率的真实分布因此依靠频数分析的唯密文攻击难以有效实施 由于每块乱序表不同,只要选用较高线性复杂度的密钥序列,攻击者不能由已知明文破获,就不能破译其余的视频明文攻击显然也无效 4.3.2幅值分析 根据AC幅值的分布规律,将系数按Level从大到小排序,可以得到相关性强的块接近明文的效果但这类块中纹理比较平缓,信息量小在纹理清楚的块中,高频丰富,高频AC的幅值也较大,按Level大小排序没有效果,所以能够破译的块信息量少,而纹理细节清楚的块又不易破译仅VLC乱序后按Level排序破译的画面效果如图4(a)所示,与未经破译的画面接近其配合MB乱序,更抗分析RMSP加密后经按Level排序破译的视频画面如。












