CN112260815B - 基于索引矩阵的图像加密方法、装置、终端及存储介质 - Google Patents

基于索引矩阵的图像加密方法、装置、终端及存储介质 Download PDF

Info

Publication number
CN112260815B
CN112260815B CN202010978110.0A CN202010978110A CN112260815B CN 112260815 B CN112260815 B CN 112260815B CN 202010978110 A CN202010978110 A CN 202010978110A CN 112260815 B CN112260815 B CN 112260815B
Authority
CN
China
Prior art keywords
matrix
encryption
encrypted
pixel
image
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.)
Expired - Fee Related
Application number
CN202010978110.0A
Other languages
English (en)
Other versions
CN112260815A (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.)
Li Guoxiang
Liu Hongyu
Wang Jijun
Guangxi University of Finance and Economics
Original Assignee
Guangxi University of Finance and Economics
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 Guangxi University of Finance and Economics filed Critical Guangxi University of Finance and Economics
Priority to CN202010978110.0A priority Critical patent/CN112260815B/zh
Publication of CN112260815A publication Critical patent/CN112260815A/zh
Application granted granted Critical
Publication of CN112260815B publication Critical patent/CN112260815B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/001Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using chaotic signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Facsimile Transmission Control (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明是关于一种基于索引矩阵的图像加密方法、装置、终端及存储介质,属于图像处理技术领域。所述方法包括:所述加密过程包括:获取待加密图像的像素值矩阵,生成序列:根据生成的序列生成索引矩阵;生成加密步长矩阵,得到加密后的像素值矩阵;根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像;所述解密过程包括:获取加密图像的像素值矩阵,生成序列;根据生成的序列生成索引矩阵;生成加密步长矩阵;生成像素扩散矩阵;得到所述像素扩散前的加密图像的像素值矩阵;通过所述加密步长矩阵对所述像素扩散前的加密图像的像素值矩阵进行解密,得到加密前的原始图像。采用本发明,可以减轻图像加密的运算复杂度。

Description

基于索引矩阵的图像加密方法、装置、终端及存储介质
技术领域
本发明涉及图像处理技术领域,尤其涉及一种基于索引矩阵的图像加密方法、装置、终端及存储介质。
背景技术
智能终端已成为了人们学习生活工作中不可或缺的一部分,随之越来越多的图像被共享在社交空间,或上传到云空间,使得图像信息安全面临极大挑战,隐私保护、版权保护等问题逐渐成为人们关注的热点问题之一,设计快捷高效的图像加密方法成为了最有效的解决途径,并促使图像加密技术在军事、医疗、版权保护、气象、金融等领域发挥着越来越重要的作用,形成了广泛应用需求。
在实现本发明的过程中,发明人发现相关技术至少存在以下问题:
图像加密从其本质来看,主要有两种手段,一种是改变像素灰度值,另一种是改变像素位置,但目前的图像加密方法,通常均存在运算量大、运算复杂、生成速度慢等问题。
发明内容
本发明提供一种基于索引矩阵的图像加密方法、装置、终端及存储介质,可以解决图像加密方法存在运算量大、运算复杂等问题。
根据本发明实施例的第一方面,提供一种基于索引矩阵的图像加密方法,所述方法包括加密过程和解密过程两个部分;
所述加密过程包括:
获取待加密图像的像素值矩阵,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据所述第一初值x0、第二初值μ记忆下述公式Logistic映射(1),生成一个长度为256且各元素互不相等的随机序列:
xk+1=μxk(1-xk) (1)
其中,3.569945≤μ≤4,xk∈[0,1];
根据生成的序列生成索引矩阵;
基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵,通过所述加密步长矩阵以及所述索引矩阵对待加密图像的像素值矩阵进行加密,得到加密后的像素值矩阵;
基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵,根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像;
所述解密过程包括:
获取加密图像的像素值矩阵,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据所述第一初值x0、第二初值μ以及上述公式(1),生成一个长度为256且各元素互不相等的序列;
根据生成的序列生成索引矩阵;
基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵;
基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵;
通过所述像素扩散矩阵以及所述加密图像,得到所述像素扩散前的加密图像的像素值矩阵;
通过所述加密步长矩阵对所述像素扩散前的加密图像的像素值矩阵进行解密,得到加密前的原始图像。
可选地,所述根据生成的序列生成索引矩阵,包括:
通过对去重后的随机序列排序,并按序记录各元素在排序前的位置编号值,得到一个长度为256、各元素互不相同、且恰好能填充满0~255区间的、由所述位置编号值组成的正整数序列,将得到的正整数序列转换为尺寸为10×26大小索引矩阵的前256位,后4位由不属于0~255的任意指定值进行填充。
可选地,所述基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵,包括:
选取t,其中,t为1:T内的随机数(1≤t≤T),
采用上述公式(1)生成一个长为m×n的序列T′,对T′作如下述公式(2)(3)的变换:
T″=mod(fix(T′(i)×1000),T′)+1,1≤i≤m×n则:1≤T′≤t; (2)
S=reshape(T″,m,n)1≤S(i,j)≤t,1≤i≤m,1≤j≤n; (3)
其中,S即为所述索引矩阵对应的加密步长矩阵,m、n为所述待加密图像的像素尺寸;fix()表示向0取整,mod()取模运算,reshape()是重新调整矩阵中元素的行数、列数、维数的运算。
可选地,所述通过所述加密步长矩阵以及所述索引矩阵对所述待加密图像的像素值矩阵进行加密,得到加密后的像素值矩阵,包括:
将所述像素值矩阵中的每个元素转化为三位数;
对于所述待加密图像的像素值矩阵中任一元素,将所述元素进行数值分解为第一数值以及第二数值,其中,所述第一数值为所述三位数的元素的前两位数值,所述第二数值为所述三位数的元素的最后一位数值,将所述第一数值与所述第二数值确定为所述元素的行序号以及列序号,根据所述元素的行序号与列序号,在所述索引矩阵中查找所述元素对应的加密元素,此为完成元素的一次加密,在所述加密步长矩阵中确定所述像素值矩阵的元素对应的加密步长元素,根据所述加密步长元素对所述像素值矩阵中的元素进行加密;
当根据所述加密步长矩阵对所述像素值矩阵中的每个元素均完成加密后,得到的矩阵即为加密后的像素值矩阵。
可选地,所述将所述元素进行数值分解为第一数值以及第二数值,包括:
设A(i,j)为所述像素值矩阵中的一个元素,将A(i,j)的第一数值设为row,第二数值记为col,按照下述公式(4)(5)分别得到row以及col:
Figure BDA0002686537730000031
Figure BDA0002686537730000032
式中:rem(x,y)为取余运算,rem(x,y)=x-y×fix(x/y),fix()表示向0取整。
可选地,所述基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵,根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像,包括:
采用第一初值x0、第二初值μ以及上述公式(1)生成一个长为m×n的随机序列Q,按照下述公式(6)(7)将所述Q转化为m×n大小的像素扩散矩阵Q′:
Q=mod(fix(T(i)×1000),256) (6)
Q′=reshape(Q,m,n) (7)
按照下述公式(8)根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像:
Figure BDA0002686537730000033
其中,1≤i≤m×n;0≤Q≤255;1≤Q′(i,j)≤t;1≤i≤m;1≤j≤n;C为得到的加密后的像素值矩阵对应的图像;为C′像素扩散后得到的加密图像。
根据本发明实施例的第二方面,提供一种基于索引矩阵的图像加密装置,包括:
所述装置包括加密模块和解密模块两个部分;
所述加密模块,用于:
获取待加密图像的像素值矩阵,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据所述第一初值x0、第二初值μ记忆下述公式Logistic映射(1),生成一个长度为256且各元素互不相等的随机序列:
xk+1=μxk(1-xk) (1)
其中,3.569945≤μ≤4,xk∈[0,1];
根据生成的序列生成索引矩阵;
基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵,通过所述加密步长矩阵以及所述索引矩阵对待加密图像的像素值矩阵进行加密,得到加密后的像素值矩阵;
基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵,根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像;
所述解密模块,用于:
获取加密图像,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据所述第一初值x0、第二初值μ以及上述公式(1),生成一个长度为256且各元素互不相等的序列;
根据生成的序列生成索引矩阵;
基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵;
基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵;
通过所述像素扩散矩阵以及所述加密图像像素值矩阵,得到所述像素扩散前的加密图像像素值矩阵;
通过所述加密步长矩阵对所述像素扩散前的加密图像像素值矩阵进行解密,得到加密前的原始图像。
可选地,所述加密模块,用于:
通过对去重后的随机序列排序,并按序记录各元素在排序前的位置编号值,得到一个长度为256、各元素互不相同、且恰好能填充满0~255区间的、由所述位置编号值组成的正整数序列,将得到的正整数序列转换为尺寸为10×26大小索引矩阵的前256位,后4位由不属于0~255的任意指定值进行填充。
可选地,所述加密模块,用于:
选取t,其中,t为1:T内的随机数(1≤t≤T),
采用上述公式(1)生成一个长为m×n的序列T′,对T′作如下述公式(2)(3)的变换:
T″=mod(fix(T′(i)×1000),T′)+1,1≤i≤m×n则:1≤T′≤t; (2)
S=reshape(T″,m,n)1≤S(i,j)≤t,1≤i≤m,1≤j≤n; (3)
其中,S即为所述像素值矩阵对应的加密步长矩阵,m、n为所述待加密图像的像素尺寸;fix()表示向0取整,mod()取模运算,reshape()是重新调整矩阵中元素的行数、列数、维数的运算。
可选地,所述加密模块,用于:
将所述像素值矩阵中的每个元素转化为三位数;
对于所述待加密图像的像素值矩阵中任一元素,将所述元素进行数值分解为第一数值以及第二数值,其中,所述第一数值为所述三位数的元素的前两位数值,所述第二数值为所述三位数的元素的最后一位数值,将所述第一数值与所述第二数值确定为所述元素的行序号以及列序号,根据所述元素的行序号与列序号,在所述索引矩阵中查找所述元素对应的加密元素,此为完成元素的一次加密,在所述加密步长矩阵中确定所述像素值矩阵的元素对应的加密步长元素,根据所述加密步长元素对所述像素值矩阵中的元素进行加密;
当根据所述加密步长矩阵对所述像素值矩阵中的每个元素均完成加密后,得到的矩阵即为加密后的像素值矩阵。
可选地,所述加密模块,用于:
设A(i,j)为所述索引矩阵中的一个元素,将A(i,j)的第一数值设为row,第二数值记为col,按照下述公式(4)(5)分别得到row以及col:
Figure BDA0002686537730000051
Figure BDA0002686537730000052
式中:rem(x,y)为取余运算,rem(x,y)=x-y×fix(x/y),fix()表示向0取整。
可选地,所述加密模块,用于:
采用第一初值x0、第二初值μ以及上述公式(1)生成一个长为m×n的随机序列Q,按照下述公式(6)(7)将所述Q转化为m×n大小的像素扩散矩阵Q′:
Q=mod(fix(T(i)×1000),256) (6)
Q′=reshape(Q,m,n) (7)
按照下述公式(8)根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像:
Figure BDA0002686537730000061
其中,1≤i≤m×n;0≤Q≤255;1≤Q′(i,j)≤t;1≤i≤m;1≤j≤n;C为得到的加密后的像素值矩阵对应的图像;为C′像素扩散后得到的加密图像。
根据本发明实施例的第三方面,提供一种终端,包括:
一个或多个处理器;
用于存储所述一个或多个处理器可执行指令的存储器;
其中,所述一个或多个处理器被配置为:
执行本发明实施例的第一方面所述的方法。
根据本发明实施例的第四方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行本发明实施例的第一方面所述的方法。
根据本发明实施例的第五方面,提供一种应用程序产品,当应用程序产品在终端在运行时,使得终端执行本发明实施例的第一方面所述的方法。
本发明的实施例提供的技术方案可以包括以下有益效果:
(1)利用低维混沌序列构建一个大小为10×26的索引矩阵,索引矩阵的行号和列号恰好能组成图像的256个灰度级,利用索引矩阵行号、列号的组合与分解,直接在索引矩阵中进行查值替换,便能实现图像的加密与解密。
(2)构造的索引矩阵,运算量小,生成速度快,随机性强,且加密过程不需要复杂数学运算,主要依赖行号与号列组合与分解查表即可完成,可以极大提高加解密速度,有明显的效率优势。
(3)该方法通过性强,适合于任意大小、任意比例、任意格式由256个灰度级构成的图像。
(4)混沌系统与索引矩阵的结合发挥了混沌的强安全性和大密钥空间特性,也兼顾了运行效率,通过简单的操作和低的处理负载,便得到一种高安全性、高效的图像加密算法。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种基于索引矩阵的图像加密方法的流程图;
图2是根据一示例性实施例示出的一种基于索引矩阵的图像加密方法的流程图;
图3是根据一示例性实施例示出的一种基于索引矩阵的图像加密方法的流程示意图;
图4是根据一示例性实施例示出的一种基于索引矩阵的图像加密方法的流程示意图;
图5是根据一示例性实施例示出的一种基于索引矩阵的图像加密方法的试验结果示意图;
图6是根据一示例性实施例示出的一种基于索引矩阵的图像加密方法的流程示意图;
图7是根据一示例性实施例示出的一种基于索引矩阵的图像加密方法的流程示意图;
图8是根据一示例性实施例示出的一种基于索引矩阵的图像加密装置框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种基于索引矩阵的图像加密方法的流程图,如图1所示,该方法用于终端中,该方法包括加密过程和解密过程两个部分;
加密过程包括:
步骤101、获取待加密图像的像素值矩阵,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据第一初值x0、第二初值μ记忆下述公式Logistic映射(1),生成一个长度为256且各元素互不相等的随机序列:
xk+1=μxk(1-xk) (1)
其中,3.569945≤μ≤4,xk∈[0,1];
步骤102、根据生成的序列生成索引矩阵;
步骤103、基于总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵,通过加密步长矩阵以及索引矩阵对待加密图像的像素值矩阵进行加密,得到加密后的像素值矩阵;
步骤104、基于第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵,根据像素扩散矩阵对加密后的像素值矩阵进行像素扩散,得到加密图像;
解密过程包括:
步骤105、获取加密图像,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据第一初值x0、第二初值μ以及上述公式(1),生成一个长度为256且各元素互不相等的序列;
步骤106、根据生成的序列生成索引矩阵;
步骤107、基于总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵;
步骤108、基于第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵;
步骤109、通过像素扩散矩阵以及加密图像的像素值矩阵,得到像素扩散前的加密图像的像素值矩阵;
步骤110通过加密步长矩阵对像素扩散前的加密图像的像素值矩阵进行解密,得到加密前的原始图像。
可选地,根据生成的序列生成索引矩阵,包括:
通过对去重后的随机序列排序,并按序记录各元素在排序前的位置编号值,得到一个长度为256、各元素互不相同、且恰好能填充满0~255区间的、由所述位置编号值组成的正整数序列,将得到的正整数序列转换为尺寸为10×26大小索引矩阵的前256位,后4位由不属于0~255的任意指定值进行填充。
可选地,基于总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵,包括:
选取t,其中,t为1:T内的随机数(1≤t≤T),
采用上述公式(1)生成一个长为m×n的序列T′,对T′作如下述公式(2)(3)的变换:
T″=mod(fix(T′(i)×1000),T′)+1,1≤i≤m×n则:1≤T′≤t; (2)
S=reshape(T″,m,n)1≤S(i,j)≤t,1≤i≤m,1≤j≤n; (3)
其中,S即为索引矩阵对应的加密步长矩阵,m、n为待加密图像的像素尺寸;fix()表示向0取整,mod()取模运算,reshape()是重新调整矩阵中元素的行数、列数、维数的运算。
可选地,通过加密步长矩阵以及索引矩阵对待加密图像的像素值矩阵进行加密,得到加密后的像素值矩阵,包括:
将像素值矩阵中的每个元素转化为三位数;
对于待加密图像的像素值矩阵中任一元素,将元素进行数值分解为第一数值以及第二数值,其中,第一数值为三位数的元素的前两位数值,第二数值为所述三位数的元素的最后一位数值,将第一数值与第二数值确定为元素的行序号以及列序号,根据元素的行序号与列序号,在索引矩阵中查找元素对应的加密元素,此为完成元素的一次加密,在加密步长矩阵中确定像素值矩阵的元素对应的加密步长元素,根据加密步长元素对像素值矩阵中的元素进行加密;
当根据加密步长矩阵对像素值矩阵中的每个元素均完成加密后,得到的矩阵即为加密后的像素值矩阵。
可选地,将元素进行数值分解为第一数值以及第二数值,包括:
设A(i,j)为索引矩阵中的一个元素,将A(i,j)的第一数值设为row,第二数值记为col,按照下述公式(4)(5)分别得到row以及col:
Figure BDA0002686537730000091
Figure BDA0002686537730000092
式中:rem(x,y)为取余运算,rem(x,y)=x-y×fix(x/y),fix()表示向0取整。
可选地,基于第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵,根据像素扩散矩阵对加密后的像素值矩阵进行像素扩散,得到加密图像,包括:
采用第一初值x0、第二初值μ以及上述公式(1)生成一个长为m×n的随机序列Q,按照下述公式(6)(7)将Q转化为m×n大小的像素扩散矩阵Q′:
Q=mod(fix(T(i)×1000),256) (6)
Q′=reshape(Q,m,n) (7)
按照下述公式(8)根据像素扩散矩阵对加密后的像素值矩阵进行像素扩散,得到加密图像:
Figure BDA0002686537730000101
其中,1≤i≤m×n;0≤Q≤255;1≤Q′(i,j)≤t;1≤i≤m;1≤j≤n;C为得到的加密后的像素值矩阵对应的图像;为C′像素扩散后得到的加密图像。
本发明的实施例中:
(1)利用低维混沌序列构建一个大小为10×26的索引矩阵,索引矩阵的行号和列号恰好能组成图像的256个灰度级,利用索引矩阵行号、列号的组合与分解,直接在索引矩阵中进行查值替换,便能实现图像的加密与解密;
(2)构造的索引矩阵,运算量小,生成速度快,随机性强,且加密过程不需要复杂数学运算,主要依赖行号与号列组合与分解查表即可完成,可以极大提高加解密速度,有明显的效率优势。
(3)该方法通过性强,适合于任意大小、任意比例、任意格式由256个灰度级构成的图像.
(4)混沌系统与索引矩阵的结合发挥了混沌的强安全性和大密钥空间特性,也兼顾了运行效率,通过简单的操作和低的处理负载,便得到一种高安全性、高效的图像加密算法。
图2是根据一示例性实施例示出的一种基于索引矩阵的图像加密方法的流程图,如图2所示,该方法用于终端中,本实施例以图像加密的流程进行说明,包括以下步骤。
步骤201、获取待加密图像的像素值矩阵,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据第一初值x0、第二初值μ记忆下述公式Logistic映射(1),生成一个长度为256且各元素互不相等的随机序列:
xk+1=μxk(1-xk) (1)
其中,3.569945≤μ≤4,xk∈[0,1]。
其中,Logistic映射具有确定性、伪随机性、既非周期又不收敛性、初值敏感性、不可预测性、产生速度快等特性,保证了序列生成的随机性和安全性,对此很多文献有过详细研究,在此不再赘述。
步骤202、通过对去重后的随机序列排序,并按序记录各元素在排序前的位置编号值,得到一个长度为256、各元素互不相同、且恰好能填充满0~255区间的、由位置编号值组成的正整数序列,将得到的正整数序列转换为尺寸为10×26大小索引矩阵的前256位,后4位由不属于0~255的任意指定值进行填充。
一种可行的实施方式中,根据上述公式(1),生成一个长度为256且各元素互不相等的序列Poriginal,即:当i≠j时,Pi≠Pj,i,j∈[1,256]。
对上述生成的序列Poriginal进行排序,将排序后的序列记为Prank,即:Prank=Rank(Poriginal),如果用i和j(i∈[0,255],j∈[0,255])分别表示同一数值在序列Poriginal和Prank中的位置编号,则对于任意i均有唯一的j与其一一对应,按照i从小到大的顺序,依次找出所有对应的j,并将此序列记为Pend,显然j∈[0,255],且Pend中各元素均为连续区间0:255中的整数,不遗漏,也不重复。
然后,将排序后的序列Pend改写为26×10或10×26大小的矩阵,记为M,
即:M=reshape(Pend,10,26),M即为满足以下三个条件的索引矩阵:
1)索引矩阵M的大小为26×10或10×26,至少能容纳256个值;
2)索引矩阵M中的所有元素M(i,j),必须为0:255间的整数(含0和255),即:M(i,j)∈[0,255];
3)索引矩阵M中的所有元素M(i,j)互不相等,且有256个值恰好覆盖满0:255这个连续区间.
将矩阵的行序号记为:0,1,2,…,9,列序号记为:00,01,02,…,25。如下表1所示为μ=3.95,x0=0.32568时,生成的10×26的索引矩阵M。
表1
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
0 91 112 182 176 191 29 207 35 57 87 116 56 206 61 80 45 90 253 130 6 63 223 22 228 255 38
1 172 202 46 21 54 121 2 164 189 162 64 66 251 158 218 136 171 181 1 216 160 144 79 180 210 246
2 17 214 98 219 49 133 110 212 52 236 235 193 224 83 20 239 16 226 139 122 85 25 19 197 5 78
3 77 4 196 81 148 33 140 238 123 65 161 43 145 53 175 11 244 198 242 30 149 102 174 99 215 18
4 245 209 179 59 84 129 153 135 119 187 86 237 26 190 94 71 154 100 14 126 50 60 93 47 203 173
5 37 254 227 101 159 131 243 44 31 117 150 163 128 40 8 213 141 48 74 204 55 157 177 183 113 92
6 155 72 199 24 62 27 15 194 127 106 107 88 32 248 68 201 229 147 34 186 192 82 96 138 231
7 142 12 69 222 104 146 170 67 205 234 118 169 120 221 178 165 111 184 256 105 42 39 10 241 167
8 166 240 9 249 185 225 89 7 108 115 51 152 124 23 195 36 3 28 211 114 168 247 70 13 143
9 230 137 95 41 125 252 75 217 151 233 188 109 103 58 97 76 208 132 134 232 250 220 200 73 156
步骤203、基于总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵。
一种可行的实施方式中,先选取一个t,其中,t为1:T内的随机数(1≤t≤T);
采用上述公式(1)生成一个长为m×n的序列T′,对T′作如下述公式(2)(3)的变换:
T″=mod(fix(T′(i)×1000),T′)+1,1≤i≤m×n 1≤T′≤t; (2)
S=reshape(T″,m,n)1≤S(i,j)≤t,1≤i≤m,1≤j≤n; (3)
其中,S即为索引矩阵对应的加密步长矩阵,m、n为待加密图像的像素尺寸;fix()表示向0取整,mod()取模运算,reshape()是重新调整矩阵中元素的行数、列数、维数的运算。
步骤204、通过加密步长矩阵对待加密图像的像素值矩阵进行加密,得到加密后的像素值矩阵。
一种可选的实施方式中,该步骤204可包括下述步骤2041-2044:
步骤2041、将像素值矩阵中的每个元素转化为三位数。
其中,所述第一数值为所述三位数的元素的前两位数值,所述第二数值为所述三位数的元素的最后一位数值。
具体地,如果像素值矩阵中的元素原本就是三位数,则可以不做任何更改,如果元素原本是两位数或者一位数,则通过前面补0的方法确保索引矩阵中的每个元素均为三位数,如:000,001,002,…,254,255。
步骤2042、对于像素值矩阵中任一元素,将元素进行数值分解为第一数值以及第二数值。
具体地,设A(i,j)为像素值矩阵中的一个元素,将A(i,j)的第一数值设为row,第二数值记为col,按照下述公式(4)(5)分别得到row以及col:
Figure BDA0002686537730000131
Figure BDA0002686537730000132
式中:rem(x,y)为取余运算,rem(x,y)=x-y×fix(x/y),fix()表示向0取整。
这样分解后,通常将三位数的元素的前两位分解为第一数值,将三位数的元素的最后一位分解为第二数值,举例来讲,如果元素为148,则该元素对应的第一数值为14,第二数值为8。
步骤2043、将第一数值与第二数值确定为元素的行序号以及列序号,根据元素的行序号与列序号,在索引矩阵中查找元素对应的加密元素,此为完成元素的一次加密,在加密步长矩阵中确定像素值矩阵的元素对应的加密步长元素,根据加密步长元素对像素值矩阵中的元素进行加密。
具体地,举例来讲,如图3所示,像素值A(i,j)=8,先根据步骤2051通过前面补0法补足三位,得到A(i,j)=008,再根据步骤2052通过数值分解可知:第一数值row=00,第二数值col=8,在索引矩阵M′中查找行数为00、列数为8的元素,得到M′(00,8)=166,也就是说:像素值8通过一次加密后得到的值为166。
根据上述步骤,可以完成一次图像加密,如果把一次加密后生成的图像再看作是原始图像,重复一次上述方法,就可以得到二次加密图像C2,以此类推,可以到加密图像C3、C4、C5……,如图所示。由此可以发现一个问题,对于原始图像中相同的像素值,每轮加密后得到的结果均是相同的,也就预示着:原始图像中相同的像素值,经过多次加密后得到的结果依然是相同的,这对于图像加密是一种安全隐患,一个好的图像加密方法应尽可能破坏像素间的相关性,为此,通过上述步骤204生成的加密步长矩阵来解决该问题。
加密步长矩阵的大小与待加密图像的像素大小保持相同,待加密图像的每个像素值在加密步长矩阵中都有一个对应的加密步长元素,这样,当出现有像素值相同的情况,由于两个相同的像素值对应的加密步长不同,加密后得到的加密元素也不同。举例来讲,如图4所示,当两个像素值均为8时,由于数值分解导致两个像素值对应的第一数值均为00,第二数值均为8,在索引矩阵中查到的第一次加密元素均为166,但一个像素值的加密步长为1,一个像素值的加密步长为3,加密步长为3的像素值会在第一次加密元素的基础上继续数值分解、在索引矩阵中查找第二次加密元素229,继续对第二次加密元素229进行数值分解、在索引矩阵中查找第三次加密元素200,查找到的第三次加密元素200才是该像素值对应的加密元素,由此可以看出,相同的像素值拥有不同的加密步长后,得到的加密元素是不同的。
步骤2044、当根据加密步长矩阵对像素值矩阵中的每个元素均完成加密后,得到的矩阵即为加密后的像素值矩阵。
步骤205、基于第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵,根据像素扩散矩阵对加密后的索引矩阵进行像素扩散,得到加密图像。
一种可选的实施方式中,该步骤包括以下步骤2051-2052:
步骤2051、采用第一初值x0、第二初值μ以及上述公式(1)生成一个长为m×n的随机序列Q,按照下述公式(6)(7)将Q转化为m×n大小的像素扩散矩阵Q′:
Q=mod(fix(T(i)×1000),256) (6)
Q′=reshape(Q,m,n) (7)
步骤2052、按照下述公式(8)根据像素扩散矩阵对加密后的索引矩阵进行像素扩散,得到加密图像:
Figure BDA0002686537730000141
其中,1≤i≤m×n;0≤Q≤255;1≤Q′(i,j)≤t;1≤i≤m;1≤j≤n;C为得到的加密后的像素值矩阵对应的图像;为C′像素扩散后得到的加密图像。
这样,在上述步长控制下索引矩阵加密的结果上,再进行一次像素扩散,主要是为了在密文图像上再散播明文图像,进一步改变密文图像的统计特性,防止攻击者通过成对的明文与密文比较,获取到有价值的信息,进而破解加密系统,进一步加强了图像的保密性。
基于上述步骤201-步骤205,采用是大小为512×512的标准灰度图像作为实验图像,在Windows10和Matlab2018平台上进行了仿真实验,结果如图5所示。
本发明的实施例中:
(1)利用低维混沌序列构建一个大小为10×26的索引矩阵,索引矩阵的行号和列号恰好能组成图像的256个灰度级,利用索引矩阵行号、列号的组合与分解,直接在索引矩阵中进行查值替换,便能实现图像的加密与解密;
(2)构造的索引矩阵,运算量小,生成速度快,随机性强,且加密过程不需要复杂数学运算,主要依赖行号与号列组合与分解查表即可完成,可以极大提高加解密速度,有明显的效率优势。
(3)该方法通过性强,适合于任意大小、任意比例、任意格式由256个灰度级构成的图像.
(4)混沌系统与索引矩阵的结合发挥了混沌的强安全性和大密钥空间特性,也兼顾了运行效率,通过简单的操作和低的处理负载,便得到一种高安全性、高效的图像加密算法。
图6是根据一示例性实施例示出的一种基于索引矩阵的图像加密方法的流程图,如图6所示,该方法用于终端中,本实施例以图像解密的流程进行说明,包括以下步骤。
步骤601、获取加密图像,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据第一初值x0、第二初值μ以及上述公式(1),生成一个长度为256且各元素互不相等的序列。
一种可行的实施方式中,具有查看加密图像权限的用户获得密码后,可以将密码转化为第一初值x0、第二初值μ以及总加密次数T,生成序列的方式请参照上述步骤201,此处不作赘述。
步骤602、根据生成的序列生成索引矩阵。
一种可行的实施方式中,生成索引矩阵的方式请参照上述步骤202,此处不作赘述。
步骤603、基于总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵。
一种可行的实施方式中,生成加密步长矩阵的方式请参照上述步骤203,此处不作赘述。
步骤604、基于第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵。
一种可行的实施方式中,生成加密步长矩阵的方式请参照上述步骤2051,此处不作赘述。
步骤605、通过像素扩散矩阵以及加密图像的像素值矩阵,得到像素扩散前的加密图像的像素值矩阵。
一种可行的实施方式中,此步骤为上述步骤2052的逆推,即根据公式(8)中的C′以及Q′,得到C,此处不作赘述。
步骤606、通过加密步长矩阵对像素扩散前的加密图像的像素值矩阵进行解密,得到加密前的原始图像。
一种可行的实施方式中,此步骤为上述步骤2041-2044的逆推,以像素扩散前的加密图像的像素值矩阵中的一个元素举例说明,先在加密步长矩阵中确定该元素对应的加密步长,然后在索引矩阵中查到该元素对应的行数与列数,将行数与列数组合成三位数,即为上一次的加密元素,此时加密步长减1;再将组合成的三位数在索引矩阵中查找对应的行数与列数,将行数与列数组合成三位数,即为上上次的加密元素,此时加密步长再减1……以此类推,直至加密步长等于0,停止重复上述步骤,此时得到的三位数即为原始图像的像素值。具体地:
如图7所示,在索引表中查找到与像素值C(i,j)等值的M′(u1,v1),记下C(i,j)对应的行号u1和列号v1,即当C(i,j)=M′(u1,v1)时,令:C1(i,j)=u1×10+v1,t=t-1,如果t>0,则继续在索引表中查找C1(i,j),并记下C1(i,j)在索引矩阵M′中对应行号u2和列号v2,即当C1(i,j)=M′(u2,v2)时,令:C2(i,j)=u2×10+v2,t=t-1,以此类推,直到t=0结束,当所有像素完成上述操作后,便可以还原出原始图像A,计算公式可以概括为下述公式(9):
Figure BDA0002686537730000161
本发明的实施例中:
(1)利用低维混沌序列构建一个大小为10×26的索引矩阵,索引矩阵的行号和列号恰好能组成图像的256个灰度级,利用索引矩阵行号、列号的组合与分解,直接在索引矩阵中进行查值替换,便能实现图像的加密与解密;
(2)构造的索引矩阵,运算量小,生成速度快,随机性强,且加密过程不需要复杂数学运算,主要依赖行号与号列组合与分解查表即可完成,可以极大提高加解密速度,有明显的效率优势。
(3)该方法通过性强,适合于任意大小、任意比例、任意格式由256个灰度级构成的图像.
(4)混沌系统与索引矩阵的结合发挥了混沌的强安全性和大密钥空间特性,也兼顾了运行效率,通过简单的操作和低的处理负载,便得到一种高安全性、高效的图像加密算法。
图8是根据一示例性实施例示出的一种基于索引矩阵的图像加密装置框图。参照图8,该装置包括加密模块810和解密模块820。
所述加密模块810用于:
获取待加密图像的像素值矩阵,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据所述第一初值x0、第二初值μ记忆下述公式Logistic映射(1),生成一个长度为256且各元素互不相等的随机序列:
xk+1=μxk(1-xk) (1)
其中,3.569945≤μ≤4,xk∈[0,1];
根据生成的序列生成索引矩阵;
基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵,通过所述加密步长矩阵以及所述索引矩阵对待加密图像的像素值矩阵进行加密,得到加密后的像素值矩阵;
基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵,根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像;
所述解密模块820用于:
获取加密图像,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据所述第一初值x0、第二初值μ以及上述公式(1),生成一个长度为256且各元素互不相等的序列;
根据生成的序列生成索引矩阵;
基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵;
基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵;
通过所述像素扩散矩阵以及所述加密图像像素值矩阵,得到所述像素扩散前的加密图像像素值矩阵;
通过所述加密步长矩阵对所述像素扩散前的加密图像像素值矩阵进行解密,得到加密前的原始图像。
可选地,所述加密模块810,用于:
通过对去重后的随机序列排序,并按序记录各元素在排序前的位置编号值,得到一个长度为256、各元素互不相同、且恰好能填充满0~255区间的、由所述位置编号值组成的正整数序列,将得到的正整数序列转换为尺寸为10×26大小索引矩阵的前256位,后4位由不属于0~255的任意指定值进行填充。
可选地,所述加密模块,用于:
选取t,其中,t为1:T内的随机数(1≤t≤T),
采用上述公式(1)生成一个长为m×n的序列T′,对T′作如下述公式(2)(3)的变换:
T″=mod(fix(T′(i)×1000),T′)+1,1≤i≤m×n则:1≤T′≤t; (2)
S=reshape(T″,m,n)1≤S(i,j)≤t,1≤i≤m,1≤j≤n; (3)
其中,S即为所述像素值矩阵对应的加密步长矩阵,m、n为所述待加密图像的像素尺寸;fix()表示向0取整,mod()取模运算,reshape()是重新调整矩阵中元素的行数、列数、维数的运算。
可选地,所述加密模块810,用于:
将所述像素值矩阵中的每个元素转化为三位数;
对于所述像素值矩阵中任一元素,将所述元素进行数值分解为第一数值以及第二数值,其中,所述第一数值为所述三位数的元素的前两位数值,所述第二数值为所述三位数的元素的最后一位数值,将所述第一数值与所述第二数值确定为所述元素的行序号以及列序号,根据所述元素的行序号与列序号,在所述索引矩阵中查找所述元素对应的加密元素,此为完成元素的一次加密,在所述加密步长矩阵中确定所述像素值矩阵的元素对应的加密步长元素,根据所述加密步长元素对所述像素值矩阵中的元素进行加密;
当根据所述加密步长矩阵对所述像素值矩阵中的每个元素均完成加密后,得到的矩阵即为加密后的像素值矩阵。
可选地,所述加密模块810,用于:
设A(i,j)为所述索引矩阵中的一个元素,将A(i,j)的第一数值设为row,第二数值记为col,按照下述公式(4)(5)分别得到row以及col:
Figure BDA0002686537730000181
Figure BDA0002686537730000182
式中:rem(x,y)为取余运算,rem(x,y)=x-y×fix(x/y),fix()表示向0取整。
可选地,所述加密模块810,用于:
采用第一初值x0、第二初值μ以及上述公式(1)生成一个长为m×n的随机序列Q,按照下述公式(6)(7)将所述Q转化为m×n大小的像素扩散矩阵Q′:
Q=mod(fix(T(i)×1000),256) (6)
Q′=reshape(Q,m,n) (7)
按照下述公式(8)根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像:
Figure BDA0002686537730000183
其中,1≤i≤m×n;0≤Q≤255;1≤Q′(i,j)≤t;1≤i≤m;1≤j≤n;C为得到的加密后的像素值矩阵对应的图像;为C′像素扩散后得到的加密图像。
本发明的实施例中:
(1)利用低维混沌序列构建一个大小为10×26的索引矩阵,索引矩阵的行号和列号恰好能组成图像的256个灰度级,利用索引矩阵行号、列号的组合与分解,直接在索引矩阵中进行查值替换,便能实现图像的加密与解密;
(2)构造的索引矩阵,运算量小,生成速度快,随机性强,且加密过程不需要复杂数学运算,主要依赖行号与号列组合与分解查表即可完成,可以极大提高加解密速度,有明显的效率优势。
(3)该方法通过性强,适合于任意大小、任意比例、任意格式由256个灰度级构成的图像.
(4)混沌系统与索引矩阵的结合发挥了混沌的强安全性和大密钥空间特性,也兼顾了运行效率,通过简单的操作和低的处理负载,便得到一种高安全性、高效的图像加密算法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由装置的处理器执行以完成上述基于索引矩阵的图像加密方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种应用程序产品,包括一条或多条指令,该一条或多条指令可以由装置的处理器执行,以完成上述基于索引矩阵的图像加密方法。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (8)

1.一种基于索引矩阵的图像加密方法,其特征在于,所述方法包括加密过程和解密过程两个部分;
所述加密过程包括:
获取待加密图像的像素值矩阵,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据所述第一初值x0、第二初值μ以及下述公式Logistic映射(1),生成一个长度为256且各元素互不相等的随机序列:
xk+1=μxk(1-xk) (1)
其中,3.569945≤μ≤4,xk∈[0,1];
根据生成的序列生成索引矩阵;
基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵,通过所述加密步长矩阵以及所述索引矩阵对所述待加密图像的像素值矩阵进行加密,得到加密后的像素值矩阵;
基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵,根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像;
所述解密过程包括:
获取加密图像的像素值矩阵,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据所述第一初值x0、第二初值μ以及上述公式(1),生成一个长度为256且各元素互不相等的序列;
根据生成的序列生成索引矩阵;
基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵;
基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵;
通过所述像素扩散矩阵以及所述加密图像的像素值矩阵,得到所述像素扩散前的加密图像的像素值矩阵;
通过所述加密步长矩阵对所述像素扩散前的加密图像的像素值矩阵进行解密,得到加密前的待加密图像;
其中,所述根据生成的序列生成索引矩阵,包括:
通过对去重后的随机序列排序,并按序记录各元素在排序前的位置编号值,得到一个长度为256、各元素互不相同、恰好能填充满0~255区间的、且由所述位置编号值组成的正整数序列,将得到的正整数序列转换为尺寸为10×26大小索引矩阵的前256位,后4位由不属于0~255的任意指定值进行填充。
2.根据权利要求1所述的基于索引矩阵的图像加密方法,其特征在于,所述基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵,包括:
选取t,其中,t为1~T内的随机数(1≤t≤T),
采用上述公式(1)生成一个长为m×n的序列T′,对T′作如下述公式(2)(3)的变换:
T″=mod(fix(T′(i)×1000),T′)+1,1≤i≤m×n则:1≤T′≤t; (2)
S=reshape(T″,m,n)1≤S(i,j)≤t,1≤i≤m,1≤j≤n; (3)
其中,S即为所述索引矩阵对应的加密步长矩阵,m、n为所述待加密图像的像素尺寸;fix()表示向0取整,mod()取模运算,reshape()是重新调整矩阵中元素的行数、列数、维数的运算。
3.根据权利要求1所述的基于索引矩阵的图像加密方法,其特征在于,所述通过所述加密步长矩阵以及所述索引矩阵对所述待加密图像的像素值矩阵进行加密,得到加密后的像素值矩阵,包括:
将所述待加密图像的像素值矩阵中的每个元素转化为三位数;
对于所述待加密图像的像素值矩阵中任一元素,将所述元素进行数值分解为第一数值以及第二数值,其中,所述第一数值为所述三位数的元素的前两位数值,所述第二数值为所述三位数的元素的最后一位数值,将所述第一数值与所述第二数值确定为所述元素的行序号以及列序号,根据所述元素的行序号与列序号,在所述索引矩阵中查找所述元素对应的加密元素,此为完成元素的一次加密,在所述加密步长矩阵中确定所述像素值矩阵中的元素对应的加密步长元素,根据所述加密步长元素对所述像素值矩阵中的元素进行加密;
当根据所述加密步长矩阵对所述像素值矩阵中的每个元素均完成加密后,得到的矩阵即为加密后的像素值矩阵。
4.根据权利要求3所述的基于索引矩阵的图像加密方法,其特征在于,所述将所述元素进行数值分解为第一数值以及第二数值,包括:
设A(i,j)为所述像素值矩阵中的一个元素,将A(i,j)的第一数值设为row,第二数值记为col,按照下述公式(4)(5)分别得到row以及col:
row=[A(i,j)-rem(A(i,j),10)]/10,row∈[0,25]且row∈Z (4)
col=rem(A(i,j),10),col∈[0,9],col∈Z,1≤i≤m,1≤j≤n (5)
式中:rem(x,y)为取余运算,rem(x,y)=x-y×fix(x/y),fix()表示向0取整。
5.根据权利要求1所述的基于索引矩阵的图像加密方法,其特征在于,所述基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵,根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像,包括:
采用第一初值x0、第二初值μ以及上述公式(1)生成一个长为m×n的随机序列Q,按照下述公式(6)(7)将所述Q转化为m×n大小的像素扩散矩阵Q′:
Q=mod(fix(T(i)×1000),256) (6)
Q′=reshape(Q,m,n) (7)
按照下述公式(8)根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像:
Figure FDA0003337085600000031
其中,1≤i≤m×n;0≤Q≤255;1≤Q′(i,j)≤t;1≤i≤m;1≤j≤n;C为得到的加密后的像素值矩阵对应的图像;为C′像素扩散后得到的加密图像。
6.一种基于索引矩阵的图像加密装置,其特征在于,所述装置包括加密模块和解密模块两个部分;
所述加密模块包括:
获取待加密图像,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据所述第一初值x0、第二初值μ以及下述公式Logistic映射(1),生成一个长度为256且各元素互不相等的随机序列:
xk+1=μxk(1-xk) (1)
其中,3.569945≤μ≤4,xk∈[0,1];
根据生成的序列生成索引矩阵;
基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵,通过所述加密步长矩阵以及所述索引矩阵对所述待加密图像的像素值矩阵进行加密,得到加密后的像素值矩阵;
基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵,根据所述像素扩散矩阵对所述加密后的像素值矩阵进行像素扩散,得到加密图像;
所述解密模块包括:
获取加密图像,获取由预设密码转化的第一初值x0、第二初值μ以及总加密次数T,根据所述第一初值x0、第二初值μ以及上述公式(1),生成一个长度为256且各元素互不相等的序列;
根据生成的序列生成索引矩阵;
基于所述总加密次数T、第一初值x0、第二初值μ以及公式(1),生成加密步长矩阵;
基于所述第一初值x0、第二初值μ以及公式(1),生成像素扩散矩阵;
通过所述像素扩散矩阵以及所述加密图像的像素值矩阵,得到所述像素扩散前的加密图像的像素值矩阵;
通过所述加密步长矩阵对所述像素扩散前的加密图像的像素值矩阵进行解密,得到加密前的待加密图像;
其中,所述加密模块用于:
通过对去重后的随机序列排序,并按序记录各元素在排序前的位置编号值,得到一个长度为256、各元素互不相同、恰好能填充满0~255区间的、且由所述位置编号值组成的正整数序列,将得到的正整数序列转换为尺寸为10×26大小索引矩阵的前256位,后4位由不属于0~255的任意指定值进行填充。
7.一种终端,其特征在于,包括:
一个或多个处理器;
用于存储所述一个或多个处理器可执行指令的存储器;其中,所述一个或多个处理器被配置为:执行权利要求1-5任一所述的方法。
8.一种非临时性计算机可读存储介质,其特征在于,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行一种基于索引矩阵的图像加密方法,所述方法包括:
执行权利要求1-5任一所述的方法。
CN202010978110.0A 2020-09-17 2020-09-17 基于索引矩阵的图像加密方法、装置、终端及存储介质 Expired - Fee Related CN112260815B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010978110.0A CN112260815B (zh) 2020-09-17 2020-09-17 基于索引矩阵的图像加密方法、装置、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010978110.0A CN112260815B (zh) 2020-09-17 2020-09-17 基于索引矩阵的图像加密方法、装置、终端及存储介质

Publications (2)

Publication Number Publication Date
CN112260815A CN112260815A (zh) 2021-01-22
CN112260815B true CN112260815B (zh) 2022-01-25

Family

ID=74232463

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010978110.0A Expired - Fee Related CN112260815B (zh) 2020-09-17 2020-09-17 基于索引矩阵的图像加密方法、装置、终端及存储介质

Country Status (1)

Country Link
CN (1) CN112260815B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113360890A (zh) * 2021-06-10 2021-09-07 重庆科创职业学院 基于计算机的安全认证方法及系统
CN113747353A (zh) * 2021-09-03 2021-12-03 西安陶石汇信息科技有限公司 一种基于5g通讯的实时公共交互通信系统及方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110969564A (zh) * 2019-11-29 2020-04-07 珠海大横琴科技发展有限公司 图像加密方法、装置、电子设备及可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103530571A (zh) * 2013-09-25 2014-01-22 上海理工大学 基于正弦映射和Logistic混沌序列的图像加密方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110969564A (zh) * 2019-11-29 2020-04-07 珠海大横琴科技发展有限公司 图像加密方法、装置、电子设备及可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《Image Encryption Algorithm Based on Sine-Logistic Cascade Chaos》;Fangzheng Zhao等;《2019 5th International Conference on Control, Automation and Robotics》;20190829;全文 *
《图像插值空间完全可逆可分离密文域信息隐藏算法》;王继军等;《电子学报》;20200131;全文 *

