CN106407824A - 一种图像加密方法及装置 - Google Patents

一种图像加密方法及装置 Download PDF

Info

Publication number
CN106407824A
CN106407824A CN201610856467.5A CN201610856467A CN106407824A CN 106407824 A CN106407824 A CN 106407824A CN 201610856467 A CN201610856467 A CN 201610856467A CN 106407824 A CN106407824 A CN 106407824A
Authority
CN
China
Prior art keywords
key stream
mapping
image
sequence
keystream
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
Application number
CN201610856467.5A
Other languages
English (en)
Other versions
CN106407824B (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.)
Chongqing University of Education
Original Assignee
Chongqing University of Education
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 Chongqing University of Education filed Critical Chongqing University of Education
Priority to CN201610856467.5A priority Critical patent/CN106407824B/zh
Priority to CN201710530241.0A priority patent/CN107292184B/zh
Publication of CN106407824A publication Critical patent/CN106407824A/zh
Application granted granted Critical
Publication of CN106407824B publication Critical patent/CN106407824B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明涉及一种图像加密方法、图像加密装置、密钥流生成方法和密钥流生成器,其中图像加密方法包括以下步骤:基于初始值构造耦合映像格子序列,通过对称矩阵变换将耦合映像格子序列处理成第一密钥流,通过密码置换盒对第一密钥流进行置换得到第二密钥流;使用第一密钥流对原始图像进行置乱;使用第二密钥流对置乱后的图像进行分块编码,得到加密的图像数据。本发明将置乱操作和分块编码的加密方法相结合,在提高了加密安全性的同时很好地降低了加密操作的计算复杂度,并且在置乱和分块编码中用到的是不同的密钥流,相对于使用单一的密钥流而言,加密的安全性更高。

Description

