Hartley变换和交叉编码的彩色图像加解密方法技术

技术编号:20875890 阅读:35 留言:0更新日期:2019-04-17 11:29
本发明专利技术涉及一种基于Hartley变换和交叉编码的彩色图像加密与解密方法。在加密方,首先将彩色图像分解为三通道的单色图像,对每个颜色通道的图像进行编码。使用均匀分布的随机函数生成三组纯相位函数,作为加密密钥,再使用Hartley变换对单通道图像进行加密。然后使用交叉编码方法将每个通道的密文数据进行混合。在解密方,先对交叉编码进行解码,再用解密密钥对图像进行解密,最后合成出原始彩色图像。本发明专利技术提出的加密方案,密文中不包含相位信息,因此能够完全免疫来自相位恢复算法的攻击,提高图像的加密强度,该方法除了可以对彩色图像进行加密外,还可以对多光谱,高光谱图像以及多幅图像进行加密,具有良好的应用潜力。

【技术实现步骤摘要】
Hartley变换和交叉编码的彩色图像加解密方法
本专利技术属于信息安全
,具体涉及一种图像加密与解密技术。
技术介绍
随着互联网以及多媒体技术的不断发展,信息安全方面的问题不容忽视。数字图像作为最重要的信息传递载体之一。在军事、金融、医疗、科研等领域,图像数据往往要进行加密以后再进行传输,用于防止信息的窃取,因此,图像加密技术也越来越受到人们的重视。图像加密的目的是将图像本身所表达的信息进行隐藏,使不掌握密钥的用户无法获得图像的真实内容,而掌握密钥的用户可以通过解密算法,获得真实的图像信息。光学图像加密技术可以通过光电系统或者虚拟光学系统,使用一定的算法,对原图像进行一定的扰乱操作,隐藏原始图像包含的信息,从而实现图像数据的加密。目前一般认为,光学图像加密系统最早是由Refregier和Javidi提出的。这种双随机相位编码系统可以用经典的4f系统实现,分别在光信号的输入平面和傅立叶频谱面上分别放入一块随机的相位掩模板,其目的是对输入图像的振幅与相位信息分别进行加密,从而达到输出的密文变为一幅白噪声图像的目的。此后该系统又拓展到了分数傅立叶域、菲涅尔域等。这类图像加密方法不仅可用于单幅图像的加密,也可以实现对多图像的加密。同时,其应用领域也有了显著的拓展。然而,已经有研究结果表明,通过相位恢复算法,可以恢复出被白噪声随机相位板所加密的图像,即使在密钥完全未知的情况下,通过迭代计算,也可能够恢复出图像的信息,并且能够达到人眼可辨识的程度。为了解决这一问题,如果我们在密文信息中只包含实数振幅,不包含相位信息,那么就可以完全免疫来自相位恢复算法的攻击,避免这类系统的一大缺陷。本专利技术专利提出了一种基于Hartley变换和交叉编码的彩色图像加密与解密方案,可以抵抗相位恢复算法的攻击,提高加密系统的安全性。
技术实现思路
针对现有技术的不足,本专利技术提出了一种基于Hartley变换,针对彩色图像进行加密与解密的方法。下面结合附图对本专利技术做进一步详细的说明。为实现上述目的,本专利技术的方案包括:如图1所示,单通道图像加密过程如步骤1)到6):1)设输入矩阵为I(x,y),对于彩色图像的通道数据,它是一个实数矩阵,x和y表示像素坐标,图像的尺寸为M*N。使用随机相位函数和Hartley变换,将其进行分解,具体如步骤2)到6)所述。2)生成三组均匀分布的随机函数,用ϕ1(x,y)、ϕ2(x,y)和ϕ3(x,y)表示。使用这三组随机函数生成三个纯相位函数:R1(x,y)=exp[i*2π*ϕ1(x,y)],(1)R2(x,y)=exp[i*2π*ϕ2(x,y)],(2)R3(x,y)=exp[i*2π*ϕ3(x,y)]。(3)3)用纯相位函数R1(x,y)和输入振幅I(x,y)构成复振幅,I1(x,y)=I(x,y)*R1(x,y)。(4)4)将复振幅I1(x,y)分解为实部和虚部两部分,并且进行Hartley变换,A2(x,y)=HT[Re(I1)],(5)A3(x,y)=HT[Im(I1)],(6)其中,Re[·]和Im[·]表示对复函数求实部和虚部,HT[·]表示实数域的变换,具体表示如下,HT[f(x,y)]=Re[FT(f(x,y))]+Im[FT(f(x,y))],(7)其中FT[·]表示傅立叶变换。实数域变换的特点是,输入和输出函数都是实数,可以用傅立叶变换实现,而且进行两次变换,会得到原函数。根据上述特点可知,A2(x,y)和A3(x,y)都是实函数。5)用纯相位函数R2(x,y)和R3(x,y)与输入振幅A2(x,y)和A3(x,y)构成复振幅,B2(x,y)=A2(x,y)*R2(x,y),(8)B3(x,y)=A3(x,y)*R3(x,y)。(9)6)因为B2(x,y)和B3(x,y)是复数,所以分别取出的实部和虚部,C2(x,y)=Re(B2),(10)C3(x,y)=Re(B3),(11)D2(x,y)=Im(B2),(12)D3(x,y)=Im(B3),(13)C2(x,y)、C3(x,y)、D2(x,y)和D3(x,y)都作为输入矩阵分解的输出。7)将一幅彩色图像W(x,y)的颜色通道分离,得到R,G,B三个通道的分量,用I1R(x,y)、I1G(x,y)和I1B(x,y)表示,其中下标RGB分别表示了红绿蓝三种颜色的分量,并分别作为步骤1)的输入,生成的随机分布函数为ϕ2R(x,y)、ϕ3R(x,y)、ϕ2G(x,y)、ϕ3G(x,y)、ϕ2B(x,y)和ϕ3B(x,y),执行步骤2)到6),可以得到三个通道分解出的实部和虚部,分别用C2R(x,y)、C3R(x,y)、D2R(x,y)、D3R(x,y);C2G(x,y)、C3G(x,y)、D2G(x,y)、D3G(x,y);C2B(x,y)、C3B(x,y)、D2B(x,y)、D3B(x,y)表示。8)如图2所示,对步骤7)中输出的三个通道的分量进行交叉编码,具体根据下述公式进行,E21(x,y)=C2R(x,y)+C3G(x,y),(14)E31(x,y)=D2R(x,y)+D3G(x,y),(15)E22(x,y)=C2G(x,y)+C3B(x,y),(16)E32(x,y)=D2G(x,y)+D3B(x,y),(17)E23(x,y)=C2B(x,y)+C3R(x,y),(18)E33(x,y)=D2B(x,y)+D3R(x,y)。(19)9)因为E21(x,y)、E31(x,y)、E22(x,y)、E32(x,y)、E23(x,y)、E33(x,y)都是实函数,所以直接对其进行Hartley逆变换,可以得到F21(x,y)=HT-1[E21(x,y)],(20)F31(x,y)=HT-1[E31(x,y)],(21)F22(x,y)=HT-1[E22(x,y)],(22)F32(x,y)=HT-1[E32(x,y)],(23)F23(x,y)=HT-1[E23(x,y)],(24)F33(x,y)=HT-1[E33(x,y)],(25)其中,HT-1[·]表示Hartley逆变换。8)图像的密文就是F21(x,y)、F31(x,y)、F22(x,y)、F32(x,y)、F23(x,y)和F33(x,y),这六个函数也都是实函数,作为系统输出,可以通过公共信道传输给接收方,而随机分布函数ϕ2R(x,y)、ϕ3R(x,y)、ϕ2G(x,y)、ϕ3G(x,y)、ϕ2B(x,y)和ϕ3B(x,y)作为密钥,其中下标R、G、B分别表示红绿蓝三个颜色的通道,通过秘密信道传输给接收方,即可进行解密。如图3所示,解密过程包含如下步骤:1)接收方获得了密文F21(x,y)、F31(x,y)、F22(x,y)、F32(x,y)、F23(x,y)和F33(x,y),对其进行Hartley变换,得到G21(x,y)=HT[F21(x,y)],(26)G31(x,y)=HT[F31(x,y)],(27)G22(x,y)=HT[F22(x,y)],(28)G32(x,y)=HT[F32(x,y)],(29)G23(x,y)=HT[F23(x,y)],(30)G33(x,y)=HT[F33(x,y)],(31)其中,根据加密方案可知,G21(x,y)=本文档来自技高网
...

【技术保护点】
1.一种使用Hartley变换和交叉编码的彩色图像加密与解密方法,其特征在于:包括如下步骤:如图1所示,单通道图像加密过程如步骤1)到6),1)设输入矩阵为I(x,y),对于彩色图像的通道数据,它是一个实数矩阵,x和y表示像素坐标,图像的尺寸为M*N,使用随机相位函数和Hartley变换,将其进行分解,具体如步骤2)到6)所述;2)生成三组均匀分布的随机函数,用ϕ1(x,y)、ϕ2(x,y)和ϕ3(x,y)表示,使用这三组随机函数生成三个纯相位函数:R1(x,y)=exp[i*2π*ϕ1(x,y)],(1)R2(x,y)=exp[i*2π*ϕ2(x,y)],(2)R3(x,y)=exp[i*2π*ϕ3(x,y)];(3)3)用纯相位函数R1(x,y)和输入振幅I(x,y)构成复振幅,I1(x,y)=I(x,y)*R1(x,y);(4)4)将复振幅I1(x,y)分解为实部和虚部两部分,并且进行Hartley变换,A2(x,y)=HT[Re(I1)],(5)A3(x,y)=HT[Im(I1)],(6)其中,Re[·]和Im[·]表示对复函数求实部和虚部,HT[·]表示实数域的变换,具体表示如下,HT[f(x,y)]=Re[FT(f(x,y))]+Im[FT(f(x,y))],(7)其中FT[·]表示傅立叶变换,实数域变换的特点是,输入和输出函数都是实数,可以用傅立叶变换实现,而且进行两次变换,会得到原函数,根据上述特点可知,A2(x,y)和A3(x,y)都是实函数;5)用纯相位函数R2(x,y)和R3(x,y)与输入振幅A2(x,y)和A3(x,y)构成复振幅,B2(x,y)=A2(x,y)*R2(x,y),(8)B3(x,y)=A3(x,y)*R3(x,y);(9)6)因为B2(x,y)和B3(x,y)是复数,所以分别取出的实部和虚部,C2(x,y)=Re(B2),(10)C3(x,y)=Re(B3),(11)D2(x,y)=Im(B2),(12)D3(x,y)=Im(B3),(13)C2(x,y)、C3(x,y)、D2(x,y)和D3(x,y)都作为输入矩阵分解的输出;7)将一幅彩色图像W(x,y)的颜色通道分离,得到R,G,B三个通道的分量,用I1R(x,y)、I1G(x,y)和I1B(x,y)表示,其中下标RGB分别表示了红绿蓝三种颜色的分量,并分别作为步骤1)的输入,生成的随机分布函数为ϕ2R(x,y)、ϕ3R(x,y)、ϕ2G(x,y)、ϕ3G(x,y)、ϕ2B(x,y)和ϕ3B(x,y),执行步骤2)到6),可以得到三个通道分解出的实部和虚部,分别用C2R(x,y)、C3R(x,y)、D2R(x,y)、D3R(x,y);C2G(x,y)、C3G(x,y)、D2G(x,y)、D3G(x,y);C2B(x,y)、C3B(x,y)、D2B(x,y)、D3B(x,y)表示;8)如图2所示,对步骤7)中输出的三个通道的分量进行交叉编码,具体根据下述公式进行,E21(x,y)=C2R(x,y)+C3G(x,y),(14)E31(x,y)=D2R(x,y)+D3G(x,y),(15)E22(x,y)=C2G(x,y)+C3B(x,y),(16)E32(x,y)=D2G(x,y)+D3B(x,y),(17)E23(x,y)=C2B(x,y)+C3R(x,y),(18)E33(x,y)=D2B(x,y)+D3R(x,y);(19)9)因为E21(x,y)、E31(x,y)、E22(x,y)、E32(x,y)、E23(x,y)、E33(x,y)都是实函数,所以直接对其进行Hartley逆变换,可以得到F21(x,y)=HT...

