一种h.264标准视频信息中残差系数幅值的加解密方法

文档序号:7974636阅读:180来源:国知局
专利名称:一种h.264标准视频信息中残差系数幅值的加解密方法
技术领域
本发明属于视频保密通讯领域,具体地讲是一种H.264标准视频信息中残差系数幅值的加解密方法。
背景技术
随着各种视频应用的日益广泛,视频信息的安全问题也日益突出。信源加密即进行视频内容本身的加密是解决视频信息安全性的主要的而且更重要的手段。对视频内容本身的加密可以保证非法用户即使得到了视频信息,由于没有密钥无法正确解密观看原始的正确视频图像。
由于视频信息具有海量数据,在具体应用中,例如在可视电话或视频会议应用中,每秒必须传输几十幅图像,如果采用针对一般信息(二进制或文本)的普适性加密算法对全部视频信息进行加密,其计算量巨大,将产生较大的附加延时,很难满足视频通信的实时性要求。
除保密性和实时性外,保持格式的兼容性是视频加密算法的重要需求。格式兼容的含义是视频密文信息的句法语义仍然与标准兼容,其核心表现是视频密文信息仍然可以被标准解码器顺利解码。保持格式兼容的重要性主要在于以下几点1)保持视频格式与标准兼容可以保证原始视频明文中的网络同步和容错字段等信道信息不被改变,从而保证密文码流的网络适应性和容错性。
2)保持视频句法语义等格式信息与标准兼容也就保持了视频码流中各种起始码字、格式信息等固定字段不变,这些字段由于是在协议或标准中公开而广为人知的,如果对这些字段进行加密,那么也就会造成已知明文攻击,不利于视频信息的安全。
3)保持视频格式与标准兼容有利于对商业应用的视频信息内容的有效灵活的控制。在视频点播、付费电视等商业应用场合,为了吸引用户购买,往往是需要允许非授权用户能顺利解码播放视频密文码流观赏到一定视频内容的。
4)保持视频格式不变还有利于标准编码视频信息面向存储的正常应用,因为保持格式兼容能够保持除视频内容以外的所有信息或属性不变,使得视频信息仍然能够被检索,并有利于保持视频信息的快进、快退等交互功能。
数字视频加密技术自九十年代中期产生以来,一直伴随着视频压缩编码标准的发展而不断发展。基于DCT变换和预测编码混合体系及哈夫曼变长编解码(H.261/H.263以及MPEG-1/MPEG-2/MPEG-4)的视频加密技术已产生很多研究成果。其中最主流的方法就是选择视频信息中包含视频图像内容的关键信息残差系数、运动矢量和量化步长等进行选择性加密。随着硬件性能的飞速发展,H.264/AVC由于其良好的压缩效率、图像质量和网络容错性,必将取代以前的系列标准。然而,由于H.264/AVC采用了帧内预测、基于上下文的自适应变长变码(CAVLC)等很多完全不同于以往的编解码技术,以前视频加密研究成果大部分都不适用于H.264/AVC标准编码视频的加密。
对于H.264码流中新出现的帧内预测模式字和I_PCM模式宏块,以及改用了Exp-Golomb熵编码的运动矢量仍然可以借鉴现有的保持格式兼容的视频加密成果的一些基本思想,比如对其进行选择性加密。但是,H.264中的残差系数采用基于上下文的编码策略(CAVLC),其编码后的残差系数幅值码字上下文前后紧密关联,直接对其加密或选择固定部分比特加密必将影响上下文其他残差系数幅值的顺利解码,从而势必破坏其格式兼容性。而当前的保持格式兼容的视频加密研究成果通常是以Huffman熵编码为基础的,不适合于H.264/AVC,因此如何加密H.264码流中的残差系数幅值同时保持格式兼容是一个难点。
对于H.264标准,亮度和色度块残差数据使用CAVLC编解码时,残差系数由拖尾系数码字、非零系数幅值前缀level_prefix和后缀level_suffix码字组成。拖尾系数指示残差块的最后几个拖尾±1系数的符号,拖尾系数的个数由每个残差块的起始码字coeff_token指示,因此对拖尾系数可以根据其个数直接对其加密。即当解码分析coeff_token拖尾系数个数为k时,则可对紧随其后的k比特进行直接加密。非零系数的幅值level编解码比较复杂。level_prefix码字根据协议中规定的变长码表编解码,对其码字直接加密势必将破坏码流兼容性。suffixLength和levelCode是编码时需要使用的变量。后缀level_suffix是长度为levelSuffixSize比特的无符号整数,通常情况下,levelSuffixSize的值等于变量suffixLength的值,但有两种情况例外1、当前缀等于14且suffixLength等于0时,levelSuffixSize等于4;2、当前缀等于15时,levelSuffixSize等于12。
变量suffixLength是基于上下文自适应更新的,suffixLength的更新与当前的suffixLength的值以及已经解码好的非零系数的值(level)有关。suffixLength在初始化后,自适应更新规则为如果当前已解码的非零系数值大于(3<<(suffixLength-1)),并且当前suffixLength小于6时,suffixLength加1。(“<<”、“>>”分表示为二进制左移、右移运算符号)变量levelCode等于(level_prefix<<suffixLength)+level_suffix。则level值由如下规则得出如果levelCode为偶数,level的值为(levelCode+2)>>1;否则,level的值为(-level-1)>>1。因此对levelCode微小的改变都会引起level值符号的改变。那么对level_suffix作微小的改变就可能引起level值较大的变化,从而可以考虑加密level_suffix从而达到加密残差系数的目的。
但是,不能直接对整个level_suffix进行加密,因为level_suffix的改变会引起suffixLength的自适应更新的改变,造成在解码下一个残差系数幅值码字时对该码字level_suffix长度判断的错误,也就是破坏了码流语义格式,势必造成解码失败。所以,对level_suffix的加密需要考虑不能影响suffixLength的自适应更新过程。

发明内容
本发明的目的就是针对直接加密整个H.264码流中残差系数幅值或加密其固定部分比特势必会破坏格式兼容的问题,通过仔细分析H.264码流中基于CAVLC熵编码的残差系数的编解码过程和上下文关联特点,而提出一种相应的H.264标准视频信息中残差系数幅值的一种加解密方法,并使得加密同时保持格式兼容,以克服上述的不足。
本发明为了使加密残差系数幅值不破坏语义格式,动态分析H.264每一编码片的码流,根据残差系数幅值编码时suffixLength的自适应更新规则,采用自适应加密方法,其具体自适应规则如下(1)当前缀等于14且suffixLength等于0时,对4bit的level_suffix直接加密。
(2)当前缀等于15时,对12bit的level_suffix直接加密。
(3)当suffixLength大于或等于6时,suffixLength不再更新,对level_suffx直接加密。
(4)当上述三种特殊条件都不满足时,(假设suffixLength自适应更新阈值3<<(suffixLength-1)用thread来表示,当前level值和thread差值的绝对值Abs(level-thread)用abs_diff表示),当abs_diff大于(1<<k)时,可以加密suffixLength的后k个bit,这样可以保证加密不会造成影响level和阈值的关系,从而影响suffixLength自适应更新的判断,从而保证语义格式兼容。
为了实现上述目的,本发明的方法是先需要计算当前level值和thread的差值绝对值,然后根据该差值绝对值的大小,来决定加密几个比特。综合上述四种情况,本发明提出的残差系数幅值加密方法是一个需要进行动态分析而决定如何加密的自适应的过程。
此外,本发明提出将加密残差系数幅值和加密运动矢量、帧内预测模式字、量化系数、残差系数拖尾系数部分和I_PCM宏块像素信息结合起来组成一个完整的方案来实现视频信息的保密性。
对4×4亮度块的3bit预测模式字、残差块系数的拖尾部分和I_PCM宏块的像素值使用密码学算法直接加密。
对16×16亮度块和色度块帧内预测模式字加密其最后一个比特。
对量化步长、运动矢量差分值加密其Exp-Golomb码字的后缀部分。而对残差系数幅值,则根据上文提出的自适应方法动态决定其可以加密的level_suffix部分的比特长度。
这种选择部分比特加密方法是为了保持视频码流在加密后仍然符合H.264标准格式。上述具体加密方法是通过深入分析H.264标准规定的句法语义和解码过程后确定的。因此根据H.264标准按照上述方法加密能够保证格式不变。
具体实现时,分析H.264视频码流,根据上述规则提取待加密的数据比特,可灵活选用各种高强度的密码学算法(如分组密码算法AES/IDEA或序列密码算法A5/RC4等)加密,然后将加密后的关键数据的密文还原至提取位置和那些未被加密的明文混合作为加密后的视频码流输出,解密则是相反的过程。
由于本发明基于残差系数幅值编码时suffixLength的自适应更新规则,采用了相应的自适应加密方法,使得本发明具有以下优点1、符合H.264标准的视频信息加密后得到仍然符合标准格式的视频码流,保证视频正常应用;2、加解密的数据量小,计算复杂度低,能保证视频信息的实时传输;3、残差系数包含了大量视频图像内容信息,对其加密(与加密其他信息相结合)能够显著提高视频信息保密性;4、能够为给用户提供对不同密码算法的多样选择,密码算法方便更新升级。


图1为本发明的加密残差系数幅值方法原理图。
图2为本发明的原理框图。
图3为本发明在正常状态的应用总体流程图。
图4为本发明在非正常状态的应用总体流程图。
图5为本发明加密实现方法流程图。
图6为本发明解密实现方法流程图。
具体实施例方式
下面结合附图和实施例对本发明作进一步的为描述,但以下实施例不应理解为对本发明的限制。
本方法的应用流程如图3。
图1中的视频加密模块即是本方法的实现部分。经过压缩后的原始视频码流经过视频加密模块得到仍然符合标准的视频码流,经过加密后的码流经过解密模块恢复成原始的视频码流,然后经过解码器就可以得到正确的视频图像。但是,如果经过加密后的码流没有通过解密模块或者没有获得正确的解密密钥,经过解码器则得到被破坏的视频图像(图4)。
本发明加密流程如图5。本方法的视频加密模块主要由三部分组成码流分析模块,密码算法加密模块和码流混合模块。码流分析模块的主要功能是读取分析压缩后的原始视频码流,将其中的所定义的关键数据提取出来组合在一起,同时记录每个关键数据在码流中的位置和长度信息(以bit为单位)。密码算法加密模块的主要功能是使用现有的公认高强度的密码算法对提取的关键数据进行加密。码流混合模块的主要功能是将加密得到的密文根据每个关键数据的位置和长度信息的记录重新返回到原始码流中去替代加密前码流中提取的关键数据,即与其他非关键数据混合得到加密后的密文码流。
本发明解密流程如图6。本方法的视频解密模块内部结构主要由三部分组成码流分析模块,密码算法解密模块和码流混合模块。码流分析模块的主要功能是读取分析经过加密后的视频码流,将其中的经加密后的关键数据的密文提取出来组合在一起,同时记录每个关键数据的密文在码流中的位置和长度信息(以bit为单位)。密码算法解密模块的主要功能是使用和加密时一致的密码算法将提取的关键数据的密文进行解密。码流混合模块的主要功能是将解密后复原的关键数据明文根据每个关键数据密文的位置和长度信息的记录重新返回到码流中去替代解密前提取的密文数据,即与其他非密文数据混合得到解密后的明文码流。
本发明密码算法可选用分组密码算法(3DES、AES、IDEA等)或者序列密码算法(A5、RC4、SEAL等),但不局限于上述算法,也可以根据用户的需要,选择用户指定的某种特殊算法。可以将密码算法设计成独立的软件或硬件接口,可在加密和解密模块中灵活选择和调换。
本发明通过对H.264中关键信息的不同组合的加密得到不同保密性级别的加密方法以适应不同级别的应用需求。这些关键信息包括残差系数幅值、运动矢量、帧内预测模式字、量化系数、残差系数拖尾系数部分和I_PCM宏块像素信息。
视频信息正常应用需要着重考虑以下五个方面。本发明提出的视频加解密方法由于致力于尽量满足实际需求不影响应用,所以在这五个方面的影响非常小甚至基本没有影响。
对视频交互性和可直接操作性的影响本发明提出的加密方法由于不改变视频信息中的有关对象的标志信息和有关快进快退的标志信息等数据所以基本上不影响H.264交互性和可直接操作性(如视频转码);对视频编解码及视频质量的影响本发明提出的加解密方法,其加解密过程独立于编解码过程,并且由于加解密只对最基本的视频信息进行操作,不会限制编解码的各种特性,因此也不会造成视频质量的损失;对码流大小即带宽要求的影响本发明提出的加密方法由于不使用增加明文大小的密码算法,不影响视频压缩比,因此经过加密基本不增加码流大小;对视频传输延时的影响本发明提出的加解密方法由于只对少量数据加密,加解密计算复杂度低,因此本加密方法对视频传输的附加延时很小,基本不影响实时性;对网络容错性的影响本发明提出的加解密方法由于以H.264编码片为单位,当网络出现丢包时,丢失一个或几个编码片不会影响后续编码片的正确解密,所以本加密方法对网络容错性影响很小。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
权利要求
1.一种H.264标准视频信息中残差系数幅值的加解密方法,其特征在于根据残差系数幅值编码时中间变量suffixLength的自适应更新规则,采用先需要计算当前残差系数幅值和suffixLength自适应更新阈值的差值绝对值,然后根据该差值绝对值的大小,来决定待加密的该残差系数幅值的最后几个比特的比特数目,加密后残差系数幅值的变化不影响上下文的关联关系,使得加密后视频码流仍然符合H.264标准格式。
2.如权利要求1所述的H.264标准视频信息中残差系数幅值的加解密方法,其特征在于加密时,将加密残差系数幅值,与加密其他含有视频内容的信息结合起来组成一个完整的加密方案来保证H.264标准视频信息的保密性。
3.如权利要求2所述的H.264标准视频信息中残差系数幅值的加解密方法,其特征在于含有视频内容的信息包括运动矢量、帧内预测模式字、量化步长、残差系数拖尾系数部分和I_PCM宏块像素信息。
4.如权利要求2所述的H.264标准视频信息中残差系数幅值的加解密方法,其特征在于对4×4亮度块的3bit预测模式字、残差块系数的拖尾部分和I_PCM宏块的像素值使用密码学算法直接加密。
5.如权利要求2所述的H.264标准视频信息中残差系数幅值的加解密方法,其特征在于对16×16亮度块和色度块帧内预测模式字加密其最后一个比特。
6.如权利要求2所述的H.264标准视频信息中残差系数幅值的加解密方法,其特征在于对量化步长、运动矢量差分值加密其Exp-Golomb码字的后缀部分。
全文摘要
本发明涉及一种H.264标准视频信息中残差系数幅值的加解密方法,其特点是根据残差系数幅值编码时中间变量suffiXLength的自适应更新规则,采用先需要计算当前残差系数幅值和suffixLength自适应更新阈值的差值绝对值,然后根据该差值绝对值的大小,来决定待加密的该残差系数幅值的最后几个比特的比特数目,使得加密后视频码流仍然符合H.264标准格式。本发明的特点是独立于视频编解码器,加密后的视频码流仍符合H.264标准;计算复杂度低,可满足视频信息处理与传输的实时性要求;不影响视频压缩比;不影响视频交互性和视频传输的网络容错性;可实现保密性可分级;独立于具体密码学算法,可选用不同的国际标准的密码算法,保密性可达到当前难以破译水平。
文档编号H04N7/26GK101064822SQ20061016652
公开日2007年10月31日 申请日期2006年12月28日 优先权日2006年12月28日
发明者徐正全, 李伟, 姚晔 申请人:武汉大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1