一种加密域H.264/AVC视频可逆数据隐藏方法技术

技术编号:10093766 阅读:254 留言:0更新日期:2014-05-28 17:53
本发明专利技术公开了一种加密域H.264/AVC视频可逆数据隐藏方法,其在与H.264/AVC视频压缩编码标准相兼容的前提下选择对预测模式的码字、运动矢量差分的指数哥伦布码字和残差系数的符号位进行加密,计算复杂度低,满足实时视频的应用需求,且加密安全性高;同时,加密对H.264/AVC视频的码流的码率影响很小,不存在视频加密中的数据扩张问题;数据隐藏者可以直接在加密域的H.264/AVC视频嵌入隐秘信息,因此可有效解决视频内容安全和隐私泄露问题;既可以在加密域有效地提取出隐秘数据,也可以在解密域有效地提取出隐秘数据,也即数据提取与解密是完全分离的,实用性更强;此外,本发明专利技术方法完全可逆,在解密和提取隐秘信息后可以无损恢复原始视频。

【技术实现步骤摘要】
一种加密域H.264/AVC视频可逆数据隐藏方法
本专利技术涉及一种数据隐藏技术,尤其是涉及一种加密域H.264/AVC视频可逆数据隐藏方法。
技术介绍
随着网络环境的优化以及视频编码与通信技术的日益成熟,数字视频的应用范围越来越广泛。但是视频数据安全与隐私保护需求属于无法回避的核心问题。确保视频数据安全性的最佳方法之一就是对视频进行加密,这样攻击者即使获得了视频数据也无法获得其内容,保证了敏感视频的安全。如果敏感视频在参与运算之前需先解密,这就意味着在敏感视频的整个生命周期中,至少有一部分时间是以明文形式存在的,这样会带来严重的隐私问题。加密域信号处理可以在隐私保护的同时进行视频数据运算,可以帮助解决视频安全和隐私的担忧。通常服务商希望在加密视频中嵌入一些附加消息,如来源信息、所有者身份或者认证数据等,用于管理加密视频。同时,在一些重要的应用场合,如医学诊断、法庭认证、军事/航空等敏感领域往往需要在提取附加消息后能精确地恢复原宿主信息。例如,为保护病人隐私,对医学影像等视频信息进行了加密,数据库管理者会在相应的加密视频中嵌入病人的隐私信息和认证信息。为了不影响诊断,授权的医生希望在解密和提取附加信息后,可以完全恢复原始视频内容。可见,如何对加密域视频进行数据隐藏,以及如何保证解密和提取隐藏信息之后数字视频内容的完整性是十分重要的。然而,无论视频加密还是视频数据隐藏,都要考虑视频压缩编码的影响。鉴于H.264/AVC高效的编码性能和良好的网络适应性,也是目前应用最普及的视频编码标准,加密域H.264/AVC视频可逆数据隐藏技术无疑将成为学术界研究的热点。虽然H.264/AVC视频可逆数据隐藏和H.264/AVC视频加密都得到了快速发展,但是数据变成密文后丧失了原有特性,导致现有的H.264/AVC视频可逆数据隐藏技术失效。如何在密文前提下实现可逆数据隐藏,国内外的研究也才刚刚开始,加密和可逆数据隐藏的结合还有很多难点问题有待解决。
技术实现思路
本专利技术所要解决的技术问题是提供一种加密域H.264/AVC视频可逆数据隐藏方法,其在与H.264/AVC视频压缩编码标准相兼容的前提下对H.264/AVC视频进行加密,且加密安全性高,同时能够在加密后的H.264/AVC视频中进行可逆数据隐藏,能够保证隐秘信息在加密域和解密域H.264/AVC视频中都能有效地被提取出,并且在解密和提取隐秘信息后可以完全恢复原始视频。本专利技术解决上述技术问题所采用的技术方案为:一种加密域H.264/AVC视频可逆数据隐藏方法,其特征在于包括H.264/AVC视频加密、加密域的H.264/AVC视频可逆数据隐藏以及隐秘数据提取三部分;所述的H.264/AVC视频加密的处理过程为:对于原始的H.264/AVC视频中预测模式为Intra_4×4预测模式的所有宏块,利用第一密钥生成的二值伪随机序列对每个宏块中模式标志位为0的4×4子块的预测模式的码字的最后3位比特进行比特异或加密,完成每个宏块的预测模式的加密,并利用第四密钥生成的二值伪随机序列对每个宏块中的每个4×4子块中的每个非零残差系数的符号位进行比特异或加密,完成每个4×4子块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为Intra_16×16预测模式的所有宏块,利用第二密钥生成的二值伪随机序列对每个宏块的预测模式的码字的最后1位比特进行比特异或加密,完成每个宏块的预测模式的加密,并利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为Intra_chroma预测模式的所有宏块,对每个宏块的预测模式不加密,而利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为帧间预测模式且运动矢量差分不为0的所有宏块,利用第三密钥生成的二值伪随机序列对每个宏块的运动矢量差分的指数哥伦布码字的最后1位比特进行比特异或加密,完成每个宏块的运动矢量差分的加密,并利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为帧间预测模式且运动矢量差分为0的所有宏块,对每个宏块的运动矢量差分不加密,而利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;通过上述加密得到加密域的H.264/AVC视频;所述的加密域的H.264/AVC视频可逆数据隐藏的具体过程为:②-1、对加密域的H.264/AVC视频的码流进行熵解码,解码得到预测模式为Intra_4×4预测模式的每个宏块中的每个4×4子块中的所有加密的非零残差系数;②-2、确定隐秘信息嵌入区域,记为Z,Z=[Tn-β,Tn]∪[Tp,Tp+β],其中,在此“[]”为区间表示符号,“∪”为并集运算符号,Tn=-1,Tp=1,β为正整数调节因子;②-3、针对步骤②-1中得到的所有加密的非零残差系数,对值大于Tp+β的所有加密的非零残差系数与值小于Tn-β的所有加密的非零残差系数进行预处理,如果步骤②-1中得到的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)大于Tp+β,则令f(i)=f(i)+(β+1),如果步骤②-1中得到的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)小于Tn-β,则令f(i)=f(i)-(β+1);对值大于Tn且小于Tp的所有加密的非零残差系数不进行预处理;对值属于Z的所有加密的非零残差系数不进行预处理;其中,1≤i≤I,I表示步骤②-1中得到的加密的非零残差系数的总个数,f(i)=f(i)+(β+1)和f(i)=f(i)-(β+1)中的“=”为赋值符号;②-4、在步骤②-3的基础上,对值大于Tp+β的所有加密的非零残差系数、值小于Tn-β的所有加密的非零残差系数、值大于Tn且小于Tp的所有加密的非零残差系数不进行隐秘信息嵌入操作;对值属于Z的所有加密的非零残差系数,根据待嵌入的隐秘信息进行修改以完成隐秘信息嵌入操作,完成加密域的H.264/AVC视频可逆数据隐藏,得到含隐秘信息的加密域的H.264/AVC视频,如果经步骤②-3处理后的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)属于区间[Tn-β,Tn],则当待嵌入的隐秘信息比特为0时,令f(i)=f(i)-(Tn-f(i)),当待嵌入的隐秘信息比特为1时,令f(i)=f(i)-(Tn-f(i))-1;如果经步骤②-3处理后的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)属于区间[Tp,Tp+β],则当待嵌入的隐秘信息比特为0时,令f(i)=f(i)+(f(i)-Tp),当待嵌入的隐秘信息比特为1时,令f(i)=f(i)+(f(i)-Tp)+1,其中,f(i)=f(i)-(Tn-f(i))、f(i)=f(i)-(Tn-f(i))-1、f(i)=f(i)+(f(i)-Tp)和f(i)=f(i)+(f(i)-Tp)+1中的“=”为赋值符号;所述的本文档来自技高网
...
一种加密域H.264/AVC视频可逆数据隐藏方法

【技术保护点】
一种加密域H.264/AVC视频可逆数据隐藏方法,其特征在于包括H.264/AVC视频加密、加密域的H.264/AVC视频可逆数据隐藏以及隐秘数据提取三部分;所述的H.264/AVC视频加密的处理过程为:对于原始的H.264/AVC视频中预测模式为Intra_4×4预测模式的所有宏块,利用第一密钥生成的二值伪随机序列对每个宏块中模式标志位为0的4×4子块的预测模式的码字的最后3位比特进行比特异或加密,完成每个宏块的预测模式的加密,并利用第四密钥生成的二值伪随机序列对每个宏块中的每个4×4子块中的每个非零残差系数的符号位进行比特异或加密,完成每个4×4子块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为Intra_16×16预测模式的所有宏块,利用第二密钥生成的二值伪随机序列对每个宏块的预测模式的码字的最后1位比特进行比特异或加密,完成每个宏块的预测模式的加密,并利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为Intra_chroma预测模式的所有宏块,对每个宏块的预测模式不加密,而利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为帧间预测模式且运动矢量差分不为0的所有宏块,利用第三密钥生成的二值伪随机序列对每个宏块的运动矢量差分的指数哥伦布码字的最后1位比特进行比特异或加密,完成每个宏块的运动矢量差分的加密,并利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为帧间预测模式且运动矢量差分为0的所有宏块,对每个宏块的运动矢量差分不加密,而利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;通过上述加密得到加密域的H.264/AVC视频;所述的加密域的H.264/AVC视频可逆数据隐藏的具体过程为:②‑1、对加密域的H.264/AVC视频的码流进行熵解码,解码得到预测模式为Intra_4×4预测模式的每个宏块中的每个4×4子块中的所有加密的非零残差系数;②‑2、确定隐秘信息嵌入区域,记为Z,Z=[Tn‑β,Tn]∪[Tp,Tp+β],其中,在此“[]”为区间表示符号,“∪”为并集运算符号,Tn=‑1,Tp=1,β为正整数调节因子;②‑3、针对步骤②‑1中得到的所有加密的非零残差系数,对值大于Tp+β的所有加密的非零残差系数与值小于Tn‑β的所有加密的非零残差系数进行预处理,如果步骤②‑1中得到的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)大于Tp+β,则令f(i)=f(i)+(β+1),如果步骤②‑1中得到的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)小于Tn‑β,则令f(i)=f(i)‑(β+1);对值大于Tn且小于Tp的所有加密的非零残差系数不进行预处理;对值属于Z的所有加密的非零残差系数不进行预处理;其中,1≤i≤I,I表示步骤②‑1中得到的加密的非零残差系数的总个数,f(i)=f(i)+(β+1)和f(i)=f(i)‑(β+1)中的“=”为赋值符号;②‑4、在步骤②‑3的基础上,对值大于Tp+β的所有加密的非零残差系数、值小于Tn‑β的所有加密的非零残差系数、值大于Tn且小于Tp的所有加密的非零残差系数不进行隐秘信息嵌入操作;对值属于Z的所有加密的非零残差系数,根据待嵌入的隐秘信息进行修改以完成隐秘信息嵌入操作,完成加密域的H.264/AVC视频可逆数据隐藏,得到含隐秘信息的加密域的H.264/AVC视频,如果经步骤②‑3处理后的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)属于区间[Tn‑β,Tn],则当待嵌入的隐秘信息比特为0时,令f(i)=f(i)‑(Tn‑f(i)),当待嵌入的隐秘信息比特为1时,令f(i)=f(i)‑(Tn‑f(i))‑1;如果经步骤②‑3处理后的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)属于区间[Tp,Tp+β],则当待嵌入的隐秘信息比特为0时,令f(i)=f(i)+(f(i)‑Tp),当待嵌入的隐秘信息比特为1时,令f(i)=f(i)+(f(i)‑Tp)+1,其中,f(i)=f(i)‑(Tn‑f(i))、f(i)=f(i)‑(Tn‑f(i))‑1、f(i)=f(i)+(f(i)‑Tp)和f(i)=f(i)+(f(i)‑Tp)+1中的“=”为赋值符号;所述的隐秘数据提取在加密域完成或在解密域完成,在加密域完成隐秘数据提取的具体过程为...

