图像加密方法、装置、设备及存储介质

文档序号:35426377发布日期:2023-09-13 15:43阅读:50来源:国知局
图像加密方法、装置、设备及存储介质

本技术涉及数字图像处理,特别涉及一种图像加密方法、装置、设备及存储介质。


背景技术:

1、随着互联网技术的快速发展,人们使用互联网技术存储和传输信息变得越来越方便。数字图像能够更加丰富和直观地表示信息,已经成为常见的信息存储格式之一。也正是由于数字图像在互联网上被广泛用于存储和传输数据信息,数字图像在互联网中的安全性逐渐成为研究焦点。由于数字图像具有数据量大、相邻像素之间的相关性强以及信息冗余度高等特性,传统的面向文本的加密方法,如高级加密标准(aes)和数据加密标准(des),在直接应用于图像加密时,存在加密效率过低的缺点。

2、混沌系统具有不可预测性、遍历性和初值敏感性,被广泛使用在图像加密算法的设计中。混沌映射可以大致分为两类:一维(1d)映射和高维(hd)映射。由于1d混沌映射的实现成本较低,研究人员提出了大量基于1d混沌映射的图像加密算法。此外,约瑟夫斯置乱和dna编码扩散技术也是目前广泛利用在加密领域的技术。

3、然而,传统的一维混沌映射,如logistic映射、正弦映射、高斯映射等,仅能在小参数范围内表现出混沌行为。随着混沌参数的变化,上述各个映射的混沌区间通常是离散的。因此,当这些混沌映射被用于设计加密算法时,整个算法的密钥空间会受到一定的约束,导致密钥的安全程度不高,利用上述传统混沌映射设计的图像加密算法均存在安全隐患,存在被暴力破解的风险。

4、因此,如何将一种具有更宽混沌区间的混沌映射有效地结合到约瑟夫斯置乱以及dna编码扩散技术中,来提升图像加密算法的安全性,是亟待解决的问题。


技术实现思路

1、本技术提供了一种图像加密方法、装置、设备及存储介质,将一种在更宽范围内具备混沌行为的混沌映射,结合到约瑟夫斯置乱以及dna编码扩散技术中,能扩大密钥空间,有效化解算法被暴力攻击的风险,极大地增强图像加密算法的安全性。

2、为了实现上述目的,第一方面,本技术提供了图像加密方法,该方法包括:

3、步骤s1、将待加密的目标图像转换成尺寸大小为m×n的二维图像矩阵i,根据所述二维图像矩阵i对应的哈希值h更新初始密钥,得到更新密钥;将所述更新密钥作为一维切比雪夫正弦耦合映射1d-cscm的初始参数,将1d-cscm迭代多次,得到混沌序列x;从所述混沌序列x中选取元素以生成多个密钥序列,每个所述密钥序列中包括顺序排列的至少一个元素;

4、其中,所述1d-cscm表示为:xn+1=a|sin[π(arccos(bxn))]|mod 1,所述a、b表示所述初始参数,m、n、n为正整数,mod表示取模操作;

5、步骤s2、根据所述多个密钥序列,按照目标转换方式将所述二维图像矩阵i转换为一维阵列i1,再对所述一维阵列i1进行第一次约瑟夫斯置乱,得到置乱后的一维阵列i11;

6、将所述一维阵列i11转换为二维矩阵z1;根据所述多个密钥序列,按照目标转换方式将所述二维矩阵z1转换为一维阵列i2,再对所述一维阵列i2进行第二次约瑟夫斯置乱,得到一维置乱阵列i22,将所述一维置乱阵列i22转换为二维置乱矩阵z;

7、步骤s3、根据所述多个密钥序列,对所述二维置乱矩阵z进行dna编码,得到dna矩阵dz;根据所述多个密钥序列,对所述dna矩阵dz进行dna行扩散,得到dna行扩散矩阵dz1;

8、步骤s4、根据所述多个密钥序列,对所述dna行扩散矩阵dz1进行dna列扩散,得到dna列扩散矩阵dz2;

9、步骤s5、对dna矩阵dz2进行dna解码,得到加密图像矩阵enc。

10、在一种可能实施方式中,所述步骤s2涉及的目标转换方式包括:

11、从待转换矩阵的最外圈到最内圈,依次取出矩阵的各圈的元素,将取出的元素排列得到一维阵列,所述最外圈由待转换矩阵的第一行元素、最后一行元素、第一列元素和最后一列元素组成;

12、其中,每一圈元素的取值方向由所使用的密钥序列决定:针对第i圈,当所使用的密钥序列的第i个元素为偶数时,则按照顺时针方向依次取值,否则,按照逆时针方向依次取值,在所述第一次约瑟夫置乱前进行的转换中,所述待转换矩阵是指二维图像矩阵i;在所述第二次约瑟夫置乱前进行的转换中,所述待转换矩阵是指二维矩阵z1,i为大于0的正整数。

13、在一种可能实施方式中,所述步骤s1中将所述更新密钥作为一维切比雪夫正弦耦合映射1d-cscm的初始参数,将1d-cscm迭代多次,得到混沌序列x的过程包括:

