CN107578452A - 一种具有兼容格式和不变尺寸的jpeg图像加密方法 - Google Patents
一种具有兼容格式和不变尺寸的jpeg图像加密方法 Download PDFInfo
- Publication number
- CN107578452A CN107578452A CN201710643408.4A CN201710643408A CN107578452A CN 107578452 A CN107578452 A CN 107578452A CN 201710643408 A CN201710643408 A CN 201710643408A CN 107578452 A CN107578452 A CN 107578452A
- Authority
- CN
- China
- Prior art keywords
- coefficient
- codings
- jpeg image
- coefficients
- coding
- 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.)
- Granted
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
本发明提供一种具有兼容格式和不变尺寸的JPEG图像加密方法,属于多媒体信息安全技术领域。本发明包括三个加密步骤:1)AC系数编码零游程分类置乱;2)DC系数差分编码相邻同符号分组置乱;3)DC系数差分编码分组迭代加密。本发明可用于保护军事图像、商业图像、医疗图像或个人图像通过公开信道传输或存储于公共云时的安全和隐私。本发明的目的是改进现有JPEG图像加密方法普遍存在的密文图像尺寸增大和格式兼容性不理想的缺陷,具有可抵抗已知明文攻击、基本保持密文图像尺寸不变、提供更好的格式兼容性和加密强度可调节等特点。
Description
技术领域
本发明属于多媒体信息安全技术领域,涉及一种具有兼容格式和不变尺寸的JPEG图像加密方法。
背景技术
随着互联网的持续发展和移动终端的快速普及,图像应用日趋广泛。如何有效保护军事图像、商业图像、医疗图像或个人图像通过公开信道传输或存储至云空间时的安全和隐私,越来越受到人们的重视。
图像加密是一种保护图像的常用方法。加密算法在密钥的控制下将一幅明文图像转化为一幅噪声密文图像。拥有正确密钥才能从密文图像中解密恢复出原始明文图像;如果没有正确的密钥,攻击者无法获得任何关于原始图像内容的相关信息。
JPEG是目前使用最为广泛的图像格式,针对JPEG图像的加密算法具有很好的实用价值。目前已有的JPEG图像加密算法普遍存在密文图像尺寸增大或格式兼容性不好等问题。
Li等提出的基于DCT系数分类地址映射的JPEG图像加密算法(Li S,ZhangY.Quantized DCT Coefficient Category Address Encryption for JPEG Image.KSIITransactions on Internet&Information Systems,2016,Vol.10,No.4,Page.1790-1806)会破坏相邻DC系数之间的统计相关性,影响DC系数差分预测编码的效率,产生增大尺寸的密文图像。
Qian等提出的基于比特流异或的JPEG图像加密算法(Qian Z,Zhang X,WangS.Reversible Data Hiding in Encrypted JPEG Bitstream.IEEE Transactions onMultimedia,2014,Vol.16,No.5,Page.1486-1491)能够保持密文图像尺寸不变,但存在密文图像量化步长为零和DC系数溢出等潜在问题,与JPEG标准的兼容性不理想。
发明内容
本发明的目的是改进现有JPEG图像加密方法普遍存在的不足,提出一种新的具有兼容格式和不变尺寸的JPEG图像加密方法。
为了达到上述目的,本发明至少采用如下技术方案之一实现。
一种具有兼容格式和不变尺寸的JPEG图像加密方法,其包括以下步骤:
步骤一:输入待加密JPEG图像,读取量化表、哈夫曼表和DCT(离散余弦变换)系数编码比特流;
步骤二:根据哈夫曼表从DCT系数编码比特流中解析出JPEG图像所有DC(直流)系数差分编码和各DCT块AC(交流)系数编码,每个系数编码由哈夫曼码字和附加比特组成,所述附加比特用以表示AC系数的幅值和符号;
步骤三:从步骤二获得的各DCT块的AC系数编码中提取图像特征F;
步骤四:选定种子密钥K,基于K和F产生与待加密JPEG图像相关的自适应加密密钥Key;
步骤五:对步骤二所获得的各DCT块AC系数编码进行基于零游程长短的分类;
步骤六:用自适应加密密钥Key进行混沌迭代,生成长度与第一类AC系数编码数目相等的混沌序列,并更新自适应加密密钥Key;
步骤七:对步骤六所生成的混沌序列按照大小进行排序,记录该已排序序列中的随机数在原始序列中的位置,形成一个新序列;
步骤八:利用步骤七所生成的新序列对第一类AC系数编码进行置乱,完成第一类AC系数编码加密;
步骤九:重复步骤六、步骤七和步骤八,完成所有类别AC系数编码的置乱加密;
步骤十:对步骤二所获得的JPEG图像所有DC系数差分编码进行分组,差分符号相同且连续的DC系数差分编码作为一组;
步骤十一:用自适应加密密钥Key进行混沌迭代,生成长度与第一个DC系数差分编码分组元素个数相等的混沌序列,并更新自适应加密密钥Key;
步骤十二:对步骤十一所产生的混沌序列按照大小进行排序,记录该已排序序列中的随机数在原始序列中的位置,形成一个新序列;
步骤十三:利用步骤十二所产生的新序列对第一组DC系数差分编码进行置乱,完成第一组DC系数差分编码加密;
步骤十四:重复步骤十一、步骤十二和步骤十三,完成所有DC系数差分编码分组的置乱加密;
步骤十五:根据JPEG图像加密强度的实际需求,选定DC系数差分编码加密的迭代次数M,M越大加密效果越好;
步骤十六:对DC系数差分编码进行第m次分组,m=1~M,每组包含2m个DC系数差分编码;
步骤十七:用自适应加密密钥Key进行混沌迭代,生成长度与步骤十六所形成的DC系数差分编码分组数相等的二进制比特序列,并更新自适应加密密钥Key;
步骤十八:利用步骤十七所产生的二进制比特序列完成DC系数差分编码的第m次迭代加密;
步骤十九:如果m<M,使m增加1,返回步骤十六,继续进行迭代加密,否则进入步骤二十;
步骤二十:将已加密JPEG图像所有DC系数差分编码和各DCT块AC系数编码写入原JPEG图像的对应位置,生成一幅JPEG密文图像,完成一种具有兼容格式和不变尺寸的JPEG图像加密方法。
进一步地,步骤三中图像特征F是待加密JPEG图像所有DCT块的AC系数编码数量直方图,即AC系数编码数量分别为0-63的DCT块数。
进一步地,步骤四中自适应加密密钥Key基于种子密钥K和图像特征F的哈希值生成。
进一步地,步骤五中各DCT块AC系数编码的分类基于每个编码中的哈夫曼码字所对应的零游程长度,游程取值范围为0-62,分别对应AC系数编码分类第一至第六十三类。
进一步地,步骤六、步骤十一和步骤十七中的混沌迭代,采用一维混沌系统:xn+1=μxn(1-xn),其中xn为迭代产生的混沌序列,n为迭代次数,0<xn<1.0,μ为系统参数,3.5699<μ<4.0。
进一步地,步骤八中的置乱加密具体方法为:
(a)取出一类AC系数编码,生成长度与该类AC系数编码数量相等的混沌序列;
(b)对步骤(a)中所生成的混沌序列按照大小进行排序,并记录该已排序序列中的随机数在原始序列中的位置,形成一个新序列;
(c)利用步骤(b)中所生成的新序列对该类AC系数编码进行置乱,完成该类AC系数编码的加密;
(d)重复步骤(a)、(b)和(c),完成所有类别AC系数编码的置乱加密。
进一步地,步骤十中对JPEG图像所有DC系数差分编码进行分组时,差分符号根据附加比特第一位进行确定。
进一步地,步骤十三中的DC系数差分编码置乱加密具体方法为:
(a)取出一个DC系数差分编码分组,生成长度与该组DC系数差分编码数量相等的混沌序列;
(b)对步骤(a)中所生成的混沌序列按照大小进行排序,记录该已排序序列中的随机数在原始序列中的位置,形成一个新序列;
(c)利用步骤(b)中所生成的新序列对该DC系数差分编码分组进行置乱,完成该分组的加密;
(d)重复步骤(a)、(b)和(c),完成所有DC系数差分编码分组的置乱加密。
进一步地,步骤十六、十七和十八中有关第m次迭代加密的具体方法为:
(a)对所有DC系数差分编码进行分组,每组包含2m个DC系数差分编码;
(b)产生长度与步骤(a)中的DC系数差分编码分组数量相等的二进制比特序列;
(c)取出一个DC系数差分编码分组,等分为左右两个子分组,基于与JPEG压缩标准的兼容性,判断左右两个子分组能否交换;
(d)如果左右两个子分组可以交换,再根据与该分组对应的随机二进制比特决定是否进行交换,随机二进制比特为1,交换左右两个子分组,否则保持不变;如果左右两个子分组不能交换,跳过该分组,不做任何处理;
(e)重复步骤(c)和(d),直至处理完所有DC系数差分编码分组,完成一次DC系数差分编码的迭代加密。
与现有JPEG图像加密技术相比,本发明所提出的新方法具有如下有益的技术效果:
(a)本发明所提出的JPEG图像加密方法的加密密钥与待加密图像AC系数编码数量直方图相关,即不同密文图像所采用的加密密钥不同,是一种自适应密钥的JPEG图像加密方法,能有效抵抗已知明文攻击,而且密钥空间足够大,抗暴力攻击的安全性较好。
(b)本发明所提出的JPEG图像加密方法为了不破坏原始JPEG图像DCT系数之间的统计相关性,采用基于比特流的方法对DC系数差分编码和AC系数编码进行迭代和置乱等加密,可基本保持密文图像尺寸的不变。
(c)本发明所提出的JPEG图像加密方法直接操作DC系数差分编码和AC系数编码,不需要重新进行差分预测编码和熵编码,计算负担较小,同时能确保熵解码的量化DCT系数取值范围在JPEG标准所建议范围之内,使得本方法可提供比已有相关方法更好的格式兼容性。
附图说明
图1是实例中具有兼容格式和不变尺寸的JPEG图像加密方法的总流程图。
图2是AC系数编码加密流程图。
图3是DC系数差分编码加密流程图。
具体实施方式
以下结合附图和实例对本发明的具体实施作进一步说明,但本发明的实施和保护不限于此。
本实例提供一种具有兼容格式和不变尺寸的JPEG图像加密方法,参见图1,本发明包括如下步骤。
步骤一:输入待加密JPEG图像,读取量化表、哈夫曼表和DCT系数编码比特流。
对于JPEG图像文件来说,它包含若干个段,例如量化表段、哈夫曼表段和DCT系数编码段等,从相应的段中可以读出相应的信息。
步骤二:根据哈夫曼表从DCT系数编码比特流中解析出JPEG图像所有DC系数差分编码和各DCT块AC系数编码,每个系数编码由哈夫曼码字和对应的附加比特组成。
大部分系数编码都是由哈夫曼码字和附加比特两部分组成,但也有少部分系数编码没有附加比特,即附加比特位数为0,附加比特数由哈夫曼表中该码字对应的权值决定。
对于每个8×8DCT块,第1个系数是DC系数,剩下的63个系数都是AC系数。相应地,比特流中每个DCT块只有1个DC系数差分编码,而AC系数编码与该DCT块非零量化AC系数数量有关,因为AC系数编码采用基于游程的编码方式。
从DCT系数编码比特流中解析出JPEG图像所有DC系数差分编码和各DCT块AC系数编码的具体方法为:
(a)从DCT系数编码比特流中依次取出1比特,直至已取出的比特序列与DC系数差分哈夫曼表的某个码字匹配;
(b)根据DC系数差分哈夫曼表查询该码字所对应的权值,再从DCT系数编码比特流中取出长度与权值相等的附加比特,完成DCT块中DC系数差分编码的提取;
(c)从DCT系数编码比特流中依次取出1比特,直至已取出的比特序列与AC系数哈夫曼表的某个码字匹配;
(d)根据AC系数哈夫曼表查询该码字所对应的权值,再从DCT系数编码比特流中取出长度与权值相等的附加比特,完成DCT块中1个AC系数编码的提取;(e)重复步骤(c)和(d),直至所匹配的哈夫曼码字为DCT块的结束码字EOB,完成1个DCT块所有AC系数编码的提取;
(f)重复步骤(a)、(b)、(c)、(d)和(e),完成JPEG图像所有DCT块DC系数差分编码和AC系数编码的提取。
步骤三:从步骤二获得的各DCT块的AC系数编码中提取图像特征F。
图像特征是待加密JPEG图像所有DCT块的AC系数编码数量直方图,即AC系数编码数量分别为0-63的DCT块数。因为本发明所提出的JPEG图像加密方法不改变AC系数编码数量基于块的统计分布特性,解密时可从密文图像中提取出相同的图像特征。
步骤四:选定种子密钥K,基于K和F生成与待加密JPEG图像相关的自适应加密密钥Key。
自适应加密密钥Key的具体生成方法为:
(a)将种子密钥K和图像特征F输入哈希函数,得到相应的哈希值;
(b)选定x和μ的初始值,均含有两位小数,其中0<x<1.0,3.5699<μ<4.0;
(c)将哈希值的二进制表示均分为前后两段,其中前半段用于更新x,后半段用于更新μ;
(d)将前半段哈希值按9比特一组进行统计(最后长度不足9比特的部分不作统计),记录每组包含比特1的个数,将统计所得到的数字依次添加到x的末尾;
(e)剩下的后半段哈希值采用和步骤(d)同样的方法完成对μ的更新;
(f)完成步骤(d)和步骤(e)之后所得到的x和μ为自适应加密密钥Key。
步骤五:对步骤二所获得的各DCT块AC系数编码进行基于零游程长短的分类。
对各DCT块的AC系数编码进行分类时,不考虑DCT块结束码字EOB。EOB用于标志一个DCT块系数编码的结束,如果对其进行置乱加密,将会破坏JPEG密文图像的格式兼容性。
对各DCT块AC系数编码分类的具体方法为:
(a)每次取出一个AC系数编码,从中解析出哈夫曼码字;
(b)根据AC系数哈夫曼表查询该码字所对应的权值,从权值中获得该码字所对应的零游程长度;
(c)将AC系数编码按零游程长度进行分类,例如当前AC系数编码的哈夫曼码字所对应的零游程长度为m,则该AC系数编码属于第m类;
(d)重复步骤(a)、(b)和(c),完成JPEG图像中各DCT块的AC系数编码分类。
步骤六:用自适应加密密钥Key进行混沌迭代,生成长度与第一类AC系数编码数目相等的混沌序列,并更新自适应加密密钥Key。
该步骤采用一维混沌系统:xn+1=μxn(1-xn),其中0<x<1.0,3.5699<μ<4.0。如果第一类AC系数编码数量为m,则m次迭代之后,用新生成的xm代替自适应密钥Key中的x值,μ保持不变,完成自适应密钥Key的更新。
步骤七:对步骤六所生成的混沌序列按照大小进行排序,记录该已排序序列中的随机数在原始序列中的位置,形成一个新序列。
例如迭代生成的随机数序列为(0.843,0.256,0.687,0.112,0.581),排序之后变为(0.112,0.256,0.581,0.687,0.843),该已排序序列的随机数在原始序列中的位置依次是(4,2,5,3,1),此为所生成的新序列。
步骤八:利用步骤七所生成的新序列对第一类AC系数编码进行置乱,完成第一类AC系数编码加密。
例如步骤七所生成的新序列为(4,2,5,3,1),对于第一类AC系数编码,第一次取出第4个位置上的AC系数编码,第二次取出第2个位置上的AC系数编码,直至最后取出第1个位置上的AC系数编码,此取出序列为置乱加密后的AC系数编码顺序。
步骤九:重复步骤六、步骤七和步骤八,完成所有类别AC系数编码的置乱加密。
对每一类AC系数编码的加密,首先生成长度与该类AC系数编码数量相等的混沌序列,其次对所生成的混沌序列进行排序,最后根据已排序序列元素的位置信息依次取出该类别的AC系数编码,完成置乱加密。
步骤十:对步骤二所获得的JPEG图像所有DC系数差分编码进行分组,差分符号相同且连续的DC系数差分编码作为一组。
连续是指在JPEG图像DC系数差分编码中的位置是相邻的。差分符号是指附加比特所对应的差分值的正负性。根据JPEG压缩标准,正负性由每个编码附加比特的第一位决定,如果第一位为0,则附加比特所对应的差分值为负;反之,如果第一位为1,则附加比特所对应的差分值为正。如果DC系数差分编码只包含哈夫曼码字,将其符号归为正,因为该码字所对应的差分值为0,在JPEG图像数据中不需要用附加比特来表示。
对JPEG图像所有DC系数差分编码进行分组的具体方法为:
(a)取出第一个DC系数差分编码,设置差分符号为附加比特的第一位;
(b)遍历所有DC系数差分编码,对于每个编码,如果附加比特的第一位与当前的差分符号相同,则把它加入到当前分组中,差分符号不变;否则,保存分组,将当前的DC系数差分编码作为新分组的第一个元素,设置差分符号为当前DC系数差分编码的附加比特第一位;
(c)直至处理完最后一个DC系数差分编码,完成对JPEG图像所有DC系数差分编码的分组。
步骤十一:用自适应加密密钥Key进行混沌迭代,生成长度与第一个DC系数差分编码分组元素个数相等的混沌序列,并更新自适应加密密钥Key。
步骤十二:对步骤十一所产生的混沌序列按照大小进行排序,记录该已排序序列中的随机数在原始序列中的位置,形成一个新序列。
步骤十三:利用步骤十二所产生的新序列对第一组DC系数差分编码进行置乱,完成第一组DC系数差分编码加密。
步骤十四:重复步骤十一、步骤十二和步骤十三,完成所有DC系数差分编码分组的置乱加密。
步骤十五:根据JPEG图像加密强度的实际需求,选定DC系数差分编码加密的迭代次数M(次数越多加密强度越高)。
步骤十六:对DC系数差分编码进行第m次分组(m=1,2,…,M),每组包含2m个DC系数差分编码。
步骤十七:用自适应加密密钥Key进行混沌迭代,生成长度与步骤十六所形成的DC系数差分编码分组数相等的二进制比特序列,并更新自适应加密密钥Key。对于一幅512×512的JPEG图像,共有4096个8×8大小的DCT块,相应地DC系数差分编码数量为4096。第1次迭代加密每组包含2个DC系数差分编码,共有2048组,需生成长度为2048的二进制比特序列;第2次迭代加密每组包含4个DC系数差分编码,共有1024组,需生成长度为1024的二进制比特序列;其他各次迭代加密所需要的二进制比特序列长度以此类推。
二进制比特是根据每次混沌迭代所产生的x值来确定的,当x的值小于0.5时,对应二进制比特0,否则对应二进制比特1。例如当x=0.123,相应的二进制比特为0。
步骤十八:利用步骤十七所产生的二进制比特序列完成DC系数差分编码的第m次迭代加密。
DC系数差分编码第m次迭代加密的具体方法为:
(a)对DC系数差分编码进行分组,每组包含2m个编码;
(b)产生长度与步骤(a)中的DC系数差分编码分组数量相等的二进制比特序列;
(c)取出一个DC系数差分编码分组,等分为左右两个子分组,基于与JPEG压缩标准的兼容性,判断左右两个子分组能否交换,具体方法为:
(1)先交换左右两个子分组的位置,将每个DC系数差分编码中的附加比特转换成差分值;
(2)计算交换左右子分组后该分组每个位置的量化DC系数;
(3)如果交换左右子分组后,该分组所有位置的量化DC系数都在正常范围之内,则该分组标记为可交换,否则为不可交换;
(4)对于不同质量因子的JPEG图像,量化DC系数的取值范围是不同的,具体与量化表中DC系数所对应的量化步长有关。
(d)如果左右两个子分组可以交换,再根据与该分组对应的随机二进制比特决定是否进行交换,随机二进制比特为1,交换左右两个子分组,否则保持不变;如果左右两个子分组不能交换,跳过该分组,不做任何处理。交换左右子分组的具体方法为:
(1)保存左子分组;
(2)将右子分组的DC系数差分编码写到左子分组的相应位置上,例如右子分组的第一个DC系数差分编码写到左子分组的第一个位置,右子分组的第m个DC系数差分编码写到左子分组的第m个位置;
(3)用同样的方法将左子分组的DC系数差分编码写到右子分组的相应位置。
步骤十九:如果m<M,令m=m+1,返回步骤十六,继续进行迭代加密,否则进入步骤二十。
对不同阶段的迭代加密来说,只是每组中包含不同个数的DC系数差分编码,因为分组中DC系数差分编码的个数和当前是第几次迭代有关,但是等分左右子分组、判断左右子分组能否交换以及判断左右子分组是否交换的方法是相同的。
步骤二十:将已加密JPEG图像所有DC系数差分编码和各DCT块AC系数编码写入原JPEG图像的对应位置,生成一幅JPEG密文图像,完成一种具有兼容格式和不变尺寸的JPEG图像加密方法。
本发明所提出的JPEG图像加密方法的加密密钥与待加密图像AC系数编码数量直方图相关,即不同密文图像所采用的加密密钥不同,是一种自适应密钥的JPEG图像加密方法,能有效抵抗已知明文攻击,而且密钥空间足够大,抗暴力攻击的安全性较好。
本发明所提出的JPEG图像加密方法为了不破坏原始JPEG图像DCT系数之间的统计相关性,采用基于比特流的方法对DC系数差分编码和AC系数编码进行迭代和置乱等加密,可基本保持密文图像尺寸的不变。
本发明所提出的JPEG图像加密方法直接操作DC系数差分编码和AC系数编码,不需要重新进行差分预测编码和熵编码,计算负担较小,同时能确保熵解码的量化DCT系数取值范围在JPEG标准所建议范围之内,使得本方法可提供比已有相关方法更好的格式兼容性。
Claims (9)
1.一种具有兼容格式和不变尺寸的JPEG图像加密方法,其特征在于,包括以下步骤:
步骤一:输入待加密JPEG图像,读取量化表、哈夫曼表和DCT系数编码比特流;
步骤二:根据哈夫曼表从DCT系数编码比特流中解析出JPEG图像所有DC系数差分编码和各DCT块AC系数编码,每个系数编码由哈夫曼码字和附加比特组成,所述附加比特用以表示AC系数的幅值和符号;
步骤三:从步骤二获得的各DCT块的AC系数编码中提取图像特征F;
步骤四:选定种子密钥K,基于K和F产生与待加密JPEG图像相关的自适应加密密钥Key;
步骤五:对步骤二所获得的各DCT块AC系数编码进行基于零游程长短的分类;
步骤六:用自适应加密密钥Key进行混沌迭代,生成长度与第一类AC系数编码数目相等的混沌序列,并更新自适应加密密钥Key;
步骤七:对步骤六所生成的混沌序列按照大小进行排序,记录该已排序序列中的随机数在原始序列中的位置,形成一个新序列;
步骤八:利用步骤七所生成的新序列对第一类AC系数编码进行置乱,完成第一类AC系数编码加密;
步骤九:重复步骤六、步骤七和步骤八,完成所有类别AC系数编码的置乱加密;
步骤十:对步骤二所获得的JPEG图像所有DC系数差分编码进行分组,差分符号相同且连续的DC系数差分编码作为一组;
步骤十一:用自适应加密密钥Key进行混沌迭代,生成长度与第一个DC系数差分编码分组元素个数相等的混沌序列,并更新自适应加密密钥Key;
步骤十二:对步骤十一所产生的混沌序列按照大小进行排序,记录该已排序序列中的随机数在原始序列中的位置,形成一个新序列;
步骤十三:利用步骤十二所产生的新序列对第一组DC系数差分编码进行置乱,完成第一组DC系数差分编码加密;
步骤十四:重复步骤十一、步骤十二和步骤十三,完成所有DC系数差分编码分组的置乱加密;
步骤十五:根据JPEG图像加密强度的实际需求,选定DC系数差分编码加密的迭代次数M,M越大加密效果越好;
步骤十六:对DC系数差分编码进行第m次分组,m=1~M,每组包含2m个DC系数差分编码;
步骤十七:用自适应加密密钥Key进行混沌迭代,生成长度与步骤十六所形成的DC系数差分编码分组数相等的二进制比特序列,并更新自适应加密密钥Key;
步骤十八:利用步骤十七所产生的二进制比特序列完成DC系数差分编码的第m次迭代加密;
步骤十九:如果m<M,使m增加1,返回步骤十六,继续进行迭代加密,否则进入步骤二十;
步骤二十:将已加密JPEG图像所有DC系数差分编码和各DCT块AC系数编码写入原JPEG图像的对应位置,生成一幅JPEG密文图像,完成一种具有兼容格式和不变尺寸的JPEG图像加密方法。
2.根据权利要求1所述的一种具有兼容格式和不变尺寸的JPEG图像加密方法,其特征在于,步骤三中图像特征F是待加密JPEG图像所有DCT块的AC系数编码数量直方图,即AC系数编码数量分别为0-63的DCT块数。
3.根据权利要求1所述的一种具有兼容格式和不变尺寸的JPEG图像加密方法,其特征在于,步骤四中自适应加密密钥Key基于种子密钥K和图像特征F的哈希值生成。
4.根据权利要求1所述的一种具有兼容格式和不变尺寸的JPEG图像加密方法,其特征在于,步骤五中各DCT块AC系数编码的分类基于每个编码中的哈夫曼码字所对应的零游程长度,游程取值范围为0-62,分别对应AC系数编码分类第一至第六十三类。
5.根据权利要求1所述的一种具有兼容格式和不变尺寸的JPEG图像加密方法,其特征在于,步骤六、步骤十一和步骤十七中的混沌迭代,采用一维混沌系统:xn+1=μxn(1-xn),其中xn为迭代产生的混沌序列,n为迭代次数,0<xn<1.0,μ为系统参数,3.5699<μ<4.0。
6.根据权利要求1所述的一种具有兼容格式和不变尺寸的JPEG图像加密方法,其特征在于,步骤八中的置乱加密具体方法:
(a)取出一类AC系数编码,生成长度与该类AC系数编码数量相等的混沌序列;
(b)对步骤(a)中所生成的混沌序列按照大小进行排序,并记录该已排序序列中的随机数在原始序列中的位置,形成一个新序列;
(c)利用步骤(b)中所生成的新序列对该类AC系数编码进行置乱,完成该类AC系数编码的加密;
(d)重复步骤(a)、(b)和(c),完成所有类别AC系数编码的置乱加密。
7.根据权利要求1所述的一种具有兼容格式和不变尺寸的JPEG图像加密方法,其特征在于,步骤十中对JPEG图像所有DC系数差分编码进行分组时,差分符号根据附加比特第一位进行确定。
8.根据权利要求1所述的一种具有兼容格式和不变尺寸的JPEG图像加密方法,其特征在于,步骤十三中的DC系数差分编码置乱加密具体方法为:
(a)取出一个DC系数差分编码分组,生成长度与该组DC系数差分编码数量相等的混沌序列;
(b)对步骤(a)中所生成的混沌序列按照大小进行排序,记录该已排序序列中的随机数在原始序列中的位置,形成一个新序列;
(c)利用步骤(b)中所生成的新序列对该DC系数差分编码分组进行置乱,完成该分组的加密;
(d)重复步骤(a)、(b)和(c),完成所有DC系数差分编码分组的置乱加密。
9.根据权利要求1所述的一种具有兼容格式和不变尺寸的JPEG图像加密方法,其特征在于,步骤十六、十七和十八中有关第m次迭代加密的具体方法为:
(a)对所有DC系数差分编码进行分组,每组包含2m个DC系数差分编码;
(b)产生长度与步骤(a)中的DC系数差分编码分组数量相等的二进制比特序列;
(c)取出一个DC系数差分编码分组,等分为左右两个子分组,基于与JPEG压缩标准的兼容性,判断左右两个子分组能否交换;
(d)如果左右两个子分组可以交换,再根据与该分组对应的随机二进制比特决定是否进行交换,随机二进制比特为1,交换左右两个子分组,否则保持不变;如果左右两个子分组不能交换,跳过该分组,不做任何处理;
(e)重复步骤(c)和(d),直至处理完所有DC系数差分编码分组,完成一次DC系数差分编码的迭代加密。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710643408.4A CN107578452B (zh) | 2017-07-31 | 2017-07-31 | 一种具有兼容格式和不变尺寸的jpeg图像加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710643408.4A CN107578452B (zh) | 2017-07-31 | 2017-07-31 | 一种具有兼容格式和不变尺寸的jpeg图像加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107578452A true CN107578452A (zh) | 2018-01-12 |
CN107578452B CN107578452B (zh) | 2020-08-18 |
Family
ID=61035799
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710643408.4A Active CN107578452B (zh) | 2017-07-31 | 2017-07-31 | 一种具有兼容格式和不变尺寸的jpeg图像加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107578452B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108600575A (zh) * | 2018-05-22 | 2018-09-28 | 南京邮电大学 | 基于不完全Feistel网络的RGB图像加密方法 |
CN108810555A (zh) * | 2018-06-15 | 2018-11-13 | 南开大学 | 基于图像压缩与弹性分辨率的缩略图图像隐私保护方法 |
CN109151486A (zh) * | 2018-09-06 | 2019-01-04 | 西南交通大学 | 大容量的jpeg图像比特流加密域可逆数据隐藏方法 |
CN110400578A (zh) * | 2019-07-19 | 2019-11-01 | 广州市百果园信息技术有限公司 | 哈希码的生成及其匹配方法、装置、电子设备和存储介质 |
CN110913234A (zh) * | 2019-12-05 | 2020-03-24 | 福建师范大学福清分校 | 一种jpeg图像加密的方法 |
CN110933438A (zh) * | 2019-11-27 | 2020-03-27 | 华南理工大学 | 一种jpeg图像可逆信息隐藏方法 |
CN114866657A (zh) * | 2022-03-09 | 2022-08-05 | 西南交通大学 | 选择明文安全且密文图像文件大小减小的jpeg图像加密方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1073015A2 (en) * | 1999-07-30 | 2001-01-31 | Olympus Optical Co., Ltd. | Image signal processor for compression and encoding |
US20040136566A1 (en) * | 2002-11-21 | 2004-07-15 | Samsung Electronics Co., Ltd. | Method and apparatus for encrypting and compressing multimedia data |
CN104144343A (zh) * | 2014-07-11 | 2014-11-12 | 东北大学 | 一种数字图像压缩加密联合编码方法 |
CN105975866A (zh) * | 2016-04-26 | 2016-09-28 | 长安大学 | 基于同类系数置乱的jpeg图像加密方法 |
-
2017
- 2017-07-31 CN CN201710643408.4A patent/CN107578452B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1073015A2 (en) * | 1999-07-30 | 2001-01-31 | Olympus Optical Co., Ltd. | Image signal processor for compression and encoding |
US20040136566A1 (en) * | 2002-11-21 | 2004-07-15 | Samsung Electronics Co., Ltd. | Method and apparatus for encrypting and compressing multimedia data |
CN104144343A (zh) * | 2014-07-11 | 2014-11-12 | 东北大学 | 一种数字图像压缩加密联合编码方法 |
CN105975866A (zh) * | 2016-04-26 | 2016-09-28 | 长安大学 | 基于同类系数置乱的jpeg图像加密方法 |
Non-Patent Citations (5)
Title |
---|
CHENG HUANG,ZHANG XINPENG,YU JIANG: "AC-coefficient histogram-based retrieval for encrypted", 《MULTIMEDIA TOOLS AND APPLICATIONS》 * |
MUSAB GHADIA,LAMRI LAOUAMERB,TAREK MOULAHIB: "Enhancing digital image integrity by exploiting JPEG bitstream attributes", 《JOURNAL OF INNOVATION IN DIGITAL ECOSYSTEMS》 * |
ONG SIMYING,WONG KOKSHEIK,QI XIAOJUN,TANAKA KIYOSHI: "Beyond format-compliant encryption for JPEG image", 《SIGNAL PROCESSING-IMAGE COMMUNICATION》 * |
姚炜伦,贾宇翔: "JPEG图像加密算法的研究", 《首届国际信息化建设学术研讨会论文集(三)》 * |
王方超,李斌,周佳虹: "基于DCT量化系数重组的JPEG图像加密算法", 《微电子学与计算机》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108600575A (zh) * | 2018-05-22 | 2018-09-28 | 南京邮电大学 | 基于不完全Feistel网络的RGB图像加密方法 |
CN108810555A (zh) * | 2018-06-15 | 2018-11-13 | 南开大学 | 基于图像压缩与弹性分辨率的缩略图图像隐私保护方法 |
CN109151486A (zh) * | 2018-09-06 | 2019-01-04 | 西南交通大学 | 大容量的jpeg图像比特流加密域可逆数据隐藏方法 |
CN109151486B (zh) * | 2018-09-06 | 2020-10-09 | 西南交通大学 | Jpeg图像比特流加密域可逆数据隐藏方法 |
CN110400578A (zh) * | 2019-07-19 | 2019-11-01 | 广州市百果园信息技术有限公司 | 哈希码的生成及其匹配方法、装置、电子设备和存储介质 |
CN110400578B (zh) * | 2019-07-19 | 2022-05-17 | 广州市百果园信息技术有限公司 | 哈希码的生成及其匹配方法、装置、电子设备和存储介质 |
CN110933438A (zh) * | 2019-11-27 | 2020-03-27 | 华南理工大学 | 一种jpeg图像可逆信息隐藏方法 |
CN110933438B (zh) * | 2019-11-27 | 2021-03-30 | 华南理工大学 | 一种jpeg图像可逆信息隐藏方法 |
CN110913234A (zh) * | 2019-12-05 | 2020-03-24 | 福建师范大学福清分校 | 一种jpeg图像加密的方法 |
CN110913234B (zh) * | 2019-12-05 | 2021-11-30 | 福建师范大学福清分校 | 一种jpeg图像加密的方法 |
CN114866657A (zh) * | 2022-03-09 | 2022-08-05 | 西南交通大学 | 选择明文安全且密文图像文件大小减小的jpeg图像加密方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107578452B (zh) | 2020-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107578452A (zh) | 一种具有兼容格式和不变尺寸的jpeg图像加密方法 | |
Katzenbeisser et al. | Information hiding | |
CN109151486A (zh) | 大容量的jpeg图像比特流加密域可逆数据隐藏方法 | |
Li et al. | Survey on JPEG compatible joint image compression and encryption algorithms | |
Khan et al. | A new approach for image encryption and watermarking based on substitution box over the classes of chain rings | |
CN109889687B (zh) | 基于交流统计特征改变的jpeg图像比特流加密方法 | |
Soleymani et al. | A novel public key image encryption based on elliptic curves over prime group field | |
Chanu et al. | A survey paper on secret image sharing schemes | |
Xiang et al. | Cryptanalysis and improvement of a reversible data-hiding scheme in encrypted images by redundant space transfer | |
Kurup et al. | Data hiding scheme based on octagon shaped shell | |
Islam et al. | A modified LSB image steganography method using filtering algorithm and stream of password | |
Chen et al. | Error-free separable reversible data hiding in encrypted images using linear regression and prediction error map | |
Tiken et al. | A comprehensive review about image encryption methods | |
Yadav et al. | 3-Level security based spread spectrum image steganography with enhanced peak signal to noise ratio | |
Gupta et al. | An effective approach of secured medical image transmission using encryption method | |
Shinde et al. | A survey: video steganography techniques | |
CN114866657B (zh) | 选择明文安全且密文图像文件大小减小的jpeg图像加密方法 | |
Abed | A proposed encoding and hiding text in an image by using fractal image compression | |
Ojha et al. | An Authenticated Transmission of Medical Image with Codebase Cryptosystem over Noisy Channel | |
CN107845055A (zh) | 抗Facebook压缩的图像加密方法 | |
Guhan et al. | A Trio Approach Satisfying CIA Triad for Medical Image Security | |
Hua et al. | Secure reversible data hiding in encrypted images using cipher-feedback secret sharing | |
Xu et al. | A Steganography Based on Optimal Multi-Threshold Block Labeling. | |
Patil et al. | A secure data communication system using enhanced cryptography and steganography | |
Barbier et al. | Universal Detection of JPEG Steganography. |
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 |