【技术特征摘要】
1.一种加密域H.264/AVC视频可逆数据隐藏方法,其特征在于包括H.264/AVC视频加密、加密域的H.264/AVC视频可逆数据隐藏以及隐秘数据提取三部分;所述的H.264/AVC视频加密的处理过程为:对于原始的H.264/AVC视频中预测模式为Intra_4×4预测模式的所有宏块,利用第一密钥生成的二值伪随机序列对每个宏块中模式标志位为0的4×4子块的预测模式的码字的最后3位比特进行比特异或加密,完成每个宏块的预测模式的加密,并利用第四密钥生成的二值伪随机序列对每个宏块中的每个4×4子块中的每个非零残差系数的符号位进行比特异或加密,完成每个4×4子块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为Intra_16×16预测模式的所有宏块,利用第二密钥生成的二值伪随机序列对每个宏块的预测模式的码字的最后1位比特进行比特异或加密,完成每个宏块的预测模式的加密,并利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为Intra_chroma预测模式的所有宏块,对每个宏块的预测模式不加密,而利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为帧间预测模式且运动矢量差分不为0的所有宏块,利用第三密钥生成的二值伪随机序列对每个宏块的运动矢量差分的指数哥伦布码字的最后1位比特进行比特异或加密,完成每个宏块的运动矢量差分的加密,并利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;对于原始的H.264/AVC视频中预测模式为帧间预测模式且运动矢量差分为0的所有宏块,对每个宏块的运动矢量差分不加密,而利用第四密钥生成的二值伪随机序列对每个宏块中的每个非零残差系数的符号位进行比特异或加密,完成每个宏块的残差系数的加密;通过上述加密得到加密域的H.264/AVC视频;所述的加密域的H.264/AVC视频可逆数据隐藏的具体过程为:②-1、对加密域的H.264/AVC视频的码流进行熵解码,解码得到预测模式为Intra_4×4预测模式的每个宏块中的每个4×4子块中的所有加密的非零残差系数;②-2、确定隐秘信息嵌入区域,记为Z,Z=[Tn-β,Tn]∪[Tp,Tp+β],其中,在此“[]”为区间表示符号,“∪”为并集运算符号,Tn=-1,Tp=1,β为正整数调节因子;②-3、针对步骤②-1中得到的所有加密的非零残差系数,对值大于Tp+β的所有加密的非零残差系数与值小于Tn-β的所有加密的非零残差系数进行预处理,如果步骤②-1中得到的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)大于Tp+β,则令f(i)=f(i)+(β+1),如果步骤②-1中得到的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)小于Tn-β,则令f(i)=f(i)-(β+1);对值大于Tn且小于Tp的所有加密的非零残差系数不进行预处理;对值属于Z的所有加密的非零残差系数不进行预处理;其中,1≤i≤I,I表示步骤②-1中得到的加密的非零残差系数的总个数,f(i)=f(i)+(β+1)和f(i)=f(i)-(β+1)中的“=”为赋值符号;②-4、在步骤②-3的基础上,对值大于Tp+β的所有加密的非零残差系数、值小于Tn-β的所有加密的非零残差系数、值大于Tn且小于Tp的所有加密的非零残差系数不进行隐秘信息嵌入操作;对值属于Z的所有加密的非零残差系数,根据待嵌入的隐秘信息进行修改以完成隐秘信息嵌入操作,完成加密域的H.264/AVC视频可逆数据隐藏,得到含隐秘信息的加密域的H.264/AVC视频,如果经步骤②-3处理后的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)属于区间[Tn-β,Tn],则当待嵌入的隐秘信息比特为0时,令f(i)=f(i)-(Tn-f(i)),当待嵌入的隐秘信息比特为1时,令f(i)=f(i)-(Tn-f(i))-1;如果经步骤②-3处理后的所有加密的非零残差系数中的第i个加密的非零残差系数f(i)属于区间[Tp,Tp+β],则当待嵌入的隐秘信息比特为0时,令f(i)=f(i)+(f(i)-Tp),当待嵌入的隐秘信息比特为1时,令f(i)=f(i)+(f(i)-Tp)+1,其中,f(i)=f(i)-(Tn-f(i))、f(i)=f(i)-(Tn-f(i))-1、f(i)=f(i)+(f(i)-Tp)和f(i)=f(i)+(f(i)-Tp)+1中的“=”为赋值符号;所述的隐秘数据提取在加密域完成或在解密域完成,在加密域完成隐秘数据提取的具体过程为:③-1a、在加密域,对含隐秘信息的加密域的H.264/AVC视频的码流进行熵解码,解码得到预测模式为Intra_4×4预测模式的每个宏块中的每个4×4子块中的所有加密的非零残差系数;③-1b、确定隐秘信息提取区域,记为Z',Z'=Zn∪Zp,Zn=[Tn-2β-1,Tn],Zp=[Tp,Tp+2β+1],其中,“∪”为并集运算符号,在此“[]”为区间表示符号,Tn=-1,Tp=1,β为正整数调节因子;③-1c、针对步骤③-1a中得到的所有加密的非零残差系数,对值大于Tp+2β+1的所有加密的非零残差系数、值小于Tn-2β-1的所有加密的非零残差系数、值大于Tn且小于Tp的所有加密的非零残差系数不进行隐秘信息提取操作;对值属于Z'的所有加密的非零残差系数进行隐秘信息提取操作,提取得到隐秘信息,如果步骤③-1a中得到的所有加密的非零残差系数中的第i'个加密的非零残差系数f'(i')属于Zn,则当mod(Tn-f'(i'),2)等于0时,提取得到的隐秘信息比特为0,当mod(Tn-f'(i'),2)等于1时,提取得到的隐秘信息比特为1;如果步骤③-1a中得到的所有加密的非零残差系数中的第i'个加密的非零残差系数f'(i')属于Zp,则当mod(f'(i')-Tp,2)等于0时,提取得到的隐秘信息比特为0,当mod(f'(i')-Tp,2)等于1时,提取得到的隐秘信息比特为1;其中,1≤i'≤I',在此I'表示步骤③-1a中得到的加密的非零残差系数的总个数,mod()为求余数函数;在解密域完成隐秘数据提取的具体过程为:③-2a、对含隐秘信息的加密域的H.264/AVC视频的码流进行解析,识别含隐秘信息的加密域的H.264/AVC视频的码流中加密的预测模式的码字和加密的运动矢量差分的指数哥伦布码字,并对含隐秘信息的加密域的H.264/AVC视频的码流进行熵解码,解码得到加密的非零残差系数的符号位,对加密的预测模式的码字、加密的运动矢量差分的指数哥伦布码字和加密的非零残差系数的符号位进行解密,再对解密后的非零残差系数进行熵编码,得到解密后的含隐秘信息的H.264/AVC视频的码流;③-2b、在解密域,对解密后的含隐秘信息的H.264/AVC视频的码流进行熵解码,解码得到预测模式为Intra_4×4预测模式的每个宏块中的每个4×4子块中的所有解密的非零残差系数;③-2c、确定隐秘信息提取区域,记为Z',Z'=Zn∪Zp,Zn=[Tn-2β-1,Tn],Zp=[Tp,Tp+2β+1],其中,“∪”为并集运算符号,在此“[]”为区间表示符号,Tn=-1,Tp=1,β为正整数调节因子;③-2d、针对步骤③-2b中得到的所有解密的非零残差系数,对值大于Tp+2β+1的所有解密的非零残差系数、值小于Tn-2β-1的所有解密的非零残差系数、值大于Tn且小于Tp的所有解密的非零残差系数不进行隐秘信息提取操作;对值属于Z'的所有解密的非零残差系数进行隐秘信息提取操作,提取得到隐秘信息,如果步骤③-2b中得到的所有解密的非零残差系数中的第i'个解密的非零残差系数f”(i')属于Zn,则当mod(Tn-f”(i'),2)等于0时,提取得到的隐秘信息比特为0,当mod(Tn-f”(i'),2)等于1时,提取得到的隐秘信息比特为1;如果步骤③-2b中得到的所有解密的非零残差系数中的第i'个解密的非零残差系数f”(i')属于Zp,则当mod(f”(i')-Tp,2)等于0时,提取得到的隐秘信息比特为0,当mod(f”(i')-Tp,2)等于1时,提取得到的隐秘信息比特为1;其中,1≤i'≤I',在此I'表示步骤③-2b中得到的解密的非零残差系数的总个数,mod()为求余数函数。2.根据权利要求1所述的一种加密域H.264/AVC视频可逆数据隐藏方法,其特征在于所述的H.264/AVC视频加密的具体过程为:①-1、将原始的H.264/AVC视频中当前待处理的帧定义为当前帧;①-2、将当前帧中当前待处理的宏块定义为当前宏块;①-3、判断当前宏块的预测模式为帧内预测模式还是为帧间预测模式,如果当前宏块的预测模式为帧内预测模式,则继续执行步骤①-4,如果当前宏块的预测模式为帧间预测模式,则继续执行步骤①-5;①-4、当当前宏块的预测模式为Intra_4×4预测模式时,利用第一密钥生成的二值伪随机序列对当前宏块中的所有模式标志位为0的4×4子块的...

【专利技术属性】
技术研发人员:徐达文
申请(专利权)人:宁波工程学院
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1