14、将所述1d-cscm迭代(q+4q)次,舍弃前q项,得到长度为4q的混沌序列x={xq+1,xq+2,…,xq+4q},q为m和n中的最大值,q为根据二维图像矩阵i的哈希值h确定的正整数。

15、在一种可能实施方式中,所述步骤s1中根据所述二维图像矩阵i对应的哈希值h更新初始密钥,得到更新密钥的过程,包括:

16、将所述二维图像矩阵i作为哈希函数的输入,确定所述图像矩阵i的512位的哈希值h;将512位的哈希值h中的每4位依次构成一个二进制数,将得到的128个二进制数依次转换为十进制数,所述哈希值h表示为:h={h1,h2,…,h128};

17、将所述哈希值h、预设的初始密钥{x0,a0,b0}和预设的密钥参数{a1,b1},作为密钥更新函数的输入,得到密钥更新函数输出的更新密钥{x1,a,b},所述密钥更新函数表示为:

18、

19、其中,a1、b1、x0、a0、b0均为预先选定的常数,所述更新密钥中的a、b作为所述1d-cscm的初始参数,sum{h1,h2}表示求h1,h2的和。

20、在一种可能实施方式中,所述多个密钥序列包括:密钥序列a、密钥序列b和密钥序列d,所述第一次约瑟夫斯置乱的预设步长由密钥序列a的第一个元素a[1]确定,所述第一次约瑟夫斯置乱的预设起始位置由密钥序列b的最后一个元素b[floor(n1/2)]和所述a[1]确定;

21、所述第二次约瑟夫斯置乱的预设步长由密钥序列a的第二个元素a[2]确定,所述第一次约瑟夫斯置乱的预设起始位置由密钥序列d的最后一个元素d[floor(n1/2)]和所述a[2]确定,其中,n1=min{m,n},floor(n1/2)表示取不大于(n1/2)的最大整数。

22、在一种可能实施方式中,所述多个密钥序列包括:密钥序列a1、密钥序列c1和密钥序列d1,所述步骤s3中对dna矩阵dz进行dna行扩散的过程包括:

23、按照由密钥序列a1确定的dna编码规则,将密钥序列d1转换为第一dna序列dd1;

24、按照由密钥序列c1确定的异或规则,将所述第一dna序列dd1和所述dna矩阵dz中的元素,依次进行dna异或运算操作,得到dna行扩散矩阵dz1。

25、在一种可能实施方式中,所述多个密钥序列包括:密钥序列a1和密钥序列e1,所述步骤s4中对dna矩阵dz进行dna列扩散的过程包括:

26、按照由密钥序列a1确定的dna编码规则,将密钥序列e1转换为第二dna序列de1;

27、按照由密钥序列a1确定的减法规则和加法规则,对所述第二dna序列de1和所述dna行扩散矩阵dz1中的元素,进行加法运算和/或减法运算,得到dna列扩散矩阵dz2。

28、在一种可能实施方式中,所述步骤s1从所述混沌序列x中选取元素以生成多个密钥序列的过程,包括:

29、针对任一密钥序列,按照预设的元素选取规则,取出混沌序列x中的目标元素,按照预设的密钥运算规则进行取模运算,根据取模运算的结果确定密钥序列,每个密钥序列的元素选取规则和/或密钥运算规则不同。

30、在一种可能实施方式中,所述多个密钥序列包括:密钥序列a、b、d、a1、c1、d1和e1,所述元素选取规则和密钥运算规则表示为:

31、n1=min{m,n}

32、a=mod{floor[x(1:2)×109],10}+1

33、b=mod{floor[x(1:floor(n1/2))×1010],2n1}+1

34、d=mod{floor[x(1:floor(n1/2))×1012],2n1}+1

35、a1=mod{floor[x(1:4n)×109],8}+1

36、c1=mod{floor[x(1:m)×1010],8}+1

37、d1=mod{floor[x(1:n)×1012],256}

38、e1=mod{floor[x(1:m)×1010],256}

39、其中,x(1:c)表示取混沌序列x中第一个元素到第c个元素之间的所有元素,floor(c)表示取不大于c的最大整数,c为大于1的正整数。

40、第二方面,提供一种图像加密装置,该装置包括多个功能模块,用于执行如第一方面所提供的图像加密方法中的对应步骤。

41、第三方面,提供一种计算设备,该计算设备包括存储器和处理器,所述存储器存储有至少一段程序,所述至少一段程序由处理器执行以实现如第一方面提供图像加密方法。

42、第四方面,提供一种计算机可读存储介质,该存储介质中存储有至少一段程序,该至少一段程序由处理器执行以实现如第一方面提供的图像加密方法。

43、本技术提供的技术方案至少包括如下技术效果:

44、本技术使用了具有较宽且连续混沌区间的混沌映射生成密钥,有效扩大了密钥空间;并将生成的多个密钥序列结合在约瑟夫斯置乱和dna编码扩散技术中,并在dna编码扩散中引入了多种dna运算操作;综上,能够有效化解算法被暴力攻击的风险,增强图像加密的安全性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1