CN110809192B - 一种可搭载隐秘信息的视频加密方法 - Google Patents
一种可搭载隐秘信息的视频加密方法 Download PDFInfo
- Publication number
- CN110809192B CN110809192B CN201910976275.1A CN201910976275A CN110809192B CN 110809192 B CN110809192 B CN 110809192B CN 201910976275 A CN201910976275 A CN 201910976275A CN 110809192 B CN110809192 B CN 110809192B
- Authority
- CN
- China
- Prior art keywords
- skip
- macro block
- run
- information
- sequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/835—Generation of protective data, e.g. certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种可搭载隐秘信息的视频加密方法,包括:S1,获取待加密的YUV原始格式的视频文件;S2,逐帧对每一个宏块进行帧内预测或帧间预测,得到最优预测模式下的宏块类型、预测相关参数、CBP、量化指标以及残差系数;S3,将每帧的宏块划分为四个区域,分别为A1、A2、A3、A4,并将每一个区域的宏块按光栅扫描的方式线性排列;S4,获取用户的加密口令Key1,根据加密口令Key1通过伪随机数生成器生成一个伪随机密钥序列random1;本发明具有可抵抗各类轮廓攻击、提供更好的视觉加密效果,同时适用于未经压缩和已经过H.264压缩的视频等特点。
Description
技术领域
本发明涉及多媒体信息安全技术领域,具体涉及一种可搭载隐秘信息的视频加密方法。
背景技术
随着云计算和大数据的不断发展,相关应用程序(例如移动分布式存储)已迅速融入我们的生活。但是云服务器容易受到内部不可靠系统管理员的攻击,并且由于其重要性可能会在外部引发更多攻击,这已经成为云计算发展的主要障碍之一。为了满足不受信任的云存储提供商提供可信视频数据共享的需要,我们需要以加密形式存储私有视频以应对可能出现的数据泄漏情况。因此,云存储管理员被授权访问加密视频而不是原始视频,并直接在加密视频中嵌入一些附加信息以扩展额外功能(例如版权归属或完整性认证),同时保持原始视频内容不被感知。直接在加密域中执行数据隐藏也适用于需要高安全性和隐私保护的其他场景,尤其是监视和医疗等领域,因此值得研究人员研究一种有效的方案。
在过去的几年里,有大量图像密文域信息隐藏的方法。然而尽管这些方法非常实用,由于视频的编码标准和数据结构更为复杂,它们都不能直接应用于视频。H.264/AVC凭借着低码率和高画面质量等优良特性,成为了最广泛应用的视频编码标准,因此非常需要探索一套高效的基于H.264/AVC的密文域信息隐藏方法。但是,将附加数据嵌入压缩且加密的视频比特流中存在一些相当大的挑战:首先,信息隐藏依赖于冗余信息,然而视频数据经过H.264/AVC格式压缩编码后,其冗余度大大得到了降低,提高了数据嵌入的难度。另外,数据隐藏需要我们在加密之前或之后准确地提取隐藏数据,但加密后压缩的视频数据将受到严重干扰,因此很难有效地将信息隐藏算法与加密方案相结合。此外,考虑到视频压缩率和网络负担,所使用的视频加密和信息隐藏都不应该显着增加视频文件的大小。
Lian S等人提出了一种在压缩视频比特流中实现视频加密和水印的方案(LianS,Liu Z,Ren Z,et al.Commutative Encryption and Watermarking in VideoCompression[J].IEEE Transactions on Circuits and Systems for VideoTechnology,2007,17(6):0-778)。在H.264/AVC压缩中,帧内预测模式,运动矢量差和离散余弦变换(DCT)系数的符号被加密,而DCT系数被自适应地加水印。Xu D等人提出了一种CAVLC码字替换的加密和信息隐藏方法(Xu D,Wang R,Shi Y Q.Data Hiding inEncrypted H.264/AVC Video Streams by Codeword Substitution[J].IEEETransactions on Information Forensics&Security,2014,9(4):596-606)。加密帧内预测模式的码字,运动矢量差的码字和非零系数的码字,然后通过使用DCT系数码字替换技术将附加数据嵌入加密域中。随后,Xu D等人改进了码字替换的数据隐藏方法(XuD,Wang R,Shi Y Q.An Improved Scheme for Data Hiding in Encrypted H.264/AVC Videos[J].Journal of Visual Communication and Image Representation,2016:S1047320316000286)。充分利用CAVLC码字中存在的冗余,当suffixLength等于1时,通过配对码字替换进一步增强最大嵌入容量,当suffixLength大于2时,采用基于多个的符号系统。Yao Y等人针对数据嵌入和之后的帧间失真漂移引起的图像失真进行了理论分析(YaoY,Zhang W,Yu N.Inter-frame distortion drift analysis for reversible datahiding in encrypted H.264/AVC video bitstreams[J].Signal Processing,2016:S0165168416300561)。基于此分析,他们给不同DCT系数赋予不同的优先级,根据优先级来进行数据嵌入。
上述的方法和几乎其它所有文献的加密方式都是扰乱帧内预测模式,运动矢量差和非零系数。由于这些加密对视频原始内容的感知造成了很大的破坏,它们容易受到MBS框架攻击(Minemura K,Wong K S,Phan R,et al.A Novel Sketch Attack for H.264/AVCFormat-Compliant Encrypted Video[J].IEEE Transactions on Circuits and Systemsfor Video Technology,2016:1-1)。MBS框架攻击可以根据每个宏块的熵编码所花费的比特数来构造对应于帧的轮廓,
因此,行业内急需设计一套在可以抵抗MBS框架攻击进行视频附加信息隐藏方法。
发明内容
本发明的目的是为了克服现有H.264/AVC视频密文域信息隐藏普遍存在无法抵抗各种类型的轮廓攻击,以及现有可抵抗轮廓攻击的加密方法无法结合信息隐藏的不足,提供了一种可搭载隐秘信息的视频加密方法。
本发明的目的通过以下的技术方案实现:
一种可搭载隐秘信息的视频加密方法,包括:
S1,获取待加密的YUV原始格式的视频文件;
S2,逐帧对每一个宏块进行帧内预测或帧间预测,得到最优预测模式下的宏块类型、预测相关参数、CBP、量化步长以及非零系数;
S3,将每帧的宏块划分为四个区域,分别为A1、A2、A3、A4,并将每一个区域的宏块按光栅扫描的方式线性排列;
S4,获取用户的加密口令Key1,根据加密口令Key1通过伪随机数生成器生成一个伪随机密钥序列random1;
S5,计算出A2和A4区域中的每个非skip宏块的skip_run,每个非skip类型的P/B宏块的I_run;其中skip_run表示为当前非skip宏块前面相邻连续skip宏块的个数,I_run表示为非skip类型的P/B宏块与上一个非skip类型的P/B宏块之间的I宏块个数;
S6,根据伪随机数序列random1将所有的skip_run置乱,再根据置乱后的skip_run重新排列每一个宏块;
S7,根据伪随机数序列random1将所有的I_run置乱,再根据置乱后的I_run重新排列每一个宏块;
S8,根据伪随机数序列random1将所有的I宏块置乱;
S9,保持非skip类型的P/B宏块的CBP和残差系数不变,根据伪随机数序列random1将非skip类型的P/B宏块的最优预测模式下的宏块类型、预测相关参数、量化步长置乱;
S10,将A3区域所有类型的宏块随机置乱;
S11,将四个区域的宏块各自以光栅扫描的顺序重构成一帧后,逐个宏块进行熵编码,完成视频的加密;
S12,将待嵌入附加信息嵌入加密的视频,完成附加信息的隐藏。
优选地,所述将每帧的宏块划分为四个区域包括:将每帧第一行第一列的宏块设置为A1区域,第一行除A1外的所有宏块为A2区域,第一列除A1外的所有宏块为A3区域,整帧除A1、A2、A3外的所有宏块为A4区域。
优选地,步骤S6中的根据伪随机数序列random1将所有的skip_run置乱包括:从伪随机密钥序列random1上向后取log(N)个比特,log(N)用十进制表示为T,其中N表示为非skip宏块的个数,交换第一个skip_run以及第T%N个skip_run的值,其中%为模运算,按照同样方法依次交换第二个skip_run的值、第三个skip_run的值、…,直到第N个skip_run的值发生交换,完成所有skip_run的置乱。
优选地,步骤S7中的根据伪随机数序列random1将所有的I_run置乱包括:从伪随机密钥序列random1上向后取log(K)个比特,log(K)用十进制表示为T,其中K表示为非skip类型的P/B宏块的个数,交换第一个I_run以及第T%K个I_run的值,其中%为模运算;按照同样的方法依次交换第二个I_run的值、第三个I_run的值、…,直到第K个I_run的值发生交换,完成所有I_run的置乱。
优选地,步骤S8中的根据伪随机数序列random1将所有的I宏块置乱包括:从伪随机密钥序列random1上向后取log(R)个比特,将log(R)用十进制表示为T,其中R表示为I宏块的个数,交换第一个I宏块以及第T%R个I宏块的位置,其中%为模运算;按照相同的方法依次交换第二个I宏块的位置、第三个I宏块的位置、…,直到第R个I宏块的位置发生交换,完成所有I宏块的置乱。
优选地,所述预测相关参数包括:帧内预测模式、参考帧索引和运动向量。
优选地,步骤S9中的根据伪随机数序列random1将非skip类型的P/B宏块的最优预测模式下的宏块类型、预测相关参数、量化步长置乱包括:从伪随机密钥序列random1上向后取log(M)个比特,将log(M)用十进制表示为T,其中M表示为非skip类型的P/B宏块的个数,交换第一个非skip类型的P/B宏块以及第T%M个非skip类型的P/B宏块的最优预测模式下的宏块类型、预测相关参数、量化步长,其中%为模运算;按照相同的方法依次交换第二个非skip类型的P/B宏块的信息、第三个非skip类型的P/B宏块的信息、…,直到第M个非skip类型的P/B宏块的信息发生交换,完成所有非skip类型的P/B宏块的信息置乱。
优选地,步骤S10中的将A3区域所有类型的宏块随机置乱包括:从伪随机密钥序列random1上向后取log(X)个比特,将log(X)用十进制表示为T,其中X表示为A3区域内所有宏块的个数,交换第一个宏块以及第T%X个宏块的位置,其中%为模运算;按照同样的方法依次交换第二个宏块的位置、第三个宏块的位置、…,直到第X个宏块的位置发生交换,完成所有A3区域内宏块的置乱。
优选地,步骤S12中的将待嵌入附加信息嵌入加密的视频包括:
S121,将待嵌入附加信息比特化成二进制的信息序列data1;
S122,获取用户的待嵌入信息加密口令Key2,根据待嵌入信息加密口令Key2通过伪随机数生成器算法生成一个与信息序列data1等长的伪随机密钥序列seq2;
S123,以每帧的宏块按照光栅扫描,非零残差系数按照zig-zag扫描的方式,将一帧中所有非skip类型的P/B宏块内的所有非零残差系数进行序列化,得到序列C;
S124,将二进制信息序列data1与伪随机密钥序列seq2进行异或运算,生成二进制加密信息序列data2,将二进制加密信息序列data2按照如下规则进行数据嵌入:
当suffixLength>1时,若当前待嵌入的二进制加密信息比特di=0,则修改后的系数c′i与修改前的系数ci的关系:
若当前待嵌入的二进制加密信息比特di=1时,则修改后的系数c′i与修改前的系数ci的关系:
其中%为模运算;
S125,将宏块的非零残差系数进行熵编码,输出已嵌入附加信息的加密视频比特流。
优选地,步骤S12之后还包括:已嵌入附加信息的提取;所述已嵌入附加信息的提取包括:获取有隐藏信息的视频比特流,对视频流进行熵解码;获取每一个非skip类型的P/B宏块的非零残差系数,按照宏块光栅扫描、非零残差系数zig-zag扫描的方式逐个提取非零残差系数c′i中隐藏的数据di,得到信息序列data2,提取的标准为:
其中%为模运算;
获取待嵌入数据加密口令Key2,根据待嵌入数据加密口令Key2通过伪随机数生成器算法生成一个与信息序列data2等长的伪随机数序列seq2;将从非零残差系数序列中提取出来的信息序列data2与伪随机密钥序列seq2进行异或运算,即可得到嵌入在视频中的原始数据。
本发明相对于现有技术具有如下优点:
本方案主要分为视频加密、数据嵌入、数据提取三个部分。在视频加密中,通过置乱skip_run、I_run、I宏块以及非skip类型的P/B宏块的信息来满足安全需求,有效地抵抗MBS框架攻击。在数据嵌入中,通过在suffixLength>1的情况下对非零系数码字替换来达到要求;在数据提取部分,通过判断非零系数的奇偶性来输出嵌入的数据信息。本方案具有可抵抗各类轮廓攻击、提供更好的视觉加密效果,同时适用于未经压缩和已经过H.264压缩的视频等特点,并可通过嵌入的额外信息提供各种扩展功能,可用于保护商业或个人视频通过公开信道传输或存储至云存储平台时的安全和隐私,实用价值高。
附图说明
构成本申请的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明的可搭载隐秘信息的视频加密方法的流程示意图。
图2为本发明的加密流程图。
图3为本发明的A1、A2、A3、A4区域划分示意图。
图4为本发明的A2、A4区域的skip_run、I_run置换,I宏块置换以及非skip类型的P/B宏块置换示意图。
图5为本发明的数据嵌入流程图。
图6为本发明的数据提取流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明。
参见图1-6,一种可搭载隐秘信息的视频加密方法,包括:
S1,获取待加密的YUV原始格式的视频文件;
S2,逐帧对每一个宏块进行帧内预测或帧间预测,得到最优预测模式下的宏块类型、预测相关参数、CBP、量化步长以及残差系数;所述预测相关参数包括:帧内预测模式、参考帧索引和运动向量。按照H.264/AVC协议标准逐帧逐宏块进行帧内预测/帧间预测、计算残差、整型DCT变换和量化等操作可以逐帧对每一个宏块进行帧内预测或帧间预测,得到最优预测模式下的宏块类型、预测相关参数、CBP、量化步长以及非零系数;
S3,将每帧的宏块划分为四个区域,分别为A1、A2、A3、A4,并将每一个区域的宏块按光栅扫描的方式线性排列;参见图3,所述将每帧的宏块划分为四个区域包括:将每帧第一行第一列(最左上角)的宏块为A1区域,第一行除A1外的所有宏块为A2区域,第一列除A1外的所有宏块为A3区域,整帧除A1、A2、A3外的所有宏块为A4区域。
S4,获取用户的加密口令Key1,根据加密口令Key1通过伪随机数生成器生成一个伪随机密钥序列random1;视频的每一帧都是用步骤S5到步骤S10来进行加密。
S5,计算出A2和A4区域中的每个非skip宏块的skip_run,每个非skip类型的P/B宏块的I_run;其中,A1区域不用置乱。其中skip_run表示为当前非skip宏块前面相邻连续skip宏块的个数,I_run表示为当前非skip类型的P/B宏块与上一个非skip类型的P/B宏块之间的I宏块个数;
S6,根据伪随机数序列random1将所有的skip_run置乱,再根据置乱后的skip_run重新排列每一个宏块;其中根据伪随机数序列random1将所有的skip_run置乱包括:从伪随机密钥序列random1上向后取log(N)个比特,log(N)用十进制表示为T,其中N表示为非skip宏块的个数,交换第一个skip_run以及第T%N个skip_run的值,其中%为模运算,按照同样方法依次交换第二个skip_run的值、第三个skip_run的值、…,直到第N个skip_run的值发生交换,完成所有skip_run的置乱。
S7,根据伪随机数序列random1将所有的I_run置乱,再根据置乱后的I_run重新排列每一个宏块;其中根据伪随机数序列random1将所有的I_run置乱包括:从伪随机密钥序列random1上向后取log(K)个比特,log(K)用十进制表示为T,其中K表示为非skip类型的P/B宏块的个数,交换第一个I_run以及第T%K个I_run的值,其中%为模运算;按照同样的方法依次交换第二个I_run的值、第三个I_run的值、…,直到第K个I_run的值发生交换,完成所有I_run的置乱。比如:假设有R=14个宏块,则在密钥序列random1上取个比特,这4个比特用十进制表示为T,将第一个I宏块与第T%R个I宏块的位置互换。
S8,根据伪随机数序列random1将所有的I宏块置乱;其中,根据伪随机数序列random1将所有的I宏块置乱包括:从伪随机密钥序列random1上向后取log(R)个比特,将log(R)用十进制表示为T,其中R表示为I宏块的个数,交换第一个I宏块以及第T%R个I宏块的位置,其中%为模运算;按照相同的方法依次交换第二个I宏块的位置、第三个I宏块的位置、…,直到第R个I宏块的位置发生交换,完成所有I宏块的置乱。
S9,保持非skip类型的P/B宏块的CBP和残差系数不变,根据伪随机数序列random1将非skip类型的P/B宏块的最优预测模式下的宏块类型、预测相关参数、量化步长置乱;其中,根据伪随机数序列random1将非skip类型的P/B宏块的最优预测模式下的宏块类型、预测相关参数、量化步长置乱包括:从伪随机密钥序列random1上向后取log(M)个比特,将log(M)用十进制表示为T,其中M表示为非skip类型的P/B宏块的个数,交换第一个非skip类型的P/B宏块以及第T%M个非skip类型的P/B宏块的最优预测模式下的宏块类型、预测相关参数、量化步长,其中%为模运算;按照相同的方法依次交换第二个非skip类型的P/B宏块的信息、第三个非skip类型的P/B宏块的信息、…,直到第M个非skip类型的P/B宏块的信息发生交换,完成所有非skip类型的P/B宏块的信息置乱。
S10,将A3区域所有类型的宏块随机置乱;其中,将A3区域所有类型的宏块随机置乱包括:从伪随机密钥序列random1上向后取log(X)个比特,将log(X)用十进制表示为T,其中X表示为A3区域内所有宏块的个数,交换第一个宏块以及第T%X个宏块的位置,其中%为模运算;按照同样的方法依次交换第二个宏块的位置、第三个宏块的位置、…,直到第X个宏块的位置发生交换,完成所有A3区域内宏块的置乱。
S11,将四个区域的宏块各自以光栅扫描的顺序重构成一帧后,逐个宏块进行熵编码,完成视频的加密;
S12,将待嵌入附加信息嵌入加密的视频,完成附加信息的隐藏。参见图5,其中,将待嵌入附加信息嵌入加密的视频包括:
S121,将待嵌入附加信息(待嵌入数据)比特化成二进制的信息序列data1;
S122,获取用户的待嵌入信息加密口令Key2,根据待嵌入信息加密口令Key2通过伪随机数生成器算法生成一个与信息序列data1等长的伪随机密钥序列seq2;
S123,以每帧的宏块按照光栅扫描,非零残差系数按照zig-zag扫描的方式,将一帧中所有非skip类型的P/B宏块内的所有非零残差系数进行序列化,得到序列C;该非零系数序列C即为数据嵌入的载体。
S124,将二进制信息序列data1与伪随机密钥序列seq2进行异或运算,生成二进制加密信息序列data2,将二进制加密信息序列data2按照如下规则进行数据嵌入:
当suffixLength>1时,若当前待嵌入的二进制加密信息比特di=0,则修改后的系数c′i与修改前的系数ci的关系:
若当前待嵌入的二进制加密信息比特di=1时,则修改后的系数c′i与修改前的系数ci的关系:
其中%为模运算;suffixLength是一个协议中的变量,是本领域内公知的变量。
S125,将宏块的非零残差系数进行熵编码,输出已嵌入附加信息的H.264/AVC加密视频比特流。
在本实施例,步骤S12之后还包括:已嵌入附加信息的提取;参见图6,所述已嵌入附加信息的提取包括:获取已嵌入附加信息(有隐藏信息)的H.264/AVC视频比特流(加密或解密状态下),对视频流进行熵解码;获取每一个非skip类型的P/B宏块的非零残差系数,按照宏块光栅扫描、非零系数zig-zag扫描的方式逐个提取非零系数c′i中隐藏的数据di,得到信息序列data2,提取的标准:
其中%为模运算;
获取待嵌入数据加密口令Key2,根据待嵌入数据加密口令Key2通过伪随机数生成器算法生成一个与信息序列data2等长的伪随机数序列seq2;将从非零系数序列中提取出来的信息序列data2与伪随机密钥序列seq2进行异或运算,即可得到嵌入在视频中的原始数据。
本方案提出了一种新的H.264/AVC密文域信息隐藏方案,将视频附加数据嵌入到加密视频比特流中,同时有效地抵抗MBS框架攻击。首先,对于每个非skip宏块,都有一个skip_run用于记录其前面相邻位置连续的skip宏块个数,该skip_run将会被随机置换。对于每个非skip类型的帧间预测宏块(P/B宏块),还有一个I_run用来记录当前非skip类型的P/B宏块与上一个非skip类型的帧间预测宏块(P/B宏块)之间的帧内预测宏块(I宏块)的个数,该I_run同样会被随机置乱。为了进一步加密视频流且影响MBS框架攻击的效果,我们还对帧内预测宏块(I宏块)随机置乱,对非skip类型的帧间预测宏块(P/B宏块)的信息进行随机置乱。这些加密和数据隐藏步骤经过精心设计,可以保持格式兼容性,且只会极少地增加文件大小。所提出的方案可以在安全性方面取得优异的性能,特别是在MBS框架攻击和其他JPEG方向地框架攻击,包括EAC、PLZ、DCCA、INCC攻击等等。另外,一些广泛采用的加密技术,例如非零DCT系数的符号位和帧内预测模式,可以作为选项结合到提出的加密方案中以提供进一步的安全性
上述具体实施方式为本发明的优选实施例,并不能对本发明进行限定,其他的任何未背离本发明的技术方案而所做的改变或其它等效的置换方式,都包含在本发明的保护范围之内。
Claims (4)
1.一种可搭载隐秘信息的视频加密方法,其特征在于,包括:
S1,获取待加密的YUV原始格式的视频文件;
S2,逐帧对每一个宏块进行帧内预测或帧间预测,得到最优预测模式下的宏块类型、预测相关参数、CBP、量化步长以及残差系数;
S3,将每帧的宏块划分为四个区域,分别为A1、A2、A3、A4,并将每一个区域的宏块按光栅扫描的方式线性排列;
S4,获取用户的加密口令Key1,根据加密口令Key1通过伪随机数生成器生成一个伪随机密钥序列random1;
S5,计算出A2和A4区域中的每个非skip宏块的skip_run,每个非skip类型的P/B宏块的I_run;其中skip_run表示为当前非skip宏块前面相邻连续skip宏块的个数,I_run表示为当前非skip类型的P/B宏块与上一个非skip类型的P/B宏块之间的I宏块个数;
S6,根据伪随机数序列random1将所有的skip_run置乱,再根据置乱后的skip_run重新排列每一个宏块;
S7,根据伪随机数序列random1将所有的I_run置乱,再根据置乱后的I_run重新排列每一个宏块;
S8,根据伪随机数序列random1将所有的I宏块置乱;
S9,保持非skip类型的P/B宏块的CBP和残差系数不变,根据伪随机数序列random1将非skip类型的P/B宏块的最优预测模式下的宏块类型、预测相关参数、量化步长置乱;
S10,将A3区域所有类型的宏块随机置乱;
S11,将四个区域的宏块各自以光栅扫描的顺序重构成一帧后,逐个宏块进行熵编码,完成视频的加密;
S12,将待嵌入附加信息嵌入加密的视频,完成附加信息的隐藏;
步骤S6中的根据伪随机数序列random1将所有的skip_run置乱包括:
从伪随机密钥序列random1上向后取log(N)个比特,log(N)用十进制表示为T,其中N表示为非skip宏块的个数,交换第一个skip_run以及第T%N个skip_run的值,其中%为模运算,按照同样方法依次交换第二个skip_run的值、第三个skip_run的值、…,直到第N个skip_run的值发生交换,完成所有skip_run的置乱;
步骤S7中的根据伪随机数序列random1将所有的I_run置乱包括:
从伪随机密钥序列random1上向后取log(K)个比特,log(K)用十进制表示为T,其中K表示为非skip类型的P/B宏块的个数,交换第一个I_run以及第T%K个I_run的值,其中%为模运算;按照同样的方法依次交换第二个I_run的值、第三个I_run的值、…,直到第K个I_run的值发生交换,完成所有I_run的置乱;
步骤S8中的根据伪随机数序列random1将所有的I宏块置乱包括:
从伪随机密钥序列random1上向后取log(R)个比特,将log(R)用十进制表示为T,其中R表示为I宏块的个数,交换第一个I宏块以及第T%R个I宏块的位置,其中%为模运算;按照相同的方法依次交换第二个I宏块的位置、第三个I宏块的位置、…,直到第R个I宏块的位置发生交换,完成所有I宏块的置乱;
步骤S9中的根据伪随机数序列random1将非skip类型的P/B宏块的最优预测模式下的宏块类型、预测相关参数、量化步长置乱包括:
从伪随机密钥序列random1上向后取log(M)个比特,将log(M)用十进制表示为T,其中M表示为非skip类型的P/B宏块的个数,交换第一个非skip类型的P/B宏块以及第T%M个非skip类型的P/B宏块的最优预测模式下的宏块类型、预测相关参数、量化步长,其中%为模运算;按照相同的方法依次交换第二个非skip类型的P/B宏块的信息、第三个非skip类型的P/B宏块的信息、…,直到第M个非skip类型的P/B宏块的信息发生交换,完成所有非skip类型的P/B宏块的信息置乱;
步骤S10中的将A3区域所有类型的宏块随机置乱包括:
从伪随机密钥序列random1上向后取log(X)个比特,将log(X)用十进制表示为T,其中X表示为A3区域内所有宏块的个数,交换第一个宏块以及第T%X个宏块的位置,其中%为模运算;按照同样的方法依次交换第二个宏块的位置、第三个宏块的位置、…,直到第X个宏块的位置发生交换,完成所有A3区域内宏块的置乱;
步骤S12中的将待嵌入附加信息嵌入加密的视频包括:
S121,将待嵌入附加信息比特化成二进制的信息序列data1;
S122,获取用户的待嵌入信息加密口令Key2,根据待嵌入信息加密口令Key2通过伪随机数生成器算法生成一个与信息序列data1等长的伪随机密钥序列seq2;
S123,以每帧的宏块按照光栅扫描,非零残差系数按照zig-zag扫描的方式,将一帧中所有非skip类型的P/B宏块内的所有非零残差系数进行序列化,得到序列C;
S124,将二进制信息序列data1与伪随机密钥序列seq2进行异或运算,生成二进制加密信息序列data2,将二进制加密信息序列data2按照如下规则进行数据嵌入:
当suffixLength>1时,若当前待嵌入的二进制加密信息比特di=0,则修改后的系数c′i与修改前的系数ci的关系:
若当前待嵌入的二进制加密信息比特di=1时,则修改后的系数c′i与修改前的系数ci的关系:
其中%为模运算;
S125,将宏块的非零残差系数进行熵编码,输出已嵌入附加信息的加密视频比特流。
2.根据权利要求1所述的可搭载隐秘信息的视频加密方法,其特征在于,所述将每帧的宏块划分为四个区域包括:将每帧第一行第一列的宏块设置为A1区域,第一行除A1外的所有宏块为A2区域,第一列除A1外的所有宏块为A3区域,整帧除A1、A2、A3外的所有宏块为A4区域。
3.根据权利要求1所述的可搭载隐秘信息的视频加密方法,其特征在于,所述预测相关参数包括:帧内预测模式、参考帧索引和运动向量。
4.根据权利要求1所述的可搭载隐秘信息的视频加密方法,其特征在于,步骤S12之后还包括:已嵌入附加信息的提取;所述已嵌入附加信息的提取包括:
获取有隐藏信息的视频比特流,对视频流进行熵解码;
获取每一个非skip类型的P/B宏块的非零残差系数,按照宏块光栅扫描、非零残差系数zig-zag扫描的方式逐个提取非零残差系数c′i中隐藏的数据di,得到信息序列data2,提取的标准为:
其中%为模运算;
获取待嵌入数据加密口令Key2,根据待嵌入数据加密口令Key2通过伪随机数生成器算法生成一个与信息序列data2等长的伪随机数序列seq2;
将从非零残差系数序列中提取出来的信息序列data2与伪随机密钥序列seq2进行异或运算,即可得到嵌入在视频中的原始数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910976275.1A CN110809192B (zh) | 2019-10-15 | 2019-10-15 | 一种可搭载隐秘信息的视频加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910976275.1A CN110809192B (zh) | 2019-10-15 | 2019-10-15 | 一种可搭载隐秘信息的视频加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110809192A CN110809192A (zh) | 2020-02-18 |
CN110809192B true CN110809192B (zh) | 2021-07-20 |
Family
ID=69488452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910976275.1A Active CN110809192B (zh) | 2019-10-15 | 2019-10-15 | 一种可搭载隐秘信息的视频加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110809192B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111459208A (zh) * | 2020-04-17 | 2020-07-28 | 南京铁道职业技术学院 | 针对地铁供电系统电能的操纵系统及其方法 |
CN111800634B (zh) * | 2020-06-30 | 2024-06-04 | 西安万像电子科技有限公司 | 图像处理方法及装置 |
CN115361563B (zh) * | 2022-07-07 | 2024-10-18 | 华南理工大学 | H.264加密及密文域信息隐藏方法、装置及存储介质 |
CN116320471B (zh) * | 2023-05-18 | 2023-08-22 | 中南大学 | 视频信息隐藏方法、系统、设备及视频隐藏信息提取方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1617584A (zh) * | 2004-12-06 | 2005-05-18 | 武汉大学 | 一种视频信息的动态随机置乱加解密方法 |
CN101110944A (zh) * | 2007-08-31 | 2008-01-23 | 湖北科创高新网络视频股份有限公司 | 一种视频数据的加密方法和装置 |
CN102088611A (zh) * | 2011-03-10 | 2011-06-08 | 上海交通大学 | 基于h.264标准运动矢量的脆弱性水印嵌入和提取方法 |
CN102685500A (zh) * | 2012-05-08 | 2012-09-19 | 合肥工业大学 | 基于信息变长分组结构的h.264大容量信息隐藏方法 |
CN103442253A (zh) * | 2013-07-17 | 2013-12-11 | 宁波工程学院 | 一种加密域h.264/avc视频数据隐藏方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101331242B1 (ko) * | 2012-07-27 | 2013-11-26 | 차병래 | 검색가능 이미지 암호화 시스템 |
CN104038761B (zh) * | 2014-06-05 | 2017-06-23 | 宁波工程学院 | 一种基于cabac二进制串映射的加密域h.264/avc视频数据隐藏方法 |
CN107809644B (zh) * | 2017-10-26 | 2019-08-20 | 宁波工程学院 | 一种双重加密的加密域图像可逆数据隐藏方法 |
CN109151486B (zh) * | 2018-09-06 | 2020-10-09 | 西南交通大学 | Jpeg图像比特流加密域可逆数据隐藏方法 |
CN109803142B (zh) * | 2019-01-08 | 2021-04-13 | 宁波工程学院 | 一种基于邻域预测的加密域图像可逆数据隐藏方法 |
AU2019100113A4 (en) * | 2019-02-03 | 2019-03-07 | Henan Normal University | A privacy-preserved reversible data hiding scheme for color images |
CN109948307B (zh) * | 2019-03-01 | 2021-01-05 | 北京交通大学 | 基于像素多尺度预测的可逆数据隐藏方法 |
CN109981918B (zh) * | 2019-03-01 | 2020-06-26 | 上海电力学院 | 一种基于四叉树动态块分割的加密图像可逆信息隐藏方法 |
-
2019
- 2019-10-15 CN CN201910976275.1A patent/CN110809192B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1617584A (zh) * | 2004-12-06 | 2005-05-18 | 武汉大学 | 一种视频信息的动态随机置乱加解密方法 |
CN101110944A (zh) * | 2007-08-31 | 2008-01-23 | 湖北科创高新网络视频股份有限公司 | 一种视频数据的加密方法和装置 |
CN102088611A (zh) * | 2011-03-10 | 2011-06-08 | 上海交通大学 | 基于h.264标准运动矢量的脆弱性水印嵌入和提取方法 |
CN102685500A (zh) * | 2012-05-08 | 2012-09-19 | 合肥工业大学 | 基于信息变长分组结构的h.264大容量信息隐藏方法 |
CN103442253A (zh) * | 2013-07-17 | 2013-12-11 | 宁波工程学院 | 一种加密域h.264/avc视频数据隐藏方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110809192A (zh) | 2020-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110809192B (zh) | 一种可搭载隐秘信息的视频加密方法 | |
Xu et al. | Data hiding in encrypted H. 264/AVC video streams by codeword substitution | |
Wen et al. | A format-compliant configurable encryption framework for access control of video | |
US9473829B2 (en) | Methods and devices for selective format-preserving data encryption | |
Xu | Commutative encryption and data hiding in HEVC video compression | |
US20020018565A1 (en) | Configurable encryption for access control of digital content | |
Li et al. | Joint image encryption and compression schemes based on 16× 16 DCT | |
Xu et al. | An improved scheme for data hiding in encrypted H. 264/AVC videos | |
CN110677694A (zh) | 一种用于抵抗轮廓攻击的视频加密方法 | |
Jiang et al. | An improved selective encryption for H. 264 video based on intra prediction mode scrambling | |
CN107911715B (zh) | 一种基于cavlc编码的h.264/avc视频格式兼容加密方法 | |
Elkamchouchi et al. | New video encryption schemes based on chaotic maps | |
He et al. | A novel selective encryption scheme for H. 264/AVC video with improved visual security | |
Tew et al. | Separable authentication in encrypted hevc video | |
Lui et al. | Chaos-based selective encryption for H. 264/AVC | |
Dolati et al. | A selective encryption for H. 264/AVC videos based on scrambling | |
Xu | Data hiding in partially encrypted HEVC video | |
Obaida | Combining audio samples and image frames for enhancing video security | |
CN111372083B (zh) | 一种基于层间处理的shvc视频加密方法 | |
WANG et al. | Perceptual video encryption scheme for mobile application based on H. 264 | |
Shi et al. | Selective encryption for H. 264/AVC video coding | |
Hooda et al. | A comprehensive survey of video encryption algorithms | |
Liu et al. | Bi-directional Block Encoding for Reversible Data Hiding over Encrypted Images | |
CN115278243A (zh) | 对抗深度学习人脸攻击的实时视频加密方法及装置 | |
Mao et al. | Fast compression domain video encryption scheme for H. 264/AVC streaming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |