法律状态公告日
法律状态信息
法律状态
2020-01-10
授权
授权
2019-02-26
实质审查的生效 IPC(主分类):H04N1/32 申请日:20180917
实质审查的生效
2019-01-25
公开
公开
技术领域
本发明属于图像处理技术领域,涉及一种基于JPEG加密图像的加密算法安全性验证方法。
背景技术
图像是人们获取信息的重要途径,数字图像以及基于数字图像的其他多媒体技术正逐渐成为人们进行信息交流的重要载体。JPEG压缩图像不仅能够提供良好的压缩性能,而且具有比较好的重建质量,因此被广泛应用于图像、视频处理领域。随着计算机网络技术的快速发展,对隐私内容的加密需求也与日俱增。图像加密技术成为保护数字图像安全性的关键技术。所以选择一个强壮的加密算法至关重要。图像加密通过算法隐藏视觉信息,保护数据安全。
基于JPEG图像的加密方法的原则是尽量维持压缩率。为了维持压缩率(经过锯齿形扫描后,连续的零序列将有利于游程编码),则需要保持整个图像NZC的个数不变,传统的加密方法如下:
1、在块内将非零系数的值改变(不改变块内非零系数的个数);
2、在块内将非零系数位置互换(不改变块内非零系数的个数);
(a).NZC数值不变,只将block内的AC系数进行互换;
(b).NZC数值不变,在整个block内,将所有系数位置互换;
缺点:改变了0游程的长度,压缩率受影响较大;
传统的基于JPEG图像的加密都是在block内将系数值或位置改变,可以看到block的位置和block内非零系数的数量没有发生改变。我们知道,非零系数的数量与相应子块的某些特性相关,特别是纹理和边缘信息。因此传统的方法存在风险;传统的方法不能抵御非零计数(NZCA)的攻击,在此算法的基础上有一种结合传统方法的改进算法--FIBS,这种算法在传统算法加密后以8*8块为单位,将块进行混洗,改变了块的位置,因此能够抵御非零计数攻击,虽然FIBS改变了块的位置,但没有改变块内的非零系数的个数,因此需要一种验证FIBS加密方法安全性的方法。
发明内容
本发明的目的在于提供一种基于JPEG加密图像的加密算法安全性验证方法,以克服现有技术的不足。
为达到上述目的,本发明采用如下技术方案:
一种基于JPEG加密图像的加密算法安全性验证方法,包括以下步骤:
步骤1)、获取明文图像P和密文C;
步骤2)、改变明文图像P的第一个8*8区块中的非零系数的个数,并设该明文图像为P1,改变非零系数的系数坐标为(x1,y1);将明文图像P1经过加密得到密文C1,通过C1和C做差,得到密文C中发生改变的系数的坐标(u1,v1),即(x1,y1)加密后的坐标;通过(u1,v1)可以计算出该系数所在的区块(m,n);
步骤3)、按照步骤2)依次改变每个8*8区块的非零系数的个数,得到明文坐标与加密后对应的密文坐标;即得到明文区块(i,j)经过加密后的区块位置(m,n);
步骤4)、根据步骤3)得到的明文区块(i,j)经过加密后的区块位置(m,n),然后结合非零计数攻击,破解得到密文C的明文图像,若破解得到的明文图像与明文图像P一致,则说明FIBS加密方法不安全,反之,则安全。
采用NZCA算法进行计数攻击,获取明文图像的概图。
进一步的,密文C是将明文图像P通过FIBS加密后获得的密文图像。
进一步的,步骤2)中,如果一个8*8区块有非零值,那就将一个非零值设置为0;如果8*8区块是一个全零的区块,就将其中一个零值改为非零值。
进一步的,具体的,将第一个8*8区块内64个系数的第一个非零系数值改为零,若区块为全零区块,将第一个值改为非零。
进一步的,采用NZCA算法进行计数攻击,获取明文图像的概图。
与现有技术相比,本发明具有以下有益的技术效果:
本发明一种基于JPEG加密图像的加密算法安全性验证方法,首先通过获取明文图像P和密文C;通过改变明文图像P的第一个8*8区块中的非零系数的个数,并设该明文图像为P1,改变非零系数的系数坐标为(x1,y1);将明文图像P1经过加密得到密文C1,通过C1和C做差,得到密文C中发生改变的系数的坐标(u1,v1),即(x1,y1)加密后的坐标;通过(u1,v1)可以计算出该系数所在的区块(m,n);依次改变每个8*8区块的非零系数的个数,得到明文坐标与加密后对应的密文坐标;即得到明文区块(i,j)经过加密后的区块位置(m,n);然后结合非零计数攻击,可获得明文图像的概图,从而实现重构密文图像的草案,得到最终的明文图像,与原明文图像对比,即可证明JPEG图像经过FIBS加密算法加密安全性,本发明步骤简单,能够有效分析FIBS加密的安全性。
附图说明
图1为本发明算法结构框图。
图2为本发明算法示意图。
图3为三角形和长方形原图,即明文图像,a为三角形原图,b为正方形原图。
图4为三角形和长方形原图经过FIBS加密后的密文图像,a为三角形经过FIBS加密后的密文图像,b为长方形经过FIBS加密后的密文图像。
图5为得到对应关系后获得的长方形概图。
具体实施方式
下面结合附图对本发明做进一步详细描述:
一种基于JPEG加密图像的加密算法安全性验证方法,包括以下步骤:
步骤1)、获取明文图像P和密文C;
步骤2)、改变明文图像P的第一个8*8区块中的非零系数的个数得到明文图像为P1,改变非零系数的系数坐标为(x1,y1);将明文图像P1经过加密得到密文C1,通过密文C1和密文C做差,得到密文C中发生改变的系数的坐标(u1,v1),即(x1,y1)加密后的坐标;通过(u1,v1)可以计算出该系数所在的区块(m,n);
步骤3)、按照步骤2)依次改变每个8*8区块的非零系数的个数,得到明文坐标与加密后对应的密文坐标;即得到明文区块(i,j)经过加密后的区块位置(m,n);
步骤4)、根据步骤3)得到的明文区块(i,j)经过加密后的区块位置(m,n),然后结合非零计数攻击,破解得到密文C的明文图像,若破解得到的明文图像与明文图像P一致,则说明FIBS加密方法不安全,反之,则安全。
密文C是将明文图像P通过FIBS加密后获得的密文图像;
步骤1)中密文C的加密方法已知,加密方法是FIBS(Full Inter-Block Shuffle),即通过一种置乱序列将所有的8*8区块洗牌;
步骤2)中,如果一个8*8区块有非零值,那就将一个非零值设置为0;如果是一个全零的区块,就将其中一个零值改为非零值即可;
具体的,将第一个8*8区块内64个系数的第一个非零系数值改为零,若区块为全零区块,将第一个值改为非零;
如图3、图4所示,对本发明做进一步详细说明:
步骤一:已知JPEG图像经过FIBS加密算法加密;两个图像尺寸相同,用相同密码加密的两幅明文和密文图像。
步骤二:依次改变三角形图像中每个8*8区块内非零系数的个数,并设该明文图像为P1,改变的系数坐标为(x1,y1),经过加密得到密文C1,通过C1和C做差,可以得到密文中发生改变的系数的坐标(u1,v1),即(x1,v1)对应的密文坐标;
改变非零系数个数的方法是:如果一个8*8区块有非零值,那就将一个非零值设置为0;如果是一个全零的区块,就将其中一个零值改为非零值即可。
步骤三:三角形图像像素为128*128,故有16*16个block;依次改变16*16个block的非零系数的个数来寻找对应关系;
步骤四:根据此对应关系,能够解出加密后的长方形图像的概图,结果如图5所示。得到破解后的明文图像与之前明文图像一致,说明JPEG图像经过FIBS加密算法加密不安全。
机译: 一种改进的使用混合密钥加密算法提高安全性的方法和系统
机译: UR5:基于密钥更新的快速,高安全性的新型对称加密算法
机译: 一种基于移动国家码的保密通信加密算法的确定方法