【技术特征摘要】
1.一种使用Hartley变换和交叉编码的彩色图像加密与解密方法,其特征在于:包括如下步骤:如图1所示,单通道图像加密过程如步骤1)到6),1)设输入矩阵为I(x,y),对于彩色图像的通道数据,它是一个实数矩阵,x和y表示像素坐标,图像的尺寸为M*N,使用随机相位函数和Hartley变换,将其进行分解,具体如步骤2)到6)所述;2)生成三组均匀分布的随机函数,用ϕ1(x,y)、ϕ2(x,y)和ϕ3(x,y)表示,使用这三组随机函数生成三个纯相位函数:R1(x,y)=exp[i*2π*ϕ1(x,y)],(1)R2(x,y)=exp[i*2π*ϕ2(x,y)],(2)R3(x,y)=exp[i*2π*ϕ3(x,y)];(3)3)用纯相位函数R1(x,y)和输入振幅I(x,y)构成复振幅,I1(x,y)=I(x,y)*R1(x,y);(4)4)将复振幅I1(x,y)分解为实部和虚部两部分,并且进行Hartley变换,A2(x,y)=HT[Re(I1)],(5)A3(x,y)=HT[Im(I1)],(6)其中,Re[·]和Im[·]表示对复函数求实部和虚部,HT[·]表示实数域的变换,具体表示如下,HT[f(x,y)]=Re[FT(f(x,y))]+Im[FT(f(x,y))],(7)其中FT[·]表示傅立叶变换,实数域变换的特点是,输入和输出函数都是实数,可以用傅立叶变换实现,而且进行两次变换,会得到原函数,根据上述特点可知,A2(x,y)和A3(x,y)都是实函数;5)用纯相位函数R2(x,y)和R3(x,y)与输入振幅A2(x,y)和A3(x,y)构成复振幅,B2(x,y)=A2(x,y)*R2(x,y),(8)B3(x,y)=A3(x,y)*R3(x,y);(9)6)因为B2(x,y)和B3(x,y)是复数,所以分别取出的实部和虚部,C2(x,y)=Re(B2),(10)C3(x,y)=Re(B3),(11)D2(x,y)=Im(B2),(12)D3(x,y)=Im(B3),(13)C2(x,y)、C3(x,y)、D2(x,y)和D3(x,y)都作为输入矩阵分解的输出;7)将一幅彩色图像W(x,y)的颜色通道分离,得到R,G,B三个通道的分量,用I1R(x,y)、I1G(x,y)和I1B(x,y)表示,其中下标RGB分别表示了红绿蓝三种颜色的分量,并分别作为步骤1)的输入,生成的随机分布函数为ϕ2R(x,y)、ϕ3R(x,y)、ϕ2G(x,y)、ϕ3G(x,y)、ϕ2B(x,y)和ϕ3B(x,y),执行步骤2)到6),可以得到三个通道分解出的实部和虚部,分别用C2R(x,y)、C3R(x,y)、D2R(x,y)、D3R(x,y);C2G(x,y)、C3G(x,y)、D2G(x,y)、D3G(x,y);C2B(x,y)、C3B(x,y)、D2B(x,y)、D3B(x,y)表示;8)如图2所示,对步骤7)中输出的三个通道的分量进行交叉编码,具体根据下述公式进行,E21(x,y)=C2R(x,y)+C3G(x,y),(14)E31(x,y)=D2R(x,y)+D3G(x,y),(15)E22(x,y)=C2G(x,y)+C3B(x,y),(16)E32(x,y)=D2G(x,y)+D3B(x,y),(17)E23(x,y)=C2B(x,y)+C3R(x,y),(18)E33(x,y)=D2B(x,y)+D3R(x,y);(19)9)因为E21(x,y)、E31(x,y)、E22(x,y)、E32(x,y)、E23(x,y)、E33(x,y)都是实函数,所以直接对其进行Hartley逆变换,可以得到F21(x,y)=HT-1[E21(x,y)],(20)F31(x,y)=HT-1[E31(x,y)],(21)F22(x,y)=HT-1[E22...

【专利技术属性】
技术研发人员:张海平孙文卿陈宝华王军范君柳吴泉英
申请(专利权)人:苏州科技大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1