Also Published As

Publication number Publication date
CN112260815A (zh) 2021-01-22

Similar Documents

Publication Publication Date Title
CN113538203B (zh) 基于新型二维复合混沌映射与sha-256的图像加密方法和装置
Tang et al. Efficient image encryption with block shuffling and chaotic map
Zhan et al. Cross-utilizing hyperchaotic and DNA sequences for image encryption
Hosny et al. Novel encryption for color images using fractional-order hyperchaotic system
Zhu et al. A chaos-based symmetric image encryption scheme using a bit-level permutation
US6064738A (en) Method for encrypting and decrypting data using chaotic maps
CN110570344B (zh) 基于随机数嵌入和dna动态编码的图像加密方法
CN112272262B (zh) 一种图像加密、解密方法及装置
CN109800585B (zh) 一种图像插值空间完全可逆可分离密文域信息隐藏算法
CN112260815B (zh) 基于索引矩阵的图像加密方法、装置、终端及存储介质
CN111294481B (zh) 基于自更新变换、双随机三维矩阵置乱和dna计算的图像加密方法
CN105404817A (zh) 基于(k, n)门限的用户友好的可视秘密共享方法
Soni et al. A novel image encryption approach using an index based chaos and DNA encoding and its performance analysis
CN111832035A (zh) 一种图像的加密存储方法和装置
Liang et al. Color image encryption combining a reality-preserving fractional DCT with chaotic mapping in HSI space
CN115311118A (zh) 一种基于二维离散忆阻超混沌映射的遥感图像加密方法
CN110225222B (zh) 一种基于3d正交拉丁方和混沌系统的图像加密方法
Song et al. A secure image encryption algorithm based on multiple one-dimensional chaotic systems
Patro et al. Novel data encryption scheme using DNA computing
US11276138B2 (en) Image data encryption and rendering system
CN116582623A (zh) 基于混沌系统及dna动态编码的彩色图像加密方法
Gavini et al. Lossless watermarking technique for copyright protection of high resolution images
CN115103080B (zh) 一种基于dna三倍体变异的图像加密方法和系统
CN115718925A (zh) 一种具有无限区间时空混沌的全局耦合隐私图像加密方法及存储介质
Singh et al. DIP using image encryption and XOR operation affine transform

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220105

Address after: 530003 No.189, Daxue West Road, XiXiangTang District, Nanning City, Guangxi Zhuang Autonomous Region

Applicant after: GUANGXI University OF FINANCE AND ECONOMICS

Applicant after: Liu Hongyu

Applicant after: Wang Jijun

Applicant after: Li Guoxiang

Address before: 530003 No.189, Daxue West Road, XiXiangTang District, Nanning City, Guangxi Zhuang Autonomous Region

Applicant before: GUANGXI University OF FINANCE AND ECONOMICS

Applicant before: Wang Jijun

GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20220125