CN110677694B - 一种用于抵抗轮廓攻击的视频加密方法 - Google Patents

一种用于抵抗轮廓攻击的视频加密方法 Download PDF

Info

Publication number
CN110677694B
CN110677694B CN201910976296.3A CN201910976296A CN110677694B CN 110677694 B CN110677694 B CN 110677694B CN 201910976296 A CN201910976296 A CN 201910976296A CN 110677694 B CN110677694 B CN 110677694B
Authority
CN
China
Prior art keywords
sequence
macro block
chaotic
current frame
frame
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
Application number
CN201910976296.3A
Other languages
English (en)
Other versions
CN110677694A (zh
Inventor
何军辉
赵扬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN201910976296.3A priority Critical patent/CN110677694B/zh
Publication of CN110677694A publication Critical patent/CN110677694A/zh
Application granted granted Critical
Publication of CN110677694B publication Critical patent/CN110677694B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/88Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26613Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing keys in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4408Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了一种用于抵抗轮廓攻击的视频加密方法,包括:接收待加密的视频,对所述视频的比特流进行解码;将当前帧的宏块划分为四个区域,每个区域内的宏块分别组成一维的宏块序列;利用混沌映射将宏块序列置乱;使用2D‑LSCM生成与当前帧非零DCT系数个数相等的混沌序列,将所述混沌序列和DCT系数的符号位进行异或运算加密;对待加密视频中经加密操作改变的宏块的语法元素进行部分重编码,得到加密的视频比特流,完成加密。由于本发明利用优化设计的宏块置乱实现加密,能够有效抵抗现有的各种类型的轮廓攻击。同时,本方法的加密密钥与待加密视频帧非零DCT系数数量直方图相关,能有效抵抗已知明文攻击。

Description

一种用于抵抗轮廓攻击的视频加密方法
技术领域
本发明涉及多媒体信息安全技术领域,具体涉及一种用于抵抗轮廓攻击的视频加密方法。
背景技术
随着数字视频处理技术的进步以及互联网的高速发展,视频作为一种包含丰富信息的载体获得了广泛的应用。因此,如何有效保护商业或个人视频通过公开信道传输或存储至云存储平台时的安全和隐私,越来越受到人们的重视。
视频加密是一种保护视频内容安全的常用方法。加密算法可以在密钥的控制下将一段明文视频转换为一段类似噪声的密文视频,从而使得只有拥有密钥的合法用户才能获取到视频的原始内容,而没有密钥的非法用户则只能获得杂乱无章的噪声内容。
H.264/AVC编码标准是如今应用最为广泛的一种视频编码标准,因此针对H.264/AVC视频的加密算法具有良好的应用价值。现有两种类型的策略来保护H.264/AVC视频,一种安全策略是用传统的加密算法加密整个视频流,被称为直接加密,例如使用和,但这会导致加密视频格式不兼容;另一种与H.264/AVC标准兼容的视频选择性加密近年得到了更多关注,已经提出了很多选择性加密的方法。目前已有的H.264/AVC视频加密算法普遍存在着无法抵抗各种类型的轮廓攻击的缺陷。
Minemura等人提出了一种针对格式兼容的H.264/AVC加密视频的轮廓攻击MBS(K.Minemura,K.Wong,R.C.W.Phan,and K.Tanaka,“A novel sketch attack for H.264/AVC format-compliant encrypted video,”IEEE Transactions on Circuits andSystems for Video Technology.,vol.27,no.11,pp.2309–2321,2017),其核心思想是利用宏块编码比特数的差异性来攻击加密视频,从而生成与原视频相似的灰度轮廓图像。
Peng等人提出的基于加密帧内预测模式、运动矢量差值和DCT系数的H.264/AVC视频加密方法(F.Peng,X.-q.Gong,M.Long,and X.-m.Sun,“A selective encryptionscheme for protecting H.264/AVC video in multimedia social network,”Multimedia Tools and Applications,vol.76,no.3,pp.3235–3253,2017)和Ding等人提出的基于改变DCT系数扫描顺序的H.264/AVC视频加密方法(X.Ding,Y.Deng,G.Yang,Y.Song,D.He,and X.Sun,“Design of new scan orders for perceptual encryption ofH.264/AVC videos,”IET Information Security.,vol.11,no.2,pp.55–65,2017)均无法抵抗MBS轮廓攻击以及一些针对JPEG图像的传统轮廓攻击。此外这些加密方法的视觉效果也不够理想。
发明内容
本发明的目的是为了克服以上现有技术存在的不足,提供了一种能够抵抗轮廓攻击的用于抵抗轮廓攻击的视频加密方法。
本发明的目的通过以下的技术方案实现:
一种用于抵抗轮廓攻击的视频加密方法,包括:
S1,接收待加密的视频,对所述视频的比特流进行解码;
S2,获取解码后的每一帧视频图像的语法元素;
S3,对当前帧的帧类型进行判断;
S4,根据当前帧的帧类型从所述语法元素中提取与帧内容相关的参数;
S5,选择混沌映射f和对应的初始条件Ψ,得到初始的混沌映射f(Ψ),其中初始条件Ψ作为种子密钥,再根据提取的参数以及种子密钥生成自适应的加密密钥,得到与当前帧内容相关的混沌映射;
S6,将当前帧的宏块划分为四个区域,每个区域内的宏块分别组成一维的宏块序列;
S7,利用混沌映射将宏块序列置乱;
S8,使用2D-LSCM生成与当前帧非零DCT系数个数相等的混沌序列,将所述混沌序列和DCT系数的符号位进行异或运算加密;
S9,对待加密视频中经加密操作改变的宏块的语法元素进行部分重编码,得到加密的视频比特流,完成加密。
优选地,若当前帧的帧类型为I帧,则步骤S3-S7为:
S41,从所述语法元素中提取非零DCT系数的统计特征C、当前帧的帧序号F以及宏块数P,Pj表示一帧中I宏块中prev_intra4×4_pred_mode标志位为1的4×4子块数量为j(j=0,1,...,16)的I宏块数,所有的pj组成宏块数p;
S51,选择混沌映射f,并选定初始条件Ψ作为种子密钥,得到初始的混沌映射f(Ψ),再根据统计特征C、当前帧的帧序号F、宏块数P以及种子密钥生成自适应的加密密钥,得到与当前帧内容相关的混沌映射f(C,F,P|Ψ);
S61,将当前帧的宏块划分为四个区域,每个区域内的宏块分别组成一维的宏块序列S0,S1,S2和S3
S71,利用与帧内容相关的混沌映射f(C,F,P|Ψ)对宏块序列S1进行混沌迭代,生成长度与宏块序列S1的元素个数相等的混沌序列;对所述混沌序列的元素按照大小进行排序,记录已排序序列中的随机数在原始序列中的位置,将所有的位置数形成一个新序列;
S81,利用所述新序列分别对S1内部的宏块置乱;
S91,重复执行步骤S71-S81,完成对S2和S3的宏块置乱。
优选地,步骤S51的再根据统计特征C、当前帧的帧序号F、宏块数P以及种子密钥生成自适应的加密密钥包括:
接收用户输入的大小为256比特的初始密钥K,将DCT系数的统计特征C、当前帧的帧序号F和宏块数P输入SHA3-256哈希函数,得到的256比特的哈希值,将所述哈希值和初始密钥K进行异或运算,得到密钥Kf
其中,
Figure BDA0002233743750000041
根据密钥Kf=(b1b2...b256)2,两组初始状态
Figure BDA0002233743750000042
Figure BDA0002233743750000043
用于两轮排列,具体生成方法如下:
Figure BDA0002233743750000044
Figure BDA0002233743750000045
Figure BDA0002233743750000046
采用二维逻辑正弦耦合映射(LSCM):
Figure BDA0002233743750000047
根据式(1)生成混沌序列
Figure BDA0002233743750000048
目标序列S=(m1,m2,...,mL)使用该混沌序列
Figure BDA0002233743750000049
进行随机排列,从中提取
Figure BDA00022337437500000410
重新排列后的序列为
Figure BDA00022337437500000411
P为根据X值的排列操作,其中xt+ii≤xt+i2≤...≤xt+iL
优选地,在步骤S61中宏块序列的划分方式为:
当前帧的第一个宏块构成S0;排除第一个宏块后,第一行的宏块按从左到右的顺序构成S1;排除第一个宏块后,第一列的宏块按从上到下的顺序构成S2;剩下的宏块按从左到右和从上到下的顺序构成S3
优选地,在步骤S71中,迭代生成的随机数序列为(0.894,0.351,0.601,0.282,0.531)排序之后变为(0.282,0.351,0.531,0.601,0.894),该已排序序列的随机数在原始序列中的位置依次是(4,2,5,3,1),(4,2,5,3,1)为所生成的新序列;在步骤S81中,第一次取出第4个位置上的宏块,第二次取出第2个位置上的宏块,直至最后取出第1个位置上的宏块,此取出序列为置乱加密后的宏块顺序。
优选地,在步骤S8中将所述混沌序列和DCT系数的符号位进行异或运算加密的方式包括:
(a)若混沌序列中当前的随机数大于0.5且非零DCT系数大于0,则非零DCT系数取值为其绝对值的负数;
(b)若混沌序列中当前的随机数小于等于0.5且非零DCT系数小于0,则非零DCT系数取值为其绝对值的负数;
(c)除去(a)和(b)的其余情况非零DCT系数取值为其绝对值。
优选地,若当前帧的帧类型为P帧或B帧,则步骤S3-S7为:
S42,从所述语法元素中提取非零DCT系数的统计特征c、当前帧的帧序号F;
S52,选择混沌映射f,并选定初始条件Ψ作为种子密钥,得到初始的混沌映射f(Ψ),再根据统计特征C、当前帧的帧序号F以及种子密钥生成自适应的加密密钥,得到与当前帧内容相关的混沌映射f(C,F|Ψ);
S62,将当前帧的宏块划分为四个区域,其中前三个区域内的宏块分别组成一维的宏块序列S0,S1,S2,对于第四个区域,每个非skipped宏块都与它前面连续的K个skipped宏块组合在一起,每个组合都被描述为一个SRM对,所有的SRM对构成一维的SRM对序列S3,K>2;
S72,利用与帧内容相关的混沌映射f(C,F|Ψ)对宏块序列S1进行混沌迭代,生成长度与S1序列元素个数相等的混沌序列;对所述混沌序列的元素按照大小进行排序,记录已排序序列中的随机数在原始序列中的位置,将所有的位置数形成一个新序列;
S82,利用所述新序列分别对S1内部的宏块置乱;
S92,重复执行步骤S72-S82,完成对S2的宏块置乱;
S102,先排除S1和S2中的I宏块,然后以S1在前,S2在后的顺序,将S1和S2序列串联起来,从而构造出新的序列Sni,重复执行步骤S72-S82,完成对Sni的宏块置乱;
S112,重复执行步骤S72-S82,完成S3的SRM对置乱;
S113,重新扫描当前帧的所有宏块,并修改语法元素mb_skip_run的值以匹配每个非skipped宏块前面连续的skipped宏块个数。
优选地,步骤S52再根据统计特征C、当前帧的帧序号F以及种子密钥生成自适应的加密密钥包括:
接收用户输入的大小为256比特的初始密钥K,将DCT系数的统计特征C、当前帧的帧序号F输入SHA3-256哈希函数,得到的256比特的哈希值,将所述哈希值和初始密钥K进行异或运算,得到密钥Kf
其中,
Figure BDA0002233743750000071
根据密钥Kf=(b1b2...b256)2,两组初始状态
Figure BDA0002233743750000072
Figure BDA0002233743750000073
用于两轮排列,具体生成方法如下:
Figure BDA0002233743750000074
Figure BDA0002233743750000075
Figure BDA0002233743750000076
采用二维逻辑正弦耦合映射(LSCM):
Figure BDA0002233743750000077
根据式(1)生成混沌序列
Figure BDA0002233743750000078
目标序列S=(m1,m2,...,mL)使用该混沌序列
Figure BDA0002233743750000079
进行随机排列,从中提取
Figure BDA00022337437500000710
重新排列后的序列为
Figure BDA00022337437500000711
P为根据X值的排列操作,其中xt+ii≤xt+i2≤...≤xt+iL
优选地,在步骤S62中宏块序列的划分方式为:当前帧的第一个宏块构成S0;排除第一个宏块后,第一行的宏块按从左到右的顺序构成S1;排除第一个宏块后,第一列的宏块按从上到下的顺序构成S2;剩下的宏块按从左到右从上到下的顺序先构成K个SRM对,然后将K个SRM对构成S3
优选地,所述非零DCT系数的统计特征C为当前帧的所有宏块的非零DCT数量属于区间[0,256]内每一个元素的宏块个数。
本发明相对于现有技术具有如下优点:
本方案所提出的H.264/AVC视频加密方法通过将图像帧的宏块划分为四个区域,每个区域内的宏块分别组成一维的宏块序列;利用混沌映射将宏块序列置乱;将所述混沌序列和DCT系数的符号位进行异或运算加密;由于本方案利用优化设计的宏块置乱实现加密,能够有效抵抗现有的各种类型的轮廓攻击。同时,本方法的加密密钥与待加密视频帧非零DCT系数数量直方图相关,即不同视频帧所采用的加密密钥不同,是一种自适应密钥的H.264/AVC视频加密方法,能有效抵抗已知明文攻击,而且密钥空间足够大,抗暴力攻击的安全性较好。
本方案所提出的H.264/AVC视频加密方法使用优化设计的宏块置乱以及非零DCT系数加密,在有效保存格式兼容性的基础上实现了对整个宏块的加密。相比之下,已有的相关方法通常仅仅加密宏块的一部分语法元素。因此,本方案通常可以实现更为优越的视觉加密效果,能够有效保护视频免于泄露个别的相关信息。
本方案所提出的H.264/AVC视频加密方法不依赖于编码过程的某个环节,尤其是不依赖与无损编码前的变换及量化等环节,因此同时适用于未经压缩和已经过压缩的视频。相比之下,一些现有方法与与无损编码前的变换及量化等环节具有强耦合的关系,导致只能应用于未经压缩的视频。因此,本方案具有更加良好的实际应用价值。
附图说明
构成本申请的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明的用于抵抗轮廓攻击的视频加密方法的一流程示意图。
图2为本发明的用于抵抗轮廓攻击的视频加密方法的另一流程示意图。
图3为I帧宏块的分区域帧内置乱加密示意图。
图4为P/B帧宏块以及特殊宏块对SRM的帧内置乱加密示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明。
参见图1-4、一种用于抵抗轮廓攻击的视频加密方法,包括:
S1,接收待加密的视频,对所述视频的比特流进行解码;所述待加密的视频为H.264/AVC视频,对H.264/AVC视频文件而言,它由一系列的网络抽象层单元(NALU)组成,每个网络抽象层单元(NALU)中包括NAL头和原始字节序列负荷(RBSP),其中视频编码层(VCL)类型的NALU包含了编码的视频数据,通过VCL可以从中读出所需的视频相应信息。
S2,获取解码后的每一帧视频图像的语法元素;每一帧视频图像可以分为I帧、P帧和B帧,每一帧又可以划分为若干个16×16像素大小的宏块,宏块还可以进一步划分为子宏块。每个编码的宏块数据中包含了帧内预测模式、运动矢量差值和DCT系数等一系列与该宏块相关的语法元素。
S3,对当前帧的帧类型进行判断,
S4,根据当前帧的帧类型从所述语法元素中提取与帧内容相关的参数;
S5,选择混沌映射f和对应的初始条件Ψ,得到初始的混沌映射f(Ψ),其中初始条件Ψ作为种子密钥,再根据提取的参数以及种子密钥生成自适应的加密密钥,得到与当前帧内容相关的混沌映射;
S6,将当前帧的宏块划分为四个区域,每个区域内的宏块分别组成一维的宏块序列;
S7,利用混沌映射将宏块序列置乱;
在本实施例,若当前帧的帧类型为I帧(帧内帧),参见图2和图3,则步骤S3-S7为:
S41,从所述语法元素中提取非零DCT系数的统计特征C、当前帧的帧序号F以及宏块数P,Pj表示一帧中I宏块中prev_intra4×4_pred_mode标志位为1的4×4子块数量为j(j=0,1,...,16)的I宏块数,所有的pj组成宏块数p;
其中,与帧内容相关的统计特征C是待加密帧所有宏块的非零DCT系数数量直方图,即非零DCT数量属于区间[0,256]内每一个元素的宏块个数;统计特征P记录了一帧中使用最可能预测模式的4×4子宏块数量相同的16×16宏块,且仅在帧内帧中记录。因为本方案所提出的H.264/AVC视频加密方法不会改变非零DCT系数数量的统计分布特性和帧内预测标志位之一prev_intra4×4_pred_mode,因此解密时可从密文视频中提取出相同的特征。
S51,选择混沌映射f,并选定初始条件Ψ作为种子密钥,得到初始的混沌映射f(Ψ),再根据统计特征C、当前帧的帧序号F、宏块数P以及种子密钥生成自适应的加密密钥,得到与当前帧内容相关的混沌映射f(C,F,P|Ψ);其中,再根据统计特征C、当前帧的帧序号F、宏块数P以及种子密钥生成自适应的加密密钥包括:
接收用户输入的大小为256比特的初始密钥K,将DCT系数的统计特征C、当前帧的帧序号F和宏块数P输入SHA3-256哈希函数,得到的256比特的哈希值,将所述哈希值和初始密钥K进行异或运算,得到密钥Kf
其中,
Figure BDA0002233743750000111
根据密钥Kf=(b1b2...b256)2,两组初始状态
Figure BDA0002233743750000112
Figure BDA0002233743750000113
用于两轮排列,具体生成方法如下:
Figure BDA0002233743750000114
Figure BDA0002233743750000115
Figure BDA0002233743750000116
采用二维逻辑正弦耦合映射(LSCM):
Figure BDA0002233743750000117
根据式(1)生成混沌序列
Figure BDA0002233743750000118
目标序列S=(m1,m2,...,mL)使用该混沌序列
Figure BDA0002233743750000119
进行随机排列,从中提取
Figure BDA00022337437500001110
重新排列后的序列为
Figure BDA00022337437500001111
P为根据X值的排列操作,其中xt+ii≤xt+i2≤...≤xt+iL
S61,将当前帧的宏块划分为四个区域,每个区域内的宏块分别组成一维的宏块序列S0,S1,S2和S3;其中,宏块序列的划分方式为:
当前帧的第一个宏块构成S0;排除第一个宏块后,第一行的宏块按从左到右的顺序构成S1;排除第一个宏块后,第一列的宏块按从上到下的顺序构成S2;剩下的宏块按从左到右和从上到下的顺序构成S3
S71,利用与帧内容相关的混沌映射f(C,F,P|Ψ)对宏块序列S1进行混沌迭代,生成长度与宏块序列S1的元素个数相等的混沌序列;对所述混沌序列的元素按照大小进行排序,记录已排序序列中的随机数在原始序列中的位置,将所有的位置数形成一个新序列;
S81,利用所述新序列分别对S1内部的宏块置乱;举例,在步骤S71中,迭代生成的随机数序列为(0.894,0.351,0.601,0.282,0.531),排序之后变为(0.282,0.351,0.531,0.601,0.894),该已排序序列的随机数在原始序列中的位置依次是(4,2,5,3,1),(4,2,5,3,1)为所生成的新序列;在步骤S81中,第一次取出第4个位置上的宏块,第二次取出第2个位置上的宏块,直至最后取出第1个位置上的宏块,此取出序列为置乱加密后的宏块顺序。
S91,重复执行步骤S71-S81,完成对S2和S3的宏块置乱。
在本实施例,若当前帧的帧类型为P帧或B帧(帧间帧),参见图2和图4,则步骤S3-S7为:
S42,从所述语法元素中提取非零DCT系数的统计特征C、当前帧的帧序号F;
S52,选择混沌映射f,并选定初始条件Ψ作为种子密钥,得到初始的混沌映射f(Ψ),再根据统计特征C、当前帧的帧序号F以及种子密钥生成自适应的加密密钥,得到与当前帧内容相关的混沌映射f(C,F|Ψ);其中,再根据统计特征C、当前帧的帧序号F以及种子密钥生成自适应的加密密钥包括:
接收用户输入的大小为256比特的初始密钥K,将DCT系数的统计特征C、当前帧的帧序号F输入SHA3-256哈希函数,得到的256比特的哈希值,将所述哈希值和初始密钥K进行异或运算,得到密钥Kf
其中,
Figure BDA0002233743750000121
根据密钥Kf=(b1b2...b256)2,两组初始状态
Figure BDA0002233743750000131
Figure BDA0002233743750000132
用于两轮排列,具体生成方法如下:
Figure BDA0002233743750000133
Figure BDA0002233743750000134
Figure BDA0002233743750000135
采用二维逻辑正弦耦合映射(LSCM):
Figure BDA0002233743750000136
根据式(1)生成混沌序列
Figure BDA0002233743750000137
目标序列S=(m1,m2,...,mL)使用该混沌序列
Figure BDA0002233743750000138
进行随机排列,从中提取
Figure BDA0002233743750000139
重新排列后的序列为
Figure BDA00022337437500001310
P为根据X值的排列操作,其中xt+ii≤xt+i2≤...≤xt+iL
S62,将当前帧的宏块划分为四个区域,其中前三个区域内的宏块分别组成一维的宏块序列S0,S1,S2,对于第四个区域,每个非skipped宏块都与它前面连续的K个skipped宏块组合在一起,每个组合都被描述为一个SRM对,所有的SRM对构成一维的SRM对序列S3,K>2;在步骤S62中宏块序列的划分方式为:当前帧的第一个宏块构成S0;排除第一个宏块后,第一行的宏块按从左到右的顺序构成S1;排除第一个宏块后,第一列的宏块按从上到下的顺序构成S2;剩下的宏块按从左到右从上到下的顺序先构成K个SRM对(skip-runs,non-skipped macroblock pair,连续跳过和非跳过宏块对),然后将K个SRM对构成S3
S72,利用与帧内容相关的混沌映射f(C,F|Ψ)对宏块序列S1进行混沌迭代,生成长度与S1序列元素个数相等的混沌序列;对所述混沌序列的元素按照大小进行排序,记录已排序序列中的随机数在原始序列中的位置,将所有的位置数形成一个新序列;
S82,利用所述新序列分别对S1内部的宏块置乱;
S92,重复执行步骤S72-S82,完成对S2的宏块置乱;
S102,先排除S1和S2中的I宏块,然后以S1在前,S2在后的顺序,将S1和S2序列串联起来,从而构造出新的序列Sni,重复执行步骤S72-S82,完成对Sni的宏块置乱;
S112,重复执行步骤S72-S82,完成S3的SRM对置乱;
S113,重新扫描当前帧的所有宏块,并修改语法元素mb_skip_run的值以匹配每个非skipped宏块前面连续的skipped宏块个数。语法元素mb_skip_run表示的是每个非skipped宏块前面连续的skipped宏块个数。由于对Sni和S3的置乱均可能会改变每个非skipped宏块前面连续的skipped宏块个数,所以必须重新扫描该帧的所有宏块以确定是否需要修改mb_skip_run的值。
S8,使用2D-LSCM生成与当前帧非零DCT系数个数相等的混沌序列,将所述混沌序列和DCT系数的符号位进行异或运算加密;其中,将所述混沌序列和DCT系数的符号位进行异或运算加密的方式包括:
(a)若混沌序列中当前的随机数大于0.5且非零DCT系数大于0,则非零DCT系数取值为其绝对值的负数;
(b)若混沌序列中当前的随机数小于等于0.5且非零DCT系数小于0,则非零DCT系数取值为其绝对值的负数;
(c)除去(a)和(b)的其余情况非零DCT系数取值为其绝对值。
S9,待视频比特流解码结束,对待加密视频中经加密操作改变的宏块的语法元素进行部分重编码,得到加密的视频比特流,完成加密。由于H.264/AVC使用上下文自适应的熵编码方式,而先前的加密步骤打乱了宏块语法元素的相对位置,导致这些语法元素的值的编码结果可能发生改变。因此需要收集置乱后的宏块语法元素,并将这些语法元素重新经过部分编码得到密文形式的H.264/AVC视频比特流。部分重编码过程无需经过耗时的模式决策部分,仅需要熵编码即可。
本方案所提出的H.264/AVC视频加密方法充分考虑了轮廓攻击所基于的原理,利用优化设计的宏块置乱实现加密,能够有效抵抗现有的各种类型的轮廓攻击。同时,本方法的加密密钥与待加密视频帧非零DCT系数数量直方图相关,即不同视频帧所采用的加密密钥不同,是一种自适应密钥的H.264/AVC视频加密方法,能有效抵抗已知明文攻击,而且密钥空间足够大,抗暴力攻击的安全性较好。
上述具体实施方式为本发明的优选实施例,并不能对本发明进行限定,其他的任何未背离本发明的技术方案而所做的改变或其它等效的置换方式,都包含在本发明的保护范围之内。

Claims (4)

1.一种用于抵抗轮廓攻击的视频加密方法,其特征在于,包括:
S1,接收待加密的视频,对所述视频的比特流进行解码;
S2,获取解码后的每一帧视频图像的语法元素;
S3,对当前帧的帧类型进行判断;
S4,根据当前帧的帧类型从所述语法元素中提取与帧内容相关的参数;
S5,选择混沌映射函数f和对应的初始条件Ψ,得到初始混沌映射f(Ψ),其中初始条件Ψ作为种子密钥,再根据提取与帧内容相关的参数以及种子密钥生成自适应的加密密钥,作为与当前帧内容相关的混沌映射;
S6,将当前帧的宏块划分为四个区域,每个区域内的宏块分别组成一维的宏块序列;
S7,利用与当前帧内容相关的混沌映射将宏块序列置乱;
S8,使用二维逻辑正弦耦合映射2D-LSCM生成与当前帧非零DCT系数个数相等的混沌序列,将所述混沌序列和非零DCT系数的符号位进行异或运算加密;
S9,对待加密视频中经加密操作改变的宏块的语法元素进行部分重编码,得到加密的视频比特流,完成加密;
步骤S3判断若当前帧的帧类型为I帧:
步骤S4中的从所述语法元素中提取与帧内容相关的参数具体为:S41,从所述语法元素中提取非零DCT系数的统计特征C、当前帧的帧序号F以及宏块数P,pj表示一帧中I宏块中prev_intra4×4_pred_mode标志位为1的4×4子块数量为j(j=0,1,...,16)的I宏块数,所有的pj组成宏块数P;步骤S5具体为:S51,选择混沌映射函数f,并选定初始条件Ψ作为种子密钥K,K=Ψ,得到初始混沌映射f(Ψ),再根据非零DCT系数的统计特征C、当前帧的帧序号F、宏块数P以及种子密钥K生成自适应的加密密钥Kf,作为与当前帧内容相关的混沌映射f(C,F,P|Ψ);
步骤S6具体为:S61,将当前帧的宏块划分为四个区域,每个区域内的宏块分别组成一维的宏块序列S0,S1,S2和S3
步骤S7具体为:S711,利用所述与当前帧内容相关的混沌映射f(C,F,P|Ψ)对宏块序列S1进行混沌迭代,生成长度与宏块序列S1的元素个数相等的混沌序列;对所述混沌序列的元素按照大小进行排序,记录已排序序列中的随机数在原始序列中的位置,将所有的位置数形成一个新序列;
步骤S711中的利用所述与当前帧内容相关的混沌映射f(C,F,P|Ψ)对宏块序列S1进行混沌迭代,生成长度与宏块序列S1的元素个数相等的混沌序列为(0.894,0.351,0.601,0.282,0.531),排序之后变为(0.282,0.351,0.531,0.601,0.894),该已排序序列的随机数在原始序列中的位置依次是(4,2,5,3,1),(4,2,5,3,1)为所生成的新序列;
S712,利用所述新序列分别对S1内部的宏块置乱;
所述宏块置乱为第一次取出第4个位置上的宏块,第二次取出第2个位置上的宏块,第三次取出第5个位置上的宏块,第四次取出第3个位置上的宏块,直至最后取出第1个位置上的宏块;
S713,重复执行步骤S711-S712,完成对S2和S3的宏块置乱;
所述步骤S51中的再根据所述非零DCT系数的统计特征C、当前帧的帧序号F、宏块数P以及种子密钥K生成自适应的加密密钥Kf包括:
接收用户输入的大小为256比特的种子密钥K,K=Ψ,将所述非零DCT系数的统计特征C、当前帧的帧序号F和宏块数P输入SHA3-256哈希函数,得到256比特的哈希值,将所述哈希值和种子密钥K进行异或运算,得到密钥Kf
其中,
Figure FDA0003216994160000031
根据密钥Kf=(b1b2...b256)2,两组初始状态
Figure FDA0003216994160000032
Figure FDA0003216994160000033
进行两轮排列,所述两轮排列具体生成方法如下:
Figure FDA0003216994160000034
Figure FDA0003216994160000035
Figure FDA0003216994160000036
采用二维逻辑正弦耦合映射2D-LSCM:
Figure FDA0003216994160000037
生成混沌序列
Figure FDA0003216994160000038
目标序列Si,i=0,1,2,3,Siε{S0,S1,S2,S3}使用该混沌序列
Figure FDA0003216994160000039
进行随机排列,从该随机排列后的混沌序列
Figure FDA00032169941600000310
中提取
Figure FDA00032169941600000311
Figure FDA00032169941600000312
重新排列后的序列为
Figure FDA00032169941600000313
P为根据X值的排列操作,其中xt+i1≤xt+i2≤...≤xt+iL
在所述步骤S8中的将所述混沌序列和非零DCT系数的符号位进行异或运算加密的方式包括:
(a)若混沌序列中当前的随机数大于0.5且非零DCT系数大于0,则非零DCT系数取值为其绝对值的负数;
(b)若混沌序列中当前的随机数小于等于0.5且非零DCT系数小于0,则非零DCT系数取值为其绝对值的负数;
(c)除去(a)和(b)的其余情况非零DCT系数取值为其绝对值。
2.根据权利要求1所述的用于抵抗轮廓攻击的视频加密方法,其特征在于,步骤S61中的当前帧的宏块划分方式为:
当前帧的第一个宏块构成宏块序列S0;排除第一个宏块后,第一行的宏块按从左到右的顺序构成宏块序列S1;排除第一个宏块后,第一列的宏块按从上到下的顺序构成宏块序列S2;剩下的宏块按从左到右和从上到下的顺序构成宏块序列S3
3.根据权利要求1所述的用于抵抗轮廓攻击的视频加密方法,其特征在于,步骤S3判断若当前帧的帧类型为P帧或B帧:
步骤S4中的从所述语法元素中提取与帧内容相关的参数具体为:S42,从所述语法元素中提取非零DCT系数的统计特征C、当前帧的帧序号F;
步骤S5具体为:S52,选择混沌映射函数f,并选定初始条件Ψ作为种子密钥K,K=Ψ,得到初始混沌映射f(Ψ),再根据非零DCT系数的统计特征C、当前帧的帧序号F以及种子密钥K生成自适应的加密密钥Kf,作为与当前帧内容相关的混沌映射f(C,F|Ψ);
步骤S6具体为:S62,将当前帧的宏块划分为四个区域,其中前三个区域内的宏块分别组成一维的宏块序列S0,S1,S2,对于第四个区域,每个非skipped宏块都与它前面连续的K个skipped宏块组合在一起,每个组合都被描述为一个SRM对,所有的SRM对构成一维的SRM对序列S3,K>2;
步骤S7具体为:S721,利用所述与当前帧内容相关的混沌映射f(C,F|Ψ)对宏块序列S1进行混沌迭代,生成长度与S1序列元素个数相等的混沌序列;对所述混沌序列的元素按照大小进行排序,记录已排序序列中的随机数在原始序列中的位置,将所有的位置数形成一个新序列;
S722,利用所述新序列分别对S1内部的宏块置乱;
S723,重复执行步骤S721-S722,完成对S2的宏块置乱;
S724,先排除S1和S2中的I宏块,然后以S1在前,S2在后的顺序,将S1和S2序列串联起来,从而构造出新的序列S’,重复执行步骤S721-S722,完成对S’的宏块置乱;
S725,重复执行步骤S721-S722,完成S3的SRM对置乱;
S726,重新扫描当前帧的所有宏块,并修改语法元素mb_skip_run的值以匹配每个非skipped宏块前面连续的skipped宏块个数;
所述步骤S52中再根据非零DCT系数的统计特征C、当前帧的帧序号F以及种子密钥K生成自适应的加密密钥Kf包括:
接收用户输入的大小为256比特的种子密钥K,K=Ψ,将非零DCT系数的统计特征C、当前帧的帧序号F输入SHA3-256哈希函数,得到256比特的哈希值,将所述哈希值和种子密钥K进行异或运算,得到密钥Kf
其中,
Figure FDA0003216994160000051
根据密钥Kf=(b1b2...b256)2,两组初始状态
Figure FDA0003216994160000052
Figure FDA0003216994160000053
进行两轮排列,所述两轮排列具体生成方法如下:
Figure FDA0003216994160000061
Figure FDA0003216994160000062
Figure FDA0003216994160000063
采用二维逻辑正弦耦合映射2D-LSCM:
Figure FDA0003216994160000064
生成混沌序列
Figure FDA0003216994160000065
目标序列Si,i=0,1,2,3,Siε{S0,S1,S2,S3}使用该混沌序列
Figure FDA0003216994160000066
进行随机排列,从该随机排列后的混沌序列
Figure FDA0003216994160000067
中提取
Figure FDA0003216994160000068
Figure FDA0003216994160000069
重新排列后的序列为
Figure FDA00032169941600000610
P为根据X值的排列操作,其中xt+i1≤xt+i2≤...≤xt+iL
4.根据权利要求3所述的用于抵抗轮廓攻击的视频加密方法,其特征在于,在步骤S62中宏块序列的划分方式为:
当前帧的第一个宏块构成宏块序列S0;排除第一个宏块后,第一行的宏块按从左到右的顺序构成宏块序列S1;排除第一个宏块后,第一列的宏块按从上到下的顺序构成宏块序列S2;剩下的宏块按从左到右从上到下的顺序先构成K个SRM对,然后将K个SRM对构成宏块序列S3
CN201910976296.3A 2019-10-15 2019-10-15 一种用于抵抗轮廓攻击的视频加密方法 Active CN110677694B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910976296.3A CN110677694B (zh) 2019-10-15 2019-10-15 一种用于抵抗轮廓攻击的视频加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910976296.3A CN110677694B (zh) 2019-10-15 2019-10-15 一种用于抵抗轮廓攻击的视频加密方法

Publications (2)

Publication Number Publication Date
CN110677694A CN110677694A (zh) 2020-01-10
CN110677694B true CN110677694B (zh) 2021-10-26

Family

ID=69082496

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910976296.3A Active CN110677694B (zh) 2019-10-15 2019-10-15 一种用于抵抗轮廓攻击的视频加密方法

Country Status (1)

Country Link
CN (1) CN110677694B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111800634B (zh) * 2020-06-30 2024-06-04 西安万像电子科技有限公司 图像处理方法及装置
CN114205624A (zh) * 2021-11-03 2022-03-18 成都鼎安华智慧物联网股份有限公司 视频加密方法
CN114363658B (zh) * 2021-12-30 2022-09-02 慧之安信息技术股份有限公司 一种音视频流加密传输的方法和装置
CN114390317B (zh) * 2022-01-18 2024-03-19 山东点盾云网络科技有限公司 面向流式传输视频的加密方法及系统
CN115361563B (zh) * 2022-07-07 2024-10-18 华南理工大学 H.264加密及密文域信息隐藏方法、装置及存储介质
CN116226471B (zh) * 2023-05-10 2023-07-25 济宁蜗牛软件科技有限公司 一种用于国土资源规划的数据存储方法
CN117812290B (zh) * 2023-12-28 2024-08-13 沈阳青舟科技有限公司 一种用于视频通讯的数据加密方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110944B (zh) * 2007-08-31 2010-06-09 湖北科创高新网络视频股份有限公司 一种视频数据的加密方法和装置
CN100571395C (zh) * 2007-09-20 2009-12-16 合肥工业大学 一种基于h.264视频流的加密方法
CN201699807U (zh) * 2010-07-09 2011-01-05 苏州市职业大学 一种数字图像置乱装置
CN102176759A (zh) * 2011-02-15 2011-09-07 天津理工大学 基于超混沌序列的视频流信息加密方法
CN102395034B (zh) * 2011-12-22 2013-04-10 东北大学 基于帧内预测的mpeg-4视频混沌加密方法
CN102843558B (zh) * 2012-08-21 2015-12-09 中国电子科技集团公司第三十八研究所 H.264/avc压缩域视频加密/解密装置及其加密/解密方法
CN106570815A (zh) * 2016-10-21 2017-04-19 广东工业大学 一种基于双混沌系统和分块的图像加密方法
CN108134936A (zh) * 2016-12-01 2018-06-08 钦州市晶通科技有限公司 一种高性能视频加密方法
CN107770405B (zh) * 2017-10-23 2020-01-10 北京邮电大学 图像加密方法及装置
AU2018100382A4 (en) * 2018-03-27 2018-05-10 Southwest University A compression-diffusion-permutation strategy for big image data
CN109379510A (zh) * 2018-09-13 2019-02-22 桂林电子科技大学 一种基于二维Logistic混沌系统算法的图像加密方法

Also Published As

Publication number Publication date
CN110677694A (zh) 2020-01-10

Similar Documents

Publication Publication Date Title
CN110677694B (zh) 一种用于抵抗轮廓攻击的视频加密方法
Xu et al. Data hiding in encrypted H. 264/AVC video streams by codeword substitution
Xu Commutative encryption and data hiding in HEVC video compression
Liu et al. A survey of video encryption algorithms
JP4128941B2 (ja) マルチメディアデータ暗号化圧縮方法及び装置
Xu et al. An improved scheme for data hiding in encrypted H. 264/AVC videos
Guan et al. An efficient commutative encryption and data hiding scheme for HEVC video
CN1956534A (zh) 用于逐层管理多层多媒体流的版权的方法和设备
Li et al. Joint image encryption and compression schemes based on 16× 16 DCT
CN1893350A (zh) 数字数据加密和解密的方法和装置
Jiang et al. An improved selective encryption for H. 264 video based on intra prediction mode scrambling
Xu et al. Tunable data hiding in partially encrypted H. 264/AVC videos
Ong et al. Beyond format-compliant encryption for JPEG image
He et al. A novel selective encryption scheme for H. 264/AVC video with improved visual security
Lian et al. Efficient video encryption scheme based on advanced video coding
Dolati et al. A selective encryption for H. 264/AVC videos based on scrambling
Tang et al. A format compliant framework for HEVC selective encryption after encoding
Chang et al. An adaptive steganography for index-based images using codeword grouping
El-Mowafy et al. Chaos based encryption technique for compressed h264/avc videos
CN111372083B (zh) 一种基于层间处理的shvc视频加密方法
Lee et al. Low complexity controllable scrambler/descrambler for H. 264/AVC in compressed domain
Su et al. A privacy protection scheme in H. 264/AVC by data hiding
Hooda et al. A comprehensive survey of video encryption algorithms
CN104301727A (zh) 基于cabac的质量可控的h.264视频感知加密算法
Raju et al. A real-time video encryption exploiting the distribution of the DCT coefficients

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant