CN103929563A - 基于改进约瑟夫遍历和广义Henon映射的图像加密与解密方法 - Google Patents
基于改进约瑟夫遍历和广义Henon映射的图像加密与解密方法 Download PDFInfo
- Publication number
- CN103929563A CN103929563A CN201410145368.7A CN201410145368A CN103929563A CN 103929563 A CN103929563 A CN 103929563A CN 201410145368 A CN201410145368 A CN 201410145368A CN 103929563 A CN103929563 A CN 103929563A
- Authority
- CN
- China
- Prior art keywords
- formula
- sha
- image
- sequence
- encryption
- 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
- Facsimile Transmission Control (AREA)
- Image Processing (AREA)
Abstract
本发明提供了一种基于改进约瑟夫遍历和广义Henon映射的图像加密与解密方法,将待加密图像SHA-1值和用户选定的加密参数联合作为密钥,驱动广义Henon映射对改进的用于位点置换的约瑟夫遍历映射的起始位置、报数间隔和报数方向进行随机扰动,从而使不同的加密图像和加密参数实质对应于不同的位点置换过程;该方法增强了各加密环节的耦合性,不同的待加密图像启动不同的加密过程,因而能有效地抵抗选择性明文攻击,且具有较大的密钥空间,易于实现,成本较低。
Description
技术领域
本发明属于信息安全、非线性动力学和数字图像信号处理等交叉领域,涉及一种数字图像比特位加密和解密方法,尤其涉及一种基于改进约瑟夫遍历和广义Henon映射的图像加密与解密方法。
背景技术
近年来,伴随着计算机和网络技术的发展,越来越多的图像在网络中传输,在给用户提供方便的同时,也带来了一系列的安全隐患。对图像信息不当使用和恶意篡改,不仅会涉及个人隐私问题,也会给社会带来严重的负面影响。保障图像信息的核心技术是数字图像加密。
目前典型的图像加密方法,主要延续了Fridrich J于1998年提出的置换和混淆加密结构,所谓置换就是重新排列,将所有的元素按照映射规则映射到不同的位置;所谓混淆就是将元素值进行变换。
目前绝大多数的已公开的图像加密方法主要是以像素为基本加密单位来进行置换和混淆操作,并且将置换和混淆作为松耦合的加密过程,由此攻击者可选择特殊图像将置换和混淆拆解为两个孤立的独立过程,先通过特殊图像使置换过程无效破解混淆过程,再通过特殊图像跟踪置换过程,揣测出置换参数,从而破解整个图像加密方法。
为提高置换和混淆结构的耦合性和提高加密效率,基于像素的比特位加密方法被广为研究,对像素比特位的置换不仅能改变比特位的位置,同时也能对像素值进行混淆。但单纯的比特位置换方法并不能实质地提高加密方法的安全性,攻击者依然可以构造特殊待加密图像,通过比特位跟踪技术破解对应的图像加密方法。
另外,传统的基于非线性动力学模型的图像加密方法,通常是采用排序来构造置换,由此带来了高昂的置换代价。
约瑟夫问题最早史见于犹太历史学家Flavius Josephus的笔记,描述的是N个人围成一圈,从第1个人开始报数,不断淘汰第M个人,直至剩下最后1人的游戏。约瑟夫问题也被描述为其它形式,例如公主择婿问题。
经典的约瑟夫问题中仅含有2个参数,报数终值和人数。向德生等人将约瑟夫问题进行变形,添加了计数起点,并将其用于图像的行列置换。经典的约瑟夫问题易于使用数学归纳法进行破解,同时由于置换参数受限,生成置换的数量十分有限。
发明内容
本发明目的在于克服现有技术缺陷,提供一种基于改进约瑟夫遍历和广义Henon映射的图像加密与解密方法,对经典的约瑟夫问题进行了改进,添加了随机报数间隔和报数方向,从而进一步提高了置换生成数量和提高了置换生成的安全性。
为实现上述目的,本发明采用以下技术方案:
基于改进约瑟夫遍历和广义Henon映射的图像加密方法,包括以下步骤:
第1步:由用户选定as,bs,al,bl,ad,bd,aM,bM且ad,as,al,aM∈(1.98,2),bd,bs,bl,bM∈(-0.005,0)∪(0,0.0084)作为用户密钥,选择待加密图像A=(Pi,j)m×n且Pi,j∈[0,255]和迭代元素序列长度ll≥2000,将Pi,j按式(1)视为比特位串序列:
Pi,j=<bi,j,0,bi,j,1,…,bi,j,7> (1)
式(1)中,bi,j,0为当前像素Pi,j的最低位,bi,j,7为当前像素的最高位;
第2步:记A的SHA-1值为SSHA-1,,将SSHA-1每4位2进制数看作1位16进制数,记其中每一位16进制数为SSHA-1[i],i∈{0,1,…,39},将其按式(10)分为4组,依次记为G0,G1,G2,G3,每组长度为10;
式(10)中,G0,G1,G2,G3分别按式(11)映射为 和
式(11)中,每组G0,G1,G2,G3的前8位16进制数用于产生中间8位16进制数用于产生后8位被用于产生fDecimal()为转小数函数,其功能为将8位16进制数直接转换为10进制纯小数;
第3步:将代入式(6)进行迭代,滤除前nn个迭代坐标,nn≥200,迭代产生长度为ll的映射坐标序列,ll≥2000,依次记为并将其作为
式(6)中,当a∈(1.98,2)且b∈(-0.005,0)∪(0,0.0084)时,其不变分布变差较小,随机性较好;
第4步:将代入式(7)进行量化产生作为(i,j,k)ll;
式(7)中,“”为向下取整函数;
第5步:将和依次代入式(6)产生长度为ll的3维元素序列,在产生迭代元素序列前,同样滤除前nn个映射坐标以消除暂态效应,记迭代产生的坐标序列分别为:和将其分别代入式(8)分别进行量化,记量化后的坐标依次为和
将作为将作为将作为
第6步:将A=(Pi,j)m×n转换为Α=(bi,j,k)m×n×8;
第7步:对(i,j,k)所在的x,y,z方向的比特位串按式(4)依次进行置换,得置换后的比特位串若式(4)中的箭头方向逆置,则为逆变换;
第8步:记邻近的4邻域比特位串依次为对其进行混淆加密按式(5)进行逐位异或混淆产生新的
第9步,反复执行第7步~第8步,直至(i,j,k)ll序列中的所有元素都处理完毕;
以上加密方法执行t轮t≥1,每轮都使用相同的SSHA-1和as,bs,al,bl,ad,bd,aM,bM。
基于改进约瑟夫遍历和广义Henon映射的图像解密方法,包括以下步骤:
第1步:输入密钥as,bs,al,bl,ad,bd,aM,bM,及SSHA-1,和迭代元素序列长度ll,ll≥2000,以及加密图像A′;
第2步:根据SSHA-1,按式(10)计算G0,G1,G2,G3,按式(11)产生Henon映射初始值和
第3步:将代入式(6),滤除前nn个后,nn≥200,迭代产生ll个映射坐标序列,将其作为
第4步:将代入式(7)作为(i,j,k)ll;
第5步:和依次代入式(6),滤除前nn个后,迭代产生ll个映射坐标序列,按式(8)量化为
第6步:将A′=(P′i,j)m×n转换为Α′=(b′i,j,k)m×n×8;
第7步:将(i,j,k)ll序列中的每个元素,从最后一个3维坐标起,提取z方向的比特位串对和邻近的4邻域比特位串 再次异或进行混淆解密;
第8步:将(i,j,k)ll序列中的每个元素作为(bi,j,k)m×n×8的3维坐标,依次提取在z,y,x方向的比特位串按式(4)的逆变换和式(3)进行逆置换;
第9步,反复执行第7步~第8步,直至(i,j,k)ll序列中的所有元素都处理完毕;
解密方法同样可执行t轮,t≥1,每轮都使用相同的SSHA-1和as,bs,al,bl,ad,bd,aM,bM。
本发明所提出的方法将待加密图像SHA-1值和用户选定的加密参数联合作为密钥,驱动广义Henon映射对改进的用于位点置换的约瑟夫遍历映射的起始位置、报数间隔和报数方向进行随机扰动,从而使不同的加密图像和加密参数实质对应于不同的位点置换过程;为进一步提高位点置换过程的安全性,该方法添加了位点混淆过程。所提方法增强了各加密环节的耦合性,不同的待加密图像启动不同的加密过程,因而能有效地抵抗选择性明文攻击,且具有较大的密钥空间,如果按生成空间最大量化为1015个子空间,迭代元素序列长度范围为[2000,9999]和加密轮数范围[1,50]进行估算,其密钥空间约为5.846×10173。所提方法易于实现,成本较低。
本发明同现有技术相比还具有以下优点:
①对传统的约瑟夫遍历映射过程进行了改进,增加了置换生成数量,同时保证了置换生成的安全性;
②所设计和实现的方法具有较强的明文和密文敏感性,密钥空间大,可抵抗蛮力破解攻击,具有较好地明文和密文敏感性,且不同的待加密图像实际对应于不同的加密环节,难以破解和攻破。
附图说明
图1加密流程图
图2解密流程图
图3为待加密图像
图4经过1轮加密的图像
图5经过9轮加密的图像
图6经过1轮解密的图像
图7经过9轮解密的图像
图8待加密图像图1直方图
图9经过1轮加密图像图1直方图
图10经过9轮加密图像图2直方图
图11待加密图像图1的水平、垂直和对角相关性(随机选取2000对水平、垂直和对角相邻像素对)
图12经过1轮加密后图像图2的水平、垂直和对角相关性(随机选取2000对水平、垂直和对角相邻像素对)
图13经过9轮加密后图像图3的水平、垂直和对角相关性(随机选取2000对水平、垂直和对角相邻像素对)
图14密钥微小改变后对1轮加密图像进行解密结果
图15密钥微小改变后对1轮加密图像进行解密结果
图16密钥微小改变后对1轮加密图像进行解密结果
图17密钥微小改变后对1轮加密图像进行解密结果
图18密钥微小改变后对1轮加密图像进行解密结果
图19密钥微小改变后对1轮加密图像进行解密结果
图20密钥微小改变后对1轮加密图像进行解密结果
图21密钥微小改变后对1轮加密图像进行解密结果
图22待加密图像图1微小改变后,1轮加密图像和图2的差异图(图1坐标(35,45)由215改为216)
图23待加密图像图1微小改变后,1轮加密图像和图2的差异图(图1坐标(128,173)由229改为230)
图24待加密图像图1微小改变后,1轮加密图像和图2的差异图(图1坐标(112,57)由34改为35)
图25待加密图像图1微小改变后,9轮加密图像和图3的差异图(图1坐标(35,45)由215改为216)
图26待加密图像图1微小改变后,9轮加密图像和图3的差异图(图1坐标(128,173)由229改为230)
图27待加密图像图1微小改变后,9轮加密图像和图3的差异图(图1坐标(112,57)由34改为35)。
具体实施方式
下面结合附图和具体实施例对本发明进行详细描述:
1.改进的约瑟夫遍历映射:
约瑟夫遍历映射源自约瑟夫问题,描述的是N个人围成一圈,从第1个人开始报数,不断淘汰第M个人,直至剩下最后1人的游戏。
经典的约瑟夫问题可按1,2,…N→fJosephus-1(N,M)产生1,2,…N上的置换,其中N为人数,M为计数终值,以<1,2,…,6→fJosephus-1(6,5)为例,可将元素序列1,2,3,4,5,6置换为5,4,6,2,3,1。
向德生等将将fJosephus-1(N,M)拓展为fJosephus-2(N,S,M),其中S为报数起点,以fJosephus-2(6,2,5)为例,可将元素序列1,2,3,4,5,6置换为6,5,1,3,4,2。
由于fJosephus-2(N,S,M)添加的扰动仅有报数起始值S,其所能生成的置换数量依然十分有限,并且经典的约瑟夫问题易于使用数学归纳法进行破解,为使约瑟夫遍历映射产生的置换变数更多,本发明添加了约瑟夫遍历映射的随机报数间隔L和报数方向D,将fJosephus-2(N,S,M)拓展为fJosephus-3(N,S,L,D,M),以fJosephus-3(6,2,1,1,5)为例,可将元素序列1,2,3,4,5,6置换为6,1,3,2,5,4。
2.基于SHA-1及广义Henon映射的加密策略
传统方法在构造加密环节时,往往采用特定的密钥直接驱动混沌系统对图像像素进行位置置换或混淆加密,这些方法的加密参数都直接给定且与具体的待加密图像无关,从而不同待加密图像,启动相同的加密过程,由此攻击者可容易地选取特殊图像构造攻击模板,揣测出加密密钥,使图像加密策略彻底失效。
为避免传统方法存在的安全隐患,本发明将待加密图像SHA-1值和用户设定密钥绑定在一起,驱动广义Henon映射来生成fJosephus-3的中间加密密钥,用于对图像像素比特位进行置换和混淆,从而即使使用相同的密钥,不同的待加密图像也将启动不同的加密过程,使攻击者选取特殊图像构造攻击模板,揣测出加密密钥的过程彻底失效。
记待加密的灰度图像为A=(Pi,j)m×n且Pi,j∈[0,255],将Pi,j按式(1)视为比特位串序列:
Pi,j=<bi,j,0,bi,j,1,…,bi,j,7> (1)
其中bi,j,0代表当前像素Pi,j的最低位,bi,j,7代表当前像素的最高位。由此可将A按式(2)转换为3维数组:
Α=(bi,j,k)m×n×8 (2)
产生长度为ll的3维随机坐标序列(i,j,k)ll,i∈[0,m-1],j∈[0,n-1],k∈[0,7]使用fJosephus-3按式(3)分别产生{1,2,…,m},{1,2,…,n}和{1,2,…,8}上的排列
式(3)中,和分别为fJosephus-3在x,y,z方向上的报数起点位置,报数间隔,报数方向和报数终值。
对(i,j,k)所在的x,y,z方向的比特位串按式(4)依次进行置换,得置换后的比特位串(若式(4)中的箭头方向逆置,则为逆变换)
单纯的比特位置换方法并不能实质地提高加密方法的安全性,攻击者依然可以构造特殊待加密图像,通过比特位跟踪技术破解对应的图像加密方法。
为避免单纯比特位置换方法所导致的安全隐患,本发明添加了比特位混淆过程。记邻近的4邻域比特位串依次对其按式(5)进行逐位异或混淆产生新的
3.中间加密参数生成策略
在以上加密策略中,主要涉及到以下中间加密参数:①随机坐标序列(i,j,k)ll且i∈[0,m-1],j∈[0,n-1],k∈[0,7];②在x,y,z方向上的报数起点位置序列③在x,y,z方向上的报数间隔序列④在x,y,z方向上的报数方向序列⑤在x,y,z方向上的报数终值序列均为长度为ll的3维元素序列。在本发明中,采用3维广义Henon映射来生成①~⑤中间加密参数。广义Henon映射如式(6)所示,其中x0,y0,z0是初始值。
式(6)中,当a∈(1.98,2)且b∈(-0.005,0)∪(0,0.0084),其不变分布变差较小,随机性较好。
本发明采用4个广义Henon映射分别生成①~⑤所对应的中间加密参数。其中:①(i,j,k)ll和④由第1个Henon映射产生,其所对应的Henon映射系统加密参数a,b和初始值(x0,y0,z0)依次为①②③和⑤由其余3个广义Henon映射产生,其映射系统加密参数依次为和
将代入式(6),滤除前nn(nn≥200)个迭代坐标,迭代产生长度为ll(ll≥2000)的映射坐标序列将其直接作为④
将依次代入式(7)进行映射,将映射后的结果作为①(i,j,k)ll:
式(7)中为向下取整函数。
将和依次代入式(6),同样滤除前nn(nn≥200)个迭代坐标,迭代产生长度为ll的映射坐标序列,记迭代产生的坐标序列分别为:和将其分别代入式(8)分别进行量化,记量化后的坐标依次为和
式(8)和式(7)的区别是映射后,式(7)是从0开始,式(8)是从1开始,原因是均应从1开始。
将作为②将作为③将作为⑤
为避免传统方法在构造加密环节时,与明文无关所带来的安全隐患,本发明将待加密图像SHA-1值和用户设定密钥绑定在一起,驱动广义Henon映射来生成fJosephus-3中间加密参数①(i,j,k)ll,②③④和⑤
将待加密图像SHA-1值和用户设定密钥绑定在一起,使不同的加密图像实际对应于不同的加密参数,从而对应于不同的加密环节,使图像加密策略难以破解。
以上中间加密参数①(i,j,k)ll,②③④和⑤由4组广义Henon映射产生,对应的Henon系统参数和初值依次为和本方法将上述参数分为2组,其中ad,bd,as,bs,al,bl,aM,bM且ad,as,al,aM∈(1.98,2),bd,bs,bl,bM∈(-0.005,0)∪(0,0.0084)由用户指定。 和由待加密图像的SHA-1值直接映射得到。
记fSHA-1()为SHA-1的计算函数,则图像A的安全哈希算法1值SSHA-1可记为式(9):
SSHA1=fSHA-1(A) (9)
将SSHA-1每4位2进制数看作1位16进制数,记其每一位16进制数为SSHA-1[i],i∈{0,1,…,39},将其按式(10)分为4组,依次记为G0,G1,G2,G3,每组长度为10。
式(10)中的G0,G1,G2,G3被分别用于按式(11)映射为 和
在式(11)中,每组G0,G1,G2,G3的前8位16进制数用于分别产生中间8位16进制数被用于产生最后8位用于产生fDecimal()为转小数函数,其功能为将8位16进制数转换为10进制纯小数。
通过式(9),式(10)和式(11)的映射规则,可将待加密图像的160位SHA-1值和Henon映射的系统初始值和紧密地绑定在一起,从而不同的待加密图像参于不同的加密映射过程,即使攻击者获得用户的加密密钥ad,bd,as,bs,al,bl和aM,bM也无法破解和解密,从而可以有效地避免传统图像加密方法存在的安全隐患。同时所设计的比特位置换和混淆过程也有效地避免了传统比特位图像加密方法不能改变比特位统计分布且易于被比特位置换跟踪方法破解的使用缺陷。
4.加密方法
本发明主要将待加密图像SHA-1值和用户选定的加密参数联合作为密钥,驱动广义Henon映射产生约瑟夫遍历映射的参数,并将其用于图像的比特位置换和混淆加密。
以下给出完整的加密方法:
第1步:由用户选定as,bs,al,bl,ad,bd,aM,bM且ad,as,al,aM∈(1.98,2),bd,bs,bl,bM∈(-0.005,0)∪(0,0.0084)作为用户密钥,选择待加密图像A=(Pi,j)m×n和迭代元素序列长度ll(ll≥2000);
第2步:计算SSHA-1,按式(10)计算G0,G1,G2,G3,按式(11)产生Henon映射初始值和
第3步:将代入式(6),迭代产生ll个映射坐标序列(滤除前nn个且nn≥200后迭代产生ll个映射坐标),将其作为
第4步:将代入式(7)作为(i,j,k)ll;
第5步:和依次代入式(6),迭代产生ll个映射坐标序列(同样滤除前nn个后产生ll个映射坐标),按式(8)量化为
第6步:将A=(Pi,j)m×n转换为Α=(bi,j,k)m×n×8;
第7步:将(i,j,k)ll序列中的每个元素作为(bi,j,k)m×n×8的3维坐标,依次提取在x,y,z方向的比特位串按式(3)和式(4)进行置换,得置换后的比特位串
第8步:对按式(5)和邻近的4邻域比特位串 进行混淆加密;
第9步,反复执行第7步~第8步,直至(i,j,k)ll序列中的所有元素都处理完毕。
以上加密方法可执行t(t≥1)轮,每轮都使用相同的SSHA-1和as,bs,al,bl,ad,bd,aM,bM。
5解密方法
解密方法是加密方法的逆过程,除提供用户密钥as,bs,al,bl,ad,bd,aM,bM,还需提供原始待加密图像的160位SHA-1值SSHA-1。
第1步:输入密钥as,bs,al,bl,ad,bd,aM,bM,及SSHA-1,和迭代元素序列长度ll(ll≥2000),以及加密图像A′;
第2步:根据SSHA-1,按式(10)计算G0,G1,G2,G3,按式(11)产生Henon映射初始值和
第3步:将代入式(6),迭代产生ll个映射坐标序列(滤除前nn个且nn≥200后迭代产生ll个映射坐标),将其作为
第4步:将代入式(7)作为(i,j,k)ll;
第5步:和依次代入式(6),迭代产生ll个映射坐标序列(同样滤除前nn个后产生ll个映射坐标),按式(8)量化为
第6步:将A′=(P′i,j)m×n转换为Α′=(b′i,j,k)m×n×8;
第7步:将(i,j,k)ll序列中的每个元素,从最后一个3维坐标起,提取z方向的比特位串对和邻近的4邻域比特位串 再次异或进行混淆解密;
第8步:将(i,j,k)ll序列中的每个元素作为(bi,j,k)m×n×8的3维坐标,依次提取在z,y,x方向的比特位串按式(4)的逆变换和式(3)进行逆置换;
第9步,反复执行第7步~第8步,直至(i,j,k)ll序列中的所有元素都处理完毕。
解密方法同样可执行t(t≥1)轮,每轮都使用相同的SSHA-1和as,bs,al,bl,ad,bd,aM,bM。
6密钥空间
在所提出的加密解密方法中,密钥由明文的SHA-1值及用户指定的密钥ad,bd,as,bs,al,bl和aM,bM以及迭代次数ll和加密轮数t构成。SHA-1密钥空间为2160,对于用户指定的密钥ad,bd,as,bs,al,bl和aM,bM,若对其生成空间最大量化为1015个子空间,则密钥空间为10120;ll按[2000,9999]范围内的整数估算,t按[1,50]范围内的整数估算,则总的密钥空间为2160×10120×8000×50≈5.846×10173,如此大的密钥空间当可抵抗蛮力破解。
下面通过具体实施例对本发明进行详细介绍。
改进约瑟夫遍历和广义Henon映射的图像比特位加密方法以JAVAjdk1.7.0_40作为实施环境,结合附图对发明实施事例进行详细说明,但不局限于本实施例,其中图1是加密流程图,图2是解密流程图。
第1步:选取as=1.985296486113934,bs=0.001879844723373,al=1.992929294375025,bl=0.001534863807291,ad=1.992072865205364,bd=0.001333118075436,aM=1.999942462062031,bM=0.001956656673155作为加密密钥,迭代元素序列长度取ll=5000,选取测试图片如图3所示,为256×256的8位标准灰度图像cameraman,其对应的SHA-1值为0x35fbedc1ec1dc27560f9a80f567fb5352e7d845c。
第2步:计算出SSHA-1=0x35fbedc1ec1dc27560f9a80f567fb5352e7d845c,按式(10)可计算出:G0=0x35fbedc1ec,G1=0x1dc27560f9,G2=0xa80f567fb5,G3=0x352e7d845c。将G0,G1,G2,G3按式(11)产生Henon映射初始值
其中:
第3步:将ad=1.992072865205364,bd=0.001333118075436, 代入式(6),迭代产生ll个映射坐标序列(滤除前nn个后迭代产生ll个),将其作为
第4步:将代入式(7)作为(i,j,k)ll,若序列的第i个元素为(1.7382343702023628,0.6564840374048794,0.5037446010392157),则按式(7)可映射为(250,207,7)。
第5步:将as=1.985296486113934,bs=0.001879844723373, 代入式(8)作为将al=1.992929294375025,bl=0.001534863807291, 代入式(8)作为将aM=1.999942462062031,bM=0.001956656673155, 代入式(8)作为若序列的第i个元素为(1.7382343702023628,0.6564840374048794,0.5037446010392157),则按式(8)可映射为(251,208,8)。
第6步:将待加密图像图3转换为比特位形式,若该图像上的像素Pi,j=197,则bi,j,0=1,bi,j,1=0,bi,j,2=1,bi,j,3=0,bi,j,4=0,bi,j,5=0,bi,j,6=1,bi,j,7=1。
第7步:将(i,j,k)ll序列中的每个元素作为(bi,j,k)m×n×8的3维坐标,依次提取在x,y,z方向的比特位串按式(3)和式(4),即按扩展约瑟夫遍映射进行置换,得置换后的比特位串若置换前的比特位串序列为<1,0,1,1,0,0,0,1>,按式(3)生成的排列<3,5,2,8,1,7,4,6>,则按式(4)置换后的结果为<0,1,1,0,0,1,0,1>。
第8步:对按式(5)和邻近的4邻域比特位串 进行混淆加密;若 则混淆加密后
第9步,反复执行第7步~第8步,直至(i,j,k)ll序列中的所有元素都处理完毕。
加密方法同样可执行t轮,每轮都使用相同的SSHA-1和as,bs,al,bl,ad,bd,aM,bM,图4和图5分别是经过1轮和9轮加密的结果。
解密方法是加密方法的逆过程,需提供解密密钥as=1.985296486113934,bs=0.001879844723373,al=1.992929294375025,bl=0.001534863807291,ad=1.992072865205364,bd=0.001333118075436,aM=1.999942462062031,bM=0.001956656673155,同时还要提供待加密图像图3对应的160位SHA-1值(SSHA-1=0x35fbedc1ec1dc27560f9a80f567fb5352e7d845c),图6和图7分别是经过1轮和9轮解密的结果。
为验证所提出的图像加密方法的加密性能,对直方图均衡性,水平、垂直和对角相关性,密钥敏感性和明文敏感性分别进行了验证。
图8、图9和图10分别是待加密图像,经过1轮加密和经过9轮加密图像对应的直方图。
从图8、图9和图10可看出,加密后的图像具有较好的直方图均衡性,在少数几轮加密下,使加密图像趋近于均匀分布。
图11、图12和图13分别是待加密图像,经过1轮加密和经过9轮加密图像水平、垂直和对角相关性。水平、垂直和对角相关性通过随机选取2000对水平、垂直和对角相邻像素对进行测试。
从图11、图12和图13可看出,加密图像的水平、垂直和对角相关性均较强,而对其进行不同轮数加密得到的密图水平、垂直和对角相关性均较弱,说明加密质量较好。
图14~图21是密钥微小改变后对1轮加密图像进行解密结果。在测试中,每次保持用户密钥as,bs,al,bl,ad,bd,aM,bM中的7个不变,仅对剩余的密钥进行微小修改,依次将密钥as由1.985296486113934转变为1.985296486113933,bs由0.001879844723373转变为0.001879844723372,al由1.992929294375025转变为1.992929294375026,bl由0.001534863807291转变为0.001534863807292,ad由1.992072865205364转变为1.992072865205363,bd由0.001333118075436转变为0.001333118075437,aM由1.999942462062031转变为1.999942462062032,bM由0.001956656673155转变为0.001956656673154。
从图14~图21的实验结果可看出,所提出的图像加密方法对密钥极度敏感,任何1个密钥发生微小变化,都无法对原始图像进行解密,且不会暴露任何信息。
图22~图27,是待加密图像发生微小变化后,1轮和9轮加密图像分别和原1轮和9轮加密图像的差异图,其中,图1被分别修改为:①图1坐标(35,45)由215改为216;②图1坐标(128,173)由229改为230和③图1坐标(112,57)由34改为35,执行的加密轮数分别是1轮和9轮。
从图22~图27可看出,所提出的图像加密方法对明文极度敏感,具有较好的加密性能,且能抵抗选择明文攻击。
Claims (2)
1.基于改进约瑟夫遍历和广义Henon映射的图像加密方法,其特征在于包括以下步骤:
第1步:由用户选定as,bs,al,bl,ad,bd,aM,bM且ad,as,al,aM∈(1.98,2),bd,bs,bl,bM∈(-0.005,0)∪(0,0.0084)作为用户密钥,选择待加密图像A=(Pi,j)m×n且Pi,j∈[0,255]和迭代元素序列长度ll≥2000,将Pi,j按式(1)视为比特位串序列:
Pi,j=<bi,j,0,bi,j,1,…,bi,j,7> (1)
式(1)中,bi,j,0为当前像素Pi,j的最低位,bi,j,7为当前像素的最高位;
第2步:记A的SHA-1值为SSHA-1,,将SSHA-1每4位2进制数看作1位16进制数,记其中每一位16进制数为SSHA-1[i],i∈{0,1,…,39},将其按式(10)分为4组,依次记为G0,G1,G2,G3,每组长度为10;
式(10)中,G0,G1,G2,G3分别按式(11)映射为 和
式(11)中,每组G0,G1,G2,G3的前8位16进制数用于产生中间8位16进制数用于产生后8位被用于产生fDecimal()为转小数函数,其功能为将8位16进制数直接转换为10进制纯小数;
第3步:将代入式(6)进行迭代,滤除前nn个迭代坐标后,nn≥200,迭代产生长度为ll的映射坐标序列,ll≥2000,依次记为并将其作为
式(6)中,当a∈(1.98,2)且b∈(-0.005,0)∪(0,0.0084)时,其不变分布变差较小,随机性较好;
第4步:将代入式(7)进行量化产生作为(i,j,k)ll;
式(7)中,“”为向下取整函数;
第5步:将和依次代入式(6)产生长度为ll的3维元素序列,在产生迭代元素序列前,同样滤除前nn个映射坐标以消除暂态效应,记迭代产生的坐标序列分别为:和将其分别代入式(8)分别进行量化,记量化后的坐标依次为和
将作为将作为将作为
第6步:将A=(Pi,j)m×n转换为Α=(bi,j,k)m×n×8;
第7步:对(i,j,k)所在的x,y,z方向的比特位串按式(4)依次进行置换,得置换后的比特位串若式(4)中的箭头方向逆置,则为逆变换;
第8步:记邻近的4邻域比特位串依次为对其进行混淆加密按式(5)进行逐位异或混淆产生新的
第9步,反复执行第7步~第8步,直至(i,j,k)ll序列中的所有元素都处理完毕;
以上加密方法执行t轮,t≥1,每轮都使用相同的SSHA-1和as,bs,al,bl,ad,bd,aM,bM。
2.与权利要求1基于改进约瑟夫遍历和广义Henon映射的图像加密方法对应的图像解密方法,其特征在于包括以下步骤:
第1步:输入密钥as,bs,al,bl,ad,bd,aM,bM,及SSHA-1,和迭代元素序列长度ll,ll≥2000,以及加密图像A′;
第2步:根据SSHA-1,按式(10)计算G0,G1,G2,G3,按式(11)产生Henon映射初始值和
第3步:将代入式(6),滤除前nn个后,nn≥200,迭代产生ll个映射坐标序列,将其作为
第4步:将代入式(7)作为(i,j,k)ll;
第5步:和依次代入式(6),滤除前nn个后迭代产生ll个映射坐标序列,按式(8)量化为
第6步:将A′=(P′i,j)m×n转换为Α′=(b′i,j,k)m×n×8;
第7步:将(i,j,k)ll序列中的每个元素,从最后一个3维坐标起,提取z方向的比特位串对和邻近的4邻域比特位串 再次异或进行混淆解密;
第8步:将(i,j,k)ll序列中的每个元素作为(bi,j,k)m×n×8的3维坐标,依次提取在z,y,x方向的比特位串按式(4)的逆变换和式(3)进行逆置换;
第9步,反复执行第7步~第8步,直至(i,j,k)ll序列中的所有元素都处理完毕;
解密方法同样可执行t轮,t≥1,每轮都使用相同的SSHA-1和as,bs,al,bl,ad,bd,aM,bM。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410145368.7A CN103929563B (zh) | 2014-04-11 | 基于改进约瑟夫遍历和广义Henon映射的图像加密与解密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410145368.7A CN103929563B (zh) | 2014-04-11 | 基于改进约瑟夫遍历和广义Henon映射的图像加密与解密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103929563A true CN103929563A (zh) | 2014-07-16 |
CN103929563B CN103929563B (zh) | 2016-11-30 |
Family
ID=
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105577354A (zh) * | 2015-12-10 | 2016-05-11 | 陕西师范大学 | 基于概率区间划分和动态概率事件的图像加密和解密方法 |
CN105761198A (zh) * | 2016-02-24 | 2016-07-13 | 陕西师范大学 | 一种动态概率和空频域复合的图像选择性加密和解密方法 |
CN106844411A (zh) * | 2016-10-19 | 2017-06-13 | 中科聚信信息技术(北京)有限公司 | 一种基于约瑟夫环的大数据随机存取系统和方法 |
CN110086600A (zh) * | 2019-04-28 | 2019-08-02 | 郑州轻工业学院 | 一种基于超混沌系统和变步长约瑟夫问题的图像加密方法 |
CN110086601A (zh) * | 2019-04-28 | 2019-08-02 | 郑州轻工业学院 | 基于像素值关联的约瑟夫遍历和超混沌系统图像加密方法 |
CN111010273A (zh) * | 2019-12-23 | 2020-04-14 | 山东师范大学 | 基于位置解密的属性基加解密方法及加解密系统 |
CN111105339A (zh) * | 2019-12-23 | 2020-05-05 | 郑州轻工业大学 | 一种基于多维混沌系统和约瑟夫置乱的图像加密方法 |
CN112202545A (zh) * | 2020-10-26 | 2021-01-08 | 郑州轻工业大学 | 基于y型填充曲线和变步长约瑟夫遍历的图像加密方法 |
CN112714235A (zh) * | 2020-12-22 | 2021-04-27 | 郑州轻工业大学 | 一种基于填充曲线和相邻像素比特置乱的图像加密方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100316222A1 (en) * | 2008-03-03 | 2010-12-16 | Pfu Limited | Image processing system |
CN103442157A (zh) * | 2013-09-04 | 2013-12-11 | 上海理工大学 | 基于Arnold变换和Henon混沌系统的图像加密方法 |
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100316222A1 (en) * | 2008-03-03 | 2010-12-16 | Pfu Limited | Image processing system |
CN103442157A (zh) * | 2013-09-04 | 2013-12-11 | 上海理工大学 | 基于Arnold变换和Henon混沌系统的图像加密方法 |
Non-Patent Citations (4)
Title |
---|
JIANSHENG GUO: "Improved Cryptanalysis of CMC Chaotic Image Encryption Scheme", 《I.J. IMAGE, GRAPHICS AND SIGNAL PROCESSING》 * |
刘晓克, 孙燮华, 万里红: "Henon映射的图像加密新算法", 《中国计量学院学报》 * |
向德生,熊岳山: "基于约瑟夫遍历的数字图像置乱算法", 《计算机工程与应用》 * |
张瀚等: "一种基于混沌系统及Henon映射的快速图像加密算法", 《计算机研究与发展》 * |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105577354A (zh) * | 2015-12-10 | 2016-05-11 | 陕西师范大学 | 基于概率区间划分和动态概率事件的图像加密和解密方法 |
CN105577354B (zh) * | 2015-12-10 | 2019-01-22 | 陕西师范大学 | 基于概率区间划分和动态概率事件的图像加密和解密方法 |
CN105761198B (zh) * | 2016-02-24 | 2019-03-05 | 陕西师范大学 | 一种动态概率和空频域复合的图像选择性加密和解密方法 |
CN105761198A (zh) * | 2016-02-24 | 2016-07-13 | 陕西师范大学 | 一种动态概率和空频域复合的图像选择性加密和解密方法 |
CN106844411B (zh) * | 2016-10-19 | 2020-03-17 | 中科聚信信息技术(北京)有限公司 | 一种基于约瑟夫环的大数据随机存取系统和方法 |
CN106844411A (zh) * | 2016-10-19 | 2017-06-13 | 中科聚信信息技术(北京)有限公司 | 一种基于约瑟夫环的大数据随机存取系统和方法 |
CN110086600A (zh) * | 2019-04-28 | 2019-08-02 | 郑州轻工业学院 | 一种基于超混沌系统和变步长约瑟夫问题的图像加密方法 |
CN110086601A (zh) * | 2019-04-28 | 2019-08-02 | 郑州轻工业学院 | 基于像素值关联的约瑟夫遍历和超混沌系统图像加密方法 |
CN110086601B (zh) * | 2019-04-28 | 2020-03-10 | 郑州轻工业学院 | 基于像素值关联的约瑟夫遍历和超混沌系统图像加密方法 |
CN110086600B (zh) * | 2019-04-28 | 2020-11-06 | 郑州轻工业学院 | 一种基于超混沌系统和变步长约瑟夫问题的图像加密方法 |
CN111010273A (zh) * | 2019-12-23 | 2020-04-14 | 山东师范大学 | 基于位置解密的属性基加解密方法及加解密系统 |
CN111105339A (zh) * | 2019-12-23 | 2020-05-05 | 郑州轻工业大学 | 一种基于多维混沌系统和约瑟夫置乱的图像加密方法 |
CN111010273B (zh) * | 2019-12-23 | 2022-04-15 | 山东师范大学 | 基于位置解密的属性基加解密方法及加解密系统 |
CN112202545A (zh) * | 2020-10-26 | 2021-01-08 | 郑州轻工业大学 | 基于y型填充曲线和变步长约瑟夫遍历的图像加密方法 |
CN112202545B (zh) * | 2020-10-26 | 2021-07-23 | 郑州轻工业大学 | 基于y型填充曲线和变步长约瑟夫遍历的图像加密方法 |
CN112714235A (zh) * | 2020-12-22 | 2021-04-27 | 郑州轻工业大学 | 一种基于填充曲线和相邻像素比特置乱的图像加密方法 |
CN112714235B (zh) * | 2020-12-22 | 2021-10-26 | 郑州轻工业大学 | 一种基于填充曲线和相邻像素比特置乱的图像加密方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhu et al. | Cryptanalyzing and improving a novel color image encryption algorithm using RT-enhanced chaotic tent maps | |
CN105847629B (zh) | 一种加密图像的可逆信息隐藏方法 | |
CN101739695B (zh) | 一种基于三维Arnold映射的图像分组加密方法 | |
CN107657579B (zh) | 基于dna编码和混沌的图像加密方法 | |
Samiullah et al. | An image encryption scheme based on DNA computing and multiple chaotic systems | |
CN102982499B (zh) | 基于多分数阶混沌系统的彩色图像加密和解密方法 | |
Panduranga et al. | Image encryption based on permutation-substitution using chaotic map and Latin Square Image Cipher | |
CN106327414A (zh) | 一种基于明文自身特性的双混沌图像加密方法 | |
CN107659752B (zh) | 基于dna编码和混沌的多图像加密方法 | |
CN107659751B (zh) | 基于dna编码和混沌的多图像加密方法 | |
CN104751403A (zh) | 一种基于多混沌系统的明文相关图像加密方法 | |
CN107220923B (zh) | 基于映像网络的数字图像反馈加密方法 | |
CN105577354A (zh) | 基于概率区间划分和动态概率事件的图像加密和解密方法 | |
Abusukhon et al. | A novel network security algorithm based on private key encryption | |
CN107392970B (zh) | 一种基于位平面和高维混沌系统的数字图像加密方法 | |
CN107135062A (zh) | 一种改进的大文件的加密方法 | |
CN107437266A (zh) | 基于混沌系统与dna链置换模型的图像加密方法 | |
CN105184115A (zh) | 用于将隐式完整性或可信性检查包括到白箱实现中的方法 | |
CN105095695A (zh) | 经由白箱实现的不正确功能行为实现授权 | |
Liu et al. | A chaotic image encryption scheme based on Hénon–Chebyshev modulation map and genetic operations | |
CN105373739A (zh) | 一种基于超混沌系统的量子图像加密方法 | |
Wang et al. | Image encryption algorithm based on bit-level permutation and dynamic overlap diffusion | |
CN108174053B (zh) | 一种有向面积和扑克牌映射的解密区域限定图像加密方法 | |
Kumar et al. | Image encryption using simplified data encryption standard (S-DES) | |
Li et al. | A novel image encryption algorithm based on high-dimensional compound chaotic systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230802 Address after: No. 88 Jiulong Avenue, Jiulongkou Town, Jianhu County, Yancheng City, Jiangsu Province, 224700 Patentee after: Jiangsu Hanyang Jinggong Technology Co.,Ltd. Address before: 710062 No. 199 South Changan Road, Shaanxi, Xi'an Patentee before: Shaanxi Normal University |