一种图像加密方法及装置
技术领域
本发明涉及图像加密技术领域,尤其涉及一种图像加密方法、图像加密装置、密钥流生成方法和密钥流生成器。
背景技术
随着信息技术和互联网的不断发展,信息安全成了信息传输过程中应该考虑的首要问题。图像作为信息传输的主要载体,使得图像加密技术也成了信息安全领域研究的热点之一。
近年来,人们相继提出了诸多图像加密的方法。目前使用最广泛的一种图像加密方法是基于像素扰乱的图像加密方法,即对图像的行和列进行置乱。然而图像加密过程中一般会考虑两点:第一,计算开销是否在可接受的范围之内;第二,随机性是否满足要求。现有的图像加密算法在上述两个方面还有待提高。因此仍有必要开发一种在保障随机性的同时降低计算开销的图像加密方法。
发明内容
本发明要解决的技术问题是,针对现有图像加密方法的随机性和计算开销有待优化的缺陷,提供一种将图像置乱与分块编码相结合的图像加密方法和图像加密装置,以及相应的密钥流生成方法和密钥流生成器。
本发明第一方面,提供了一种图像加密方法,包括以下步骤:
(1)基于初始值构造耦合映像格子序列,通过对称矩阵变换将耦合映像格子序列处理成第一密钥流,通过密码置换盒对第一密钥流进行置换得到第二密钥流;其中,建立基于二维动态映射的耦合映像格子模型,并采用所述耦合映像格子模型基于初始值x0,y0构造耦合映像格子序列(x,y),其中x0,y0∈(0,1];该耦合映像格子模型为:
其中,ε是耦合映像格子的耦合强度,f1是下帐篷映射函数,f2是逻辑映射函数;
(2)使用第一密钥流对原始图像进行置乱;
(3)使用第二密钥流对置乱后的图像进行分块编码,得到加密的图像数据;其中,将置乱后的图像分列得到第i列的像素值为Pi(j),i=1,2......,N;j=1,2......,M;N和M分别为每行像素和每列像素;将第一列像素值与所述第二密钥流异或运算后作为第一列密文序列;将第i列像素值与所述第二密钥流异或运算后,再与前一列密文序列进行异或运算,得到第i列密文序列,其中i=2,3......,N。
在根据本发明所述的图像加密方法中,所述通过对称矩阵变换将耦合映像格子序列处理成第一密钥流的步骤包括:
利用对称矩阵变换将耦合映像格子序列(x,y)的初始区间(0,1)变换到指定区间,输出(x',y');
取(x',y')的下限值作为第一密钥流。
在根据本发明所述的图像加密方法中,所述通过密码置换盒对第一密钥流进行置换得到第二密钥流的步骤为:
通过以下公式计算第二密钥流:
其中SBox(ci,di)为在二维表SBox中查找到的下标(ci,di)对应的数值;(ci,di)为第一密钥流的参数值;x1_b,y1_b分别为初始值x0,y0的前8位;i=2,3......,N时,xi_b,yi_b分别为前一输出的密钥值分别进行比特位的左移运算和右移运算后得到。
在根据本发明所述的图像加密方法中,所述比特位的左移运算和右移运算中移动的比特数为2~4个比特。
本发明第二方面,提供了一种图像加密装置,包括:
密钥流生成器,用于生成第一密钥流和第二密钥流;
图像置乱单元,用于使用第一密钥流对原始图像进行置乱;
分块编码单元,用于使用第二密钥流对置乱后的图像进行分块编码,得到加密的图像数据;其中,将置乱后的图像分列得到第i列的像素值为Pi(j),其中i=1,2......,N;j=1,2......,M;N和M分别为每行像素和每列像素;将第一列像素值与所述第二密钥流异或运算后作为第一列密文序列;将第i列像素值与所述第二密钥流异或运算后,再与前一列密文序列进行异或运算,得到第i列密文序列,其中i=2,3......,N;
其中,所述密钥流生成器包括:
序列生成单元,用于基于初始值构造耦合映像格子序列;该序列生成单元建立基于二维动态映射的耦合映像格子模型,并采用所述耦合映像格子模型基于初始值x0,y0构造耦合映像格子序列(x,y),其中x0,y0∈(0,1];所述耦合映像格子模型为:
其中,ε是耦合映像格子的耦合强度,f1是下帐篷映射函数,f2是逻辑映射函数;
矩阵变换单元,用于通过对称矩阵变换将耦合映像格子序列处理成第一密钥流;
密码置换单元,用于通过密码置换盒对第一密钥流进行置换得到第二密钥流。
在根据本发明所述的图像加密装置中,所述矩阵变换单元通过对称矩阵变换将耦合映像格子序列处理成第一密钥流的步骤包括:
利用对称矩阵变换将耦合映像格子序列(x,y)的初始区间(0,1)变换到指定区间,输出(x',y');
取(x',y')的下限值作为第一密钥流。
在根据本发明所述的图像加密装置中,所述密码置换单元通过密码置换盒对第一密钥流进行置换得到第二密钥流的步骤为:
通过以下公式计算第二密钥流:
其中SBox(ci,di)为在二维表SBox中查找到的下标(ci,di)对应的数值;(ci,di)为第一密钥流的参数值;x1_b,y1_b分别为初始值x0,y0的前8位;i=2,3......,N时,xi_b,yi_b分别为前一输出的密钥值分别进行比特位的左移运算和右移运算后得到。
本发明第三方面,提供了一种密钥流生成方法,包括以下步骤:
a、基于初始值构造耦合映像格子序列;该步骤中建立基于二维动态映射的耦合映像格子模型,并采用所述耦合映像格子模型基于初始值x0,y0构造耦合映像格子序列(x,y),其中x0,y0∈(0,1];该耦合映像格子模型为:
其中,ε是耦合映像格子的耦合强度,f1是下帐篷映射函数,f2是逻辑映射函数;
b、通过对称矩阵变换将耦合映像格子序列处理成第一密钥流;该步骤中利用对称矩阵变换将耦合映像格子序列(x,y)的初始区间(0,1)变换到指定区间,输出(x',y');并取(x',y')的下限值作为第一密钥流;
c、通过密码置换盒对第一密钥流进行置换得到第二密钥流;该步骤中通过以下公式计算第二密钥流:
其中SBox(ci,di)为在二维表SBox中查找到的下标(ci,di)对应的数值;(ci,di)为第一密钥流的参数值;x1_b,y1_b分别为初始值x0,y0的前8位;i=2,3......,N时,xi_b,yi_b分别为前一输出的密钥值分别进行比特位的左移运算和右移运算后得到。
本发明第四方面,提供了一种密钥流生成器,包括:
序列生成单元,用于基于初始值构造耦合映像格子序列;所述序列生成单元建立基于二维动态映射的耦合映像格子模型,并采用所述耦合映像格子模型基于初始值x0,y0构造耦合映像格子序列(x,y),其中x0,y0∈(0,1];该耦合映像格子模型为:
其中,ε是耦合映像格子的耦合强度,f1是下帐篷映射函数,f2是逻辑映射函数;
矩阵变换单元,用于通过对称矩阵变换将耦合映像格子序列处理成第一密钥流;所述矩阵变换单元利用对称矩阵变换将耦合映像格子序列(x,y)的初始区间(0,1)变换到指定区间,输出(x',y');并取(x',y')的下限值作为第一密钥流;
密码置换单元,用于通过密码置换盒对第一密钥流进行置换得到第二密钥流;所述密码置换单元通过以下公式计算第二密钥流:
其中SBox(ci,di)为在二维表SBox中查找到的下标(ci,di)对应的数值;(ci,di)为第一密钥流的参数值;x1_b,y1_b分别为初始值x0,y0的前8位;i=2,3......,N时,xi_b,yi_b分别为前一输出的密钥值分别进行比特位的左移运算和右移运算后得到。
本发明的上述技术方案具有如下优点:本发明将置乱操作和分块编码的加密方法相结合,在提高了加密安全性的同时很好地降低了加密操作的计算复杂度,并且在置乱和分块编码中用到的是不同的密钥流,相对于使用单一的密钥流而言,加密的安全性更高。
附图说明
图1为根据本发明优选实施例的图像加密方法的流程图;
图2为根据本发明优选实施例的图像加密方法的原理框图;
图3为根据本发明优选实施例的图像加密方法中分块编码步骤的逻辑运算图;
图4为根据本发明优选实施例的密钥流生成方法流程图;
图5为根据本发明优选实施例的密钥流生成方法的逻辑运算图;
图6为根据本发明优选实施例的图像加密装置的模块示意图;
图7为根据本发明优选实施例的密钥流生成器的模块示意图;
图8为根据本发明优选实施例的图像解密方法流程图;
图9为根据本发明优选实施例的图像解密装置的模块示意图;
图10a至图10d为根据本发明的原始图像和加密后图像及相应的直方图;
图11a至图11f为根据本发明的原始图像和加密后图像的相关性分析图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,为根据本发明优选实施例的图像加密方法的流程图。如图1所示,该实施例的图像加密方法包括以下步骤:
首先,在步骤S101中执行密钥流生成步骤,即生成第一密钥流Key1和第二密钥流Key2。本发明中第一密钥流和第二密钥流为不同的密钥流。该步骤具体包括:基于初始值构造耦合映像格子序列,通过对称矩阵变换将耦合映像格子序列处理成第一密钥流,通过密码置换盒对第一密钥流进行置换得到第二密钥流。
随后,在步骤S102中执行图像置乱步骤,即使用第一密钥流Key1对原始图像进行置乱。该第一密钥流Key1作为置乱操作中循环移位的密钥。具体地,该置乱步骤可以基于第一密钥流的一维数组,经过扩值取整(E-R)后,分别得到行移位数组和列移位数组,用于对原始图像的灰度值矩阵进行行移位和列移位。该图像置乱过程是可逆的,使得后续解密过程中可以还原出原始图像。
最后,在步骤S103中执行分块编码步骤,即使用第二密钥流Key2对置乱后的图像进行分块编码,得到加密的图像数据。设原始图像的像素大小为M×N,其中N和M分别为每行像素和每列像素。前述置乱后的图像大小仍然为M×N。在该步骤S103中将置乱后的图像进行分块处理,对图像像素以行、列或者其它形式进行分块,再使用第二密钥流Key2对每块图像灰度值进行编码。例如,对置乱后的图像像素进行列处理,即每一列与等长度的密钥流进行异或,同时为了保证随机性,从第二列开始每一列密文都与前一列的密文异或。
请参阅图2,为根据本发明优选实施例的图像加密方法的原理框图图。如图2所示,在该图像加密方法中,首先执行前述密钥流生成步骤S101,由密钥流生成器601生成第一密钥流Key1和第二密钥流Key2。
随后,执行前述图像置乱步骤S102,包括:将输入的原始图像202经过矩阵映射203得到原始图像的灰度值矩阵,以及利用第一密钥流Key1对原始图像的灰度值矩阵进行行移位和列移位204,得到置乱后的图像205。
具体地,假设原始图像的像素大小为M×N;由密钥流发生器生成的第一密钥流Key1可表示为(ci,di),i∈max{M,N},作为循环移位的密钥。对于ci,取i=M,c1,c2......,cM组成一个一维数组(c1,c2......,cM),然后对这个一维数组的数值进行E-R处理,即扩值取整,得到行移位数组,记为Rshift=floor[N(c1,c2......,cM)],用Rshift对原始图像的灰度值矩阵的行进行移位,即数组Rshift第一个参数控制图像第一行右移的位数,第二个参数控制图像第二行右移的位数,依次类推。在本发明的另一些实施例中,前述右移操作也可以替换成左移操作。同理,对于di,取i=N,d1,d2......,dN组成一个一维数组(d1,d2......,dN),对其数值进行E-R处理,得到列移位数组,记为Cshift=floor[M(d1,d2......,dN)],用Cshift对原始图像的灰度值矩阵的每一列进行向下移位。在本发明的另一些实施例中,前述向下移位操作也可以替换成向上移位操作。
最后,执行前述分块编码步骤S103,即使用第二密钥流Key2对置乱后的图像205进行分块编码,得到加密的图像数据206。请结合参阅图3,为根据本发明优选实施例的图像加密方法中分块编码的逻辑运算图。如图3所示,分块编码步骤具体包括:
1、将置乱后的图像205分列得到第i列的像素值为Pi(j),其中i=1,2......,N;j=1,2......,M;N和M分别为原始图像的每行像素和每列像素。
2、将第一列像素值与第二密钥流异或运算后作为第一列扩散后的像素值,即第一列密文序列。设第二密钥流Key2可以表示为i=1,2......,N。最后得到的加密的图像数据206可以表示为密文序列Ci(j),i=1,2......,N,j=1,2......,M。则第一列密文序列
3、从第二列开始,将第i列像素值与第二密钥流异或运算后,再与前一列密文序列进行异或运算,得到第i列扩散后的像素值,即第i列密文序列,其中i=2,3......,N。
也就是说,该步骤中可以通过以下公式(1)计算第i列密文序列:
虽然上述实施例中以分列的形式对图像进行分块编码,但是本发明不仅限于此,还采用分行或者其它分块方式进行编码。
本发明将置乱操作和分块编码的加密方法相结合,在提高了加密过程安全性的同时很好地降低了加密操作的计算复杂度。并且,本发明中在置乱和分块编码中用到的是不同的密钥流,相对于使用单一的密钥流而言,加密的安全性更高。
在本发明的优选实施例中,提供了一种新的密钥流生成方法,利用耦合映像格子(CML)和密码置换盒(SBox)生成密钥。请参阅图4,为根据本发明优选实施例的密钥流生成方法流程图。如图4所示,前述密钥流生成步骤S101进一步包括以下步骤:
首先,在步骤S401中,执行序列生成步骤,基于初始值构造耦合映像格子序列。请结合参阅图5,为根据本发明优选实施例的密钥流生成方法的逻辑运算图。如图5所示,该基于初始值构造耦合映像格子序列的步骤包括:
1、建立基于二维动态映射的耦合映像格子模型:
其中,ε是耦合映像格子的耦合强度,f1是下帐篷映射函数,f2是逻辑映射函数;i∈max{M,N}N和M分别为原始图像的每行像素和每列像素。
下帐篷映射函数f1如下式:
其中,x是系统初始状态,x∈(0,1];p是系统的控制参数,p∈(0,1)。
逻辑映射函数f2如下式:
f2(x)=ax(1-x),a∈(0,4] (4)
其中,a是控制参数,当a的取值接近4时,其结果可忽略周期性,达到混沌,因此优选a=3.99973。
2、采用前述耦合映像格子模型基于初始值x0,y0构造耦合映像格子序列(x,y),其中x0,y0∈(0,1],对应图5中CML运算501。
随后,在步骤S402中,执行矩阵变换步骤,即通过对称矩阵变换将耦合映像格子序列处理成第一密钥流Key1。该矩阵变换步骤见图5中SMT运算502,具体包括:
1、利用对称矩阵变换将耦合映像格子序列(x,y)的初始区间(0,1)变换到指定区间,输出(x',y')。在本发明的优选实施例中,x',y'∈(0,15],具体变换如下:
其中K为变换参数。
令对称矩阵则K=5,
上述对称矩阵A只是为了转换(x,y)的取值范围,该对称矩阵A也可以采用其它的矩阵实现,例如:由于变换后的取值区间确定,故不同的对称矩阵只对应唯一一个变换参数数值。
2、取(x',y')的下限值作为SMT的输出,即第一密钥流Key1,可以表示为(ci,di)。ci=floor(xi'),di=floor(yi'),i∈max{M,N}。
最后,在步骤S403中,执行密码置换步骤,即通过密码置换盒对第一密钥流Key1进行置换得到第二密钥流Key2。
该步骤中可以通过以下公式计算第二密钥流Key1:
其中SBox(ci,di)为在二维表SBox中查找到的下标(ci,di)对应的数值;(ci,di)为第一密钥流Key1的参数值;x1_b,y1_b分别为初始值x0,y0的前8位;i=2,3......,N时,xi_b,yi_b分别为前一输出的密钥值分别进行比特位的左移运算和右移运算后得到。
如图5中,该密码置换步骤具体包括:
1、通过SBox运算503将(ci,di)置换为SBox(ci,di);
SBox优选为16×16的二维表,对应有16×16个(0,255)的十进制数,通过下标ci,di可以找到SBox中对应的数,将其作为SBox的输出。
2、对初始值的x0,y0分别执行运算504和运算505,即提取前8位,得到x1_b,y1_b,再经过异或运算506得到:
3、当i=2,3......,N时,对前一输出的密钥值分别进行比特位的左移运算507和右移运算508后得到xi_b,yi_b。在该实施例中将左移3比特得到x2_b,将右移3比特得到y2_b,以此类推。在本发明另一些实施例中,也可以对右移3比特得到xi+1_b,对左移3比特得到yi+1_b。并且,左移和右移的位数也可以采用其它数值,例如移动2个比特或者4个比特。上述移位后的数值再经过异或运算506得到:
通过上述步骤便可以得到作为第二密钥流Key2。
本发明的密钥流生成方法可以生成不同级别的密钥流,其中第一密钥流相对简单,第二密钥流的安全级别更高,如果本发明的图像加密方法中在置乱操作和分块编码中均采用第一密钥流进行加密的话,则加密太简单,安全性不高;如果均采用第二密钥流进行加密的话,则运算开销太大。因此本发明将第一密钥流和第二密钥流结合使用,既保证了二次密钥对加密后安全性的要求,又很好的节省了密钥的计算开销,直接提升了图像的加密效率。
请参阅图6,为根据本发明优选实施例的图像加密装置的模块示意图。该图像加密装置600包括:
密钥流生成器601,用于生成第一密钥流Key1和第二密钥流Key2。该密钥流生成器601的功能和实现过程与前述图像加密方法中密钥流生成步骤S101一致。
图像置乱单元602与密钥流生成器601连接,用于使用第一密钥流Key1对原始图像进行置乱。该图像置乱单元602的功能和实现过程与前述图像加密方法中图像置乱步骤S102一致。具体地,图像置乱单元602可以基于第一密钥流的一维数组,经过扩值取整(E-R)后,得到分别行移位数组和列移位数组,用于对原始图像的灰度值矩阵进行行移位和列移位。该图像置乱过程是可逆的,使得后续解密过程中可以还原出原始图像。
分块编码单元603与图像置乱单元602和密钥流生成器601连接,用于使用第二密钥流Key2对置乱后的图像进行分块编码,得到加密的图像数据。该分块编码单元603的功能和实现过程与前述图像加密方法中分块编码步骤S103一致。该分块编码单元603将置乱后的图像分列得到第i列的像素值为Pi(j),其中i=1,2......,N;j=1,2......,M;N和M分别为每行像素和每列像素;将第一列像素值与所述第二密钥流异或运算后作为第一列密文序列;将第i列像素值与所述第二密钥流异或运算后,再与前一列密文序列进行异或运算,得到第i列密文序列,其中i=2,3......,N。
请参阅图7,为根据本发明优选实施例的密钥流生成器的模块示意图。如图7所示,该密钥流生成器601包括:
序列生成单元701,用于基于初始值构造耦合映像格子序列。该序列生成单元701的功能和实现过程与前述密钥流生成方法中序列生成步骤S201一致。该序列生成单元701首先建立基于二维动态映射的耦合映像格子模型,即公式(1)。该序列生成单元701随后采用所述耦合映像格子模型基于初始值x0,y0构造耦合映像格子序列(x,y),其中x0,y0∈(0,1]。
矩阵变换单元702与序列生成单元701连接,用于通过对称矩阵变换将耦合映像格子序列处理成第一密钥流Key1。该矩阵变换单元702的功能和实现过程与前述密钥流生成方法中矩阵变换步骤S202一致。该序列生成单元701利用对称矩阵变换将耦合映像格子序列(x,y)的初始区间(0,1)变换到指定区间,输出(x',y'),并取(x',y')的下限值作为第一密钥流Key1。
密码置换单元703,与矩阵变换单元702和序列生成单元701连接,用于通过密码置换盒对第一密钥流Key1进行置换得到第二密钥流Key2。该密码置换单元703的功能和实现过程与前述密钥流生成方法中密码置换步骤S203一致。该密码置换单元703通过公式(6)计算第二密钥流。
请参阅图8,为根据本发明优选实施例的图像解密方法流程图。如图8所示,该图像解密方法包括以下步骤:
步骤S801、从图像加密数据中提取第一密钥流Key1和第二密钥流Key2。
步骤S802、从图像加密数据中提取密文序列,根据图像分块从最后一块开始,将密文序列与前一块异或,并与第二密钥流Key2异或得到图像矩阵。该步骤S802为分块编码步骤S103的逆过程。以分列形式进行分块为例,提取密文序列,对每一列密文序列进行编号,从第N列开始每一列与前一列异或,然后分别与第二密钥流中的每一列异或,异或的结果组成一个M×N的矩阵。
步骤S803、使用前述基于第一密钥流Key1的行移位数组Rshift和列移位数组Cshift,对图像矩阵的行和列进行移位后得到原始图像。该步骤S803为图像置乱步骤S102的逆过程。例如,先使用列移位数组Cshift对图像矩阵的列进行向上移位,再使用行移位数组Rshift对图像矩阵的列进行向右移位,从而得到原始图像。
请参阅图9,为根据本发明优选实施例的图像解密装置的模块示意图。如图9所示,该图像解密装置900包括:
密钥提取单元901,用于从图像加密数据中提取第一密钥流Key1和第二密钥流Key2。
第一解密单元902,与密钥提取单元901连接,用于从图像加密数据中提取密文序列,根据图像分块从最后一块开始,将密文序列与前一块异或,并与第二密钥流Key2异或得到图像矩阵。
第二解密单元903,用于使用前述基于第一密钥流Key1的行移位数组Rshift和列移位数组Cshift,对图像矩阵的行和列进行移位后得到原始图像。
本发明通过以下实验对本发明的图像加密方法的可行性进行了研究。输入图像为256×256的Lena灰度图像作为原始图像,密钥流生成步骤的初始值选取x0=0.27,y0=0.8370,a=3.99973。
1、密钥空间分析
一种加密算法密钥空间的大小代表该加密方法可用于加密的不同密钥的总个数。本发明的图像加密方法中有四个初始值,x0,y0,p∈(0,1),a∈(3.57,4)。根据IEEE 754标准,64位双精度数的精确度为10-15,则该加密方法的密钥空间可以大至2197。因此,该密钥空间可以很好地抵抗暴力攻击。
2、信源熵
信源熵是用来描述信源符号随机出现程度的指标。信源熵可定义为
其中P(mi)为信源符号mi出现的概率。对于一副理想的随机图像,其信源熵理论上可以达到8。本发明采用的原始图像和加密后图像的信息熵如表格1所示:
表格1
图像 原始图像 加密后图像
Lena(莉娜图像) 7.4532 7.9843
Rice(大米图像) 5.7596 7.9895
Barbara(芭芭拉图像) 7.5838 7.9890
3、直方图分析
直方图是反映一幅图像在同一灰度级的像素的分布情况。一个好的加密系统,其加密图的直方图应该呈统一分布,以抵抗外界的数学统计攻击。图10a为原始图像莉娜图像(Lena),图10b为加密后图像,图10c为原始图像的直方图,图10d为加密后图像的直方图。直方图显示,加密前的图像的直方图呈不规则变化,而加密后的图像的直方图基本呈统一分布,这说明密文不能为非法用户提供有效信息,从而可以有效地抵抗外界的统计攻击。
4、像素相关性分析
对于一幅普通的图像来说,其相邻像素,包括水平、垂直、对角线方向,理论上是高度相关的。加密后图像相邻像素的相关性是衡量一个加密系统的一个重要指标,相邻像素相关性越低,其加密效果更好。本发明选取了5000对相邻像素点测试其相邻像素的相关性,原始图像和加密后图像的相关性如图11a-11f所示。其中图11a和图11b分别为原始图像和加密后图像的水平方向像素相关性,图11c和图11d分别为原始图像和加密后图像的垂直方向像素相关性,图11e和图11f分别为原始图像和加密后图像的对角方向像素相关性。
像素相关性rxy的计算公式如下:
cov(x,y)=E[(x-E(x))(y-E(y))] (9)
其中,x、y为图像相邻像素的灰度值。原始图像和加密后图像的相关系数如表格2所示:
表格2
方向 原图 加密图
水平 0.9642 -0.02023
垂直 0.9309 0.00933
对角线 0.9061 -0.00586
5、差分攻击分析
差分攻击是一种选择明文类攻击,为了抵抗这类攻击,则要求输入图像中少数像素点变化会导致密文大量像素的改变。像素个数改变率(NPCR)和统一平均变化强度(UACI)经常用来作为该类特性的分析指标,NPCR值越接近100,UACI值越接近34,其加密效果越好。NPCR和UACI的定义如下:
其中,C1、C2分别为两幅只有一个像素差别的密文图像,C1(r,c)、C2(r,c)分别为C1、C2在点(r,c)处的像素值,size(D)为对应图像的大小。该加密方法的NPCR和UACI的仿真结果如表格3所示。其中,表格3中现有方法1为扩散策略(diffusion strategy),现有方法2为二维耦合映像格子(2D CML)。可以看出,本发明经过一轮加密就基本可以达到较为理想的效果,两轮迭代之后可以保证NPCR>0.996和UACI>33.4,而要得到同样的效果,其他两种加密方法至少要迭代两次以上才能实现。
表格3
方法 第一轮 第二轮
NPCR UACI NPCR UACI
本发明方法 99.3982 32.4453 99.6264 33.4086
现有方法1 99.3046 32.2430 99.6135 33.3104
现有方法2 46.6524 17.1732 99.4036 33.4023
综上所述,本发明基于传统图像加密方法的安全性及复杂度的问题,设计了一种新的基于二次密钥加密的快速图像加密方法。该方法两次用到密钥流,在像素置乱过程取第一密钥流,像素扩散过程取第二密钥流,在提高了算法安全性的同时很好地降低了算法的计算复杂度。仿真结果表明,该方法还拥有很大的密钥空间,具备较好的抵抗穷举攻击的能力;加密后图像的信源熵接近理想值,说明加密图像的灰度分布比较均匀;加密直方图基本呈统一分布,相邻像素相关性可以达到预期的要求,可以有效地抵抗统计攻击;NPCR值和UACI值接近理想值,可以很好的抵抗差分攻击。为了增强该加密方法的抗攻击能力,还可以对加密方法进行多次迭代,以保证加密方法的安全性。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种图像加密方法,其特征在于,包括以下步骤:
(1)基于初始值构造耦合映像格子序列,通过对称矩阵变换将耦合映像格子序列处理成第一密钥流,通过密码置换盒对第一密钥流进行置换得到第二密钥流;其中,建立基于二维动态映射的耦合映像格子模型,并采用所述耦合映像格子模型基于初始值x0,y0构造耦合映像格子序列(x,y),其中x0,y0∈(0,1];该耦合映像格子模型为:
x i + 1 = ( 1 - ϵ ) f 1 ( x i ) + ϵ f 2 ( y i ) y i + 1 = ( 1 - ϵ ) f 1 ( y i ) + ϵ f 2 ( x i )
其中,ε是耦合映像格子的耦合强度,f1是下帐篷映射函数,f2是逻辑映射函数;
(2)使用第一密钥流对原始图像进行置乱;
(3)使用第二密钥流对置乱后的图像进行分块编码,得到加密的图像数据;其中,将置乱后的图像分列得到第i列的像素值为Pi(j),i=1,2......,N;j=1,2......,M;N和M分别为每行像素和每列像素;将第一列像素值与所述第二密钥流异或运算后作为第一列密文序列将第i列像素值与所述第二密钥流异或运算后,再与前一列密文序列进行异或运算,得到第i列密文序列,其中i=2,3......,N。
2.根据权利要求1所述的图像加密方法,其特征在于,所述步骤(1)中通过对称矩阵变换将耦合映像格子序列处理成第一密钥流的步骤包括:
利用对称矩阵变换将耦合映像格子序列(x,y)的初始区间(0,1)变换到指定区间,输出(x',y');
取(x',y')的下限值作为第一密钥流。
3.根据权利要求2所述的图像加密方法,其特征在于,所述步骤(1)中通过密码置换盒对第一密钥流进行置换得到第二密钥流的步骤为:
通过以下公式计算第二密钥流:
其中SBox(ci,di)为在二维表SBox中查找到的下标(ci,di)对应的数值;(ci,di)为第一密钥流的参数值;x1_b,y1_b分别为初始值x0,y0的前8位;i=2,3......,N时,xi_b,yi_b分别为前一输出的密钥值分别进行比特位的左移运算和右移运算后得到。
4.根据权利要求3所述的图像加密方法,其特征在于,所述比特位的左移运算和右移运算中移动的比特数为2~4个比特。
5.一种图像加密装置,其特征在于,包括:
密钥流生成器,用于生成第一密钥流和第二密钥流;
图像置乱单元,用于使用第一密钥流对原始图像进行置乱;
分块编码单元,用于使用第二密钥流对置乱后的图像进行分块编码,得到加密的图像数据;其中,将置乱后的图像分列得到第i列的像素值为Pi(j),其中i=1,2......,N;j=1,2......,M;N和M分别为每行像素和每列像素;将第一列像素值与所述第二密钥流异或运算后作为第一列密文序列;将第i列像素值与所述第二密钥流异或运算后,再与前一列密文序列进行异或运算,得到第i列密文序列,其中i=2,3......,N;
其中,所述密钥流生成器包括:
序列生成单元,用于基于初始值构造耦合映像格子序列;该序列生成单元建立基于二维动态映射的耦合映像格子模型,并采用所述耦合映像格子模型基于初始值x0,y0构造耦合映像格子序列(x,y),其中x0,y0∈(0,1];所述耦合映像格子模型为:
x i + 1 = ( 1 - ϵ ) f 1 ( x i ) + ϵ f 2 ( y i ) y i + 1 = ( 1 - ϵ ) f 1 ( y i ) + ϵ f 2 ( x i )
其中,ε是耦合映像格子的耦合强度,f1是下帐篷映射函数,f2是逻辑映射函数;
矩阵变换单元,用于通过对称矩阵变换将耦合映像格子序列处理成第一密钥流;
密码置换单元,用于通过密码置换盒对第一密钥流进行置换得到第二密钥流。
6.根据权利要求5所述的图像加密装置,其特征在于,所述矩阵变换单元通过对称矩阵变换将耦合映像格子序列处理成第一密钥流的步骤包括:
利用对称矩阵变换将耦合映像格子序列(x,y)的初始区间(0,1)变换到指定区间,输出(x',y');
取(x',y')的下限值作为第一密钥流。
7.根据权利要求6所述的图像加密装置,其特征在于,所述密码置换单元通过密码置换盒对第一密钥流进行置换得到第二密钥流的步骤为:
通过以下公式计算第二密钥流:
其中SBox(ci,di)为在二维表SBox中查找到的下标(ci,di)对应的数值;(ci,di)为第一密钥流的参数值;x1_b,y1_b分别为初始值x0,y0的前8位;i=2,3......,N时,xi_b,yi_b分别为前一输出的密钥值分别进行比特位的左移运算和右移运算后得到。
8.根据权利要求7所述的图像加密装置,其特征在于,所述比特位的左移运算和右移运算中移动的比特数为2~4个比特。
9.一种密钥流生成方法,其特征在于,包括以下步骤:
a、基于初始值构造耦合映像格子序列;该步骤中建立基于二维动态映射的耦合映像格子模型,并采用所述耦合映像格子模型基于初始值x0,y0构造耦合映像格子序列(x,y),其中x0,y0∈(0,1];该耦合映像格子模型为:
x i + 1 = ( 1 - ϵ ) f 1 ( x i ) + ϵ f 2 ( y i ) y i + 1 = ( 1 - ϵ ) f 1 ( y i ) + ϵ f 2 ( x i )
其中,ε是耦合映像格子的耦合强度,f1是下帐篷映射函数,f2是逻辑映射函数;
b、通过对称矩阵变换将耦合映像格子序列处理成第一密钥流;该步骤中利用对称矩阵变换将耦合映像格子序列(x,y)的初始区间(0,1)变换到指定区间,输出(x',y');并取(x',y')的下限值作为第一密钥流;
c、通过密码置换盒对第一密钥流进行置换得到第二密钥流,该步骤中通过以下公式计算第二密钥流:
其中SBox(ci,di)为在二维表SBox中查找到的下标(ci,di)对应的数值;(ci,di)为第一密钥流的参数值;x1_b,y1_b分别为初始值x0,y0的前8位;i=2,3......,N时,xi_b,yi_b分别为前一输出的密钥值分别进行比特位的左移运算和右移运算后得到。
10.一种密钥流生成器,其特征在于,包括:
序列生成单元,用于基于初始值构造耦合映像格子序列;所述序列生成单元建立基于二维动态映射的耦合映像格子模型,并采用所述耦合映像格子模型基于初始值x0,y0构造耦合映像格子序列(x,y),其中x0,y0∈(0,1];该耦合映像格子模型为:
x i + 1 = ( 1 - ϵ ) f 1 ( x i ) + ϵ f 2 ( y i ) y i + 1 = ( 1 - ϵ ) f 1 ( y i ) + ϵ f 2 ( x i )
其中,ε是耦合映像格子的耦合强度,f1是下帐篷映射函数,f2是逻辑映射函数;
矩阵变换单元,用于通过对称矩阵变换将耦合映像格子序列处理成第一密钥流;所述矩阵变换单元利用对称矩阵变换将耦合映像格子序列(x,y)的初始区间(0,1)变换到指定区间,输出(x',y');并取(x',y')的下限值作为第一密钥流;
密码置换单元,用于通过密码置换盒对第一密钥流进行置换得到第二密钥流;所述密码置换单元通过以下公式计算第二密钥流:
其中SBox(ci,di)为在二维表SBox中查找到的下标(ci,di)对应的数值;(ci,di)为第一密钥流的参数值;x1_b,y1_b分别为初始值x0,y0的前8位;i=2,3......,N时,xi_b,yi_b分别为前一输出的密钥值分别进行比特位的左移运算和右移运算后得到。
CN201610856467.5A 2016-09-28 2016-09-28 一种图像加密方法及装置、密钥流生成方法及密钥流生成器 Active CN106407824B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610856467.5A CN106407824B (zh) 2016-09-28 2016-09-28 一种图像加密方法及装置、密钥流生成方法及密钥流生成器
CN201710530241.0A CN107292184B (zh) 2016-09-28 2016-09-28 图像加密方法、装置及密钥流生成方法和密钥流生成器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610856467.5A CN106407824B (zh) 2016-09-28 2016-09-28 一种图像加密方法及装置、密钥流生成方法及密钥流生成器

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201710530241.0A Division CN107292184B (zh) 2016-09-28 2016-09-28 图像加密方法、装置及密钥流生成方法和密钥流生成器

Publications (2)

Publication Number Publication Date
CN106407824A true CN106407824A (zh) 2017-02-15
CN106407824B CN106407824B (zh) 2017-06-27

Family

ID=57996825

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201710530241.0A Active CN107292184B (zh) 2016-09-28 2016-09-28 图像加密方法、装置及密钥流生成方法和密钥流生成器
CN201610856467.5A Active CN106407824B (zh) 2016-09-28 2016-09-28 一种图像加密方法及装置、密钥流生成方法及密钥流生成器

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201710530241.0A Active CN107292184B (zh) 2016-09-28 2016-09-28 图像加密方法、装置及密钥流生成方法和密钥流生成器

Country Status (1)

Country Link
CN (2) CN107292184B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107274457A (zh) * 2017-05-22 2017-10-20 河南大学 基于dna序列运算和变形耦合映像格子的双彩色图像加密方法
CN107507254A (zh) * 2017-08-18 2017-12-22 济南大学 基于算术编码的图像压缩加密方法
CN108566501A (zh) * 2018-03-29 2018-09-21 河南大学 基于混合域和lss型耦合映像格子的彩色图像加密方法
CN108629724A (zh) * 2017-03-16 2018-10-09 湖南工程学院 一种新的三维映射图像加密方法
CN108881953A (zh) * 2018-06-29 2018-11-23 银河威尔科技(北京)有限公司 一种视频加密方法和装置
CN110544199A (zh) * 2019-09-05 2019-12-06 北京云中融信网络科技有限公司 一种图像处理方法、装置、存储介质和电子设备
CN112669068A (zh) * 2020-12-28 2021-04-16 河南省启研科技评价研究院有限公司 基于大数据的市场调研数据传输方法及系统
CN112801847A (zh) * 2021-04-06 2021-05-14 王可 一种可实现海量聊天大数据图片安全方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040202326A1 (en) * 2003-04-10 2004-10-14 Guanrong Chen System and methods for real-time encryption of digital images based on 2D and 3D multi-parametric chaotic maps
CN1964354A (zh) * 2005-11-07 2007-05-16 美国博通公司 分块编码器、解码器和编码数据块的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609893A (zh) * 2012-01-13 2012-07-25 航天科工深圳(集团)有限公司 一种数字图像加密和解密方法
CN105513002B (zh) * 2015-11-30 2019-01-22 广东海洋大学 一种图像加密方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040202326A1 (en) * 2003-04-10 2004-10-14 Guanrong Chen System and methods for real-time encryption of digital images based on 2D and 3D multi-parametric chaotic maps
CN1964354A (zh) * 2005-11-07 2007-05-16 美国博通公司 分块编码器、解码器和编码数据块的方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108629724A (zh) * 2017-03-16 2018-10-09 湖南工程学院 一种新的三维映射图像加密方法
CN108629724B (zh) * 2017-03-16 2021-07-06 湖南工程学院 一种新的三维映射图像加密方法
CN107274457B (zh) * 2017-05-22 2019-06-11 河南大学 基于dna序列运算和变形耦合映像格子的双彩色图像的加密方法
CN107274457A (zh) * 2017-05-22 2017-10-20 河南大学 基于dna序列运算和变形耦合映像格子的双彩色图像加密方法
CN107507254B (zh) * 2017-08-18 2018-11-23 济南大学 基于算术编码的图像压缩加密方法
CN107507254A (zh) * 2017-08-18 2017-12-22 济南大学 基于算术编码的图像压缩加密方法
CN108566501A (zh) * 2018-03-29 2018-09-21 河南大学 基于混合域和lss型耦合映像格子的彩色图像加密方法
CN108566501B (zh) * 2018-03-29 2020-04-03 河南大学 基于混合域和lss型耦合映像格子的彩色图像加密方法
CN108881953A (zh) * 2018-06-29 2018-11-23 银河威尔科技(北京)有限公司 一种视频加密方法和装置
CN108881953B (zh) * 2018-06-29 2020-07-31 银河威尔科技(北京)有限公司 一种视频加密方法和装置
CN110544199A (zh) * 2019-09-05 2019-12-06 北京云中融信网络科技有限公司 一种图像处理方法、装置、存储介质和电子设备
CN112669068A (zh) * 2020-12-28 2021-04-16 河南省启研科技评价研究院有限公司 基于大数据的市场调研数据传输方法及系统
CN112669068B (zh) * 2020-12-28 2024-05-14 深圳前海用友力合科技服务有限公司 基于大数据的市场调研数据传输方法及系统
CN112801847A (zh) * 2021-04-06 2021-05-14 王可 一种可实现海量聊天大数据图片安全方法

Also Published As

Publication number Publication date
CN107292184A (zh) 2017-10-24
CN106407824B (zh) 2017-06-27
CN107292184B (zh) 2018-04-03

Similar Documents

Publication Publication Date Title
CN107292184B (zh) 图像加密方法、装置及密钥流生成方法和密钥流生成器
CN108898025B (zh) 基于双重置乱和dna编码的混沌图像加密方法
CN108322622B (zh) 一种基于2d-vmd和八维超混沌系统的彩色数字图像加密方法
Soleymani et al. A chaotic cryptosystem for images based on Henon and Arnold cat map
CN109889686B (zh) 基于h分形结构和动态自可逆矩阵的图像加密方法
CN109660696B (zh) 一种新的图像加密方法
Wu et al. A user-friendly secret image sharing scheme with reversible steganography based on cellular automata
CN107094072B (zh) 一种基于广义Henon映射的混合混沌加密方法
CN107220923B (zh) 基于映像网络的数字图像反馈加密方法
CN107610037A (zh) 一种融合多混沌映射和dna编码的图像加密方法及装置
CN109102452B (zh) 一种基于拉丁方阵置乱和双向扩散的图像加密方法
CN102982499A (zh) 基于多分数阶混沌系统的彩色图像加密和解密方法
CN107330338B (zh) 基于双混沌交叉扩散的彩色图像加密和解密方法及系统
CN112769545B (zh) 基于相邻像素约瑟夫变换和Mealy状态机的图像加密方法
CN110889877A (zh) 一种基于l-f级联混沌和3d比特置乱的图像加密方法
CN110120079A (zh) 基于三维Logistic映射和广义Cat映射彩色图像加密方法
Zhang et al. A new algorithm of image compression and encryption based on spatiotemporal cross chaotic system
Liu et al. Cryptanalysis and enhancement of an image encryption scheme based on bit-plane extraction and multiple chaotic maps
CN113077373A (zh) 一种基于混沌映射与双向操作Feistel结构的图像加密方法
CN114579993A (zh) 基于量子密钥分发和像素置乱的图像加密方法
CN106570814B (zh) 一种超混沌图像加密方法
CN117499005A (zh) 基于4d混沌系统的图像加密方法
CN109586895B (zh) 一种新的彩色图像加密方法
CN113076551B (zh) 基于提升方案和跨分量置乱的彩色图像加密方法
CN106934755B (zh) 一种基于m序列的图像加解密方法

Legal Events

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