CN115459899A - 加密方法、装置、计算机设备及计算机可读存储介质 - Google Patents
加密方法、装置、计算机设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN115459899A CN115459899A CN202211080846.1A CN202211080846A CN115459899A CN 115459899 A CN115459899 A CN 115459899A CN 202211080846 A CN202211080846 A CN 202211080846A CN 115459899 A CN115459899 A CN 115459899A
- Authority
- CN
- China
- Prior art keywords
- matrix
- seed
- hyper
- parameters
- parameter
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/001—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using chaotic signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种加密方法、装置、计算机设备及计算机可读存储介质,涉及信息安全领域,方法包括:接收到加密请求时,获取加密请求对应的第一种子矩阵;控制第一超混沌系统模块和第二超混沌系统模块根据第一种子矩阵中的参数生成对应的结果,并利用生成的结果更新第一种子矩阵;利用更新后的第一种子矩阵中的参数得到随机数值;利用随机数值对加密请求对应的待加密对象进行加密。基于此,本发明根据两个超混沌系统生成的随机数值的方式,提升了随机数值的字段长度,进而使基于随机数值的周期性更隐蔽,从而提高了基于随机数值的加密方法的效果。
Description
技术领域
本发明涉及信息安全领域,尤其涉及一种加密方法、装置、计算机设备及计算机可读存储介质。
背景技术
在信息加密、电子交易和网络传输等安全通信领域中,采用随机数生成信息/数据的加密密钥是较为常见的做法之一。其中,因随机数可分为真随机数和伪随机数,故加密密钥可通过基于真随机数生成和基于伪随机数生成两个方式实现。
真随机数常通过基于物理设备/器件的生成方式而得到,如热噪声放大与低频采样高频等等。但是,因数据生成源,即物理设备的生成效果不稳定,导致生成的真随机数的质量难以保证,使得基于真随机数生成的密钥的质量无法估计。
而伪随机数虽然能以较简单和快速的方式生成,但大多数伪随机数生成器生成的伪随机数的周期性较为明显,进而导致基于伪随机数难以很好地应用于加密方法中。
发明内容
有鉴于此,本发明提供一种加密方法、装置、计算机设备及计算机可读存储介质,用于改善现有技术中真随机数或伪随机数质量问题导致加密效果不好的现状。
第一方面,本发明实施例提供一种加密方法,应用于计算机设备,所述计算机设备包括第一超混沌系统模块和第二超混沌系统模块,所述方法包括:
若接收到加密请求,则获取所述加密请求对应的第一种子矩阵;
控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵;
根据更新后的第一种子矩阵中的参数得到随机数值;
利用所述随机数值对所述加密请求对应的待加密对象进行加密。
可选的,在本发明实施例提供的一种可行方式中,所述若接收到加密请求,则获取所述加密请求对应的第一种子矩阵之后,所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵之前,所述方法还包括:
根据预设的矩阵扰动规则,对所述第一种子矩阵中的参数进行扰动;
所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵,包括:
控制所述第一超混沌系统模块和所述第二超混沌系统模块根据扰动后的第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新扰动后的第一种子矩阵。
可选的,在本发明实施例提供的一种可行方式中,所述第一种子矩阵包括第一种子参数、第一系统参数、第二种子参数及第二系统参数;
所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵,包括:
将所述第二系统参数和所述第二种子参数输入至所述第二超混沌系统模块,得到第一结果,并利用所述第一结果和所述第一种子参数更新所述第一种子矩阵中的第二种子参数;
将所述第一系统参数和所述第一种子参数输入至所述第一超混沌系统模块,得到第二结果,并利用所述第二结果和更新后的第二种子参数更新所述第一种子矩阵中的第一种子参数。
可选的,在本发明实施例提供的一种可行方式中,所述第一种子矩阵包括第一种子参数、第一系统参数、第二种子参数及第二系统参数;
所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵之后,所述根据更新后的第一种子矩阵中的参数得到随机数值之前,所述方法还包括:
若更新后的第二种子参数超过对应的预设值,则根据每个第二种子参数对应的预设值,对每个所述更新后的第二种子参数进行取模处理;
所述根据更新后的第一种子矩阵中的参数得到随机数值,包括:
利用取模处理后的第一种子矩阵中的参数得到随机数值。
可选的,在本发明实施例提供的一种可行方式中,所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵之后,所述根据更新后的第一种子矩阵中的参数得到随机数值之前,所述方法还包括:
针对更新后的第一种子矩阵中的参数,利用所述参数的部分参数代替所述参数,其中,所述部分参数包括小数部分参数;
所述根据更新后的第一种子矩阵中的参数得到随机数值,包括:
利用替换参数后的第一种子矩阵中的参数得到随机数值。
可选的,在本发明实施例提供的一种可行方式中,所述根据更新后的第一种子矩阵中的参数得到随机数值,包括:
基于预设矩阵置乱规则,对更新后的第一种子矩阵进行矩阵置乱处理,得到第二种子矩阵;
根据第二种子矩阵得到随机数值。
可选的,在本发明实施例提供的一种可行方式中,所述根据更新后的第一种子矩阵中的参数得到随机数值,包括:
按照预设顺序,将更新后的第一种子矩阵中的每个参数依次写入预设的第三种子矩阵,其中,所述第三种子矩阵的维度大于所述第一种子矩阵的维度;
重复执行所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵的步骤,直至执行到预设次数时,利用所述第三种子矩阵中的参数得到随机数值。
可选的,在本发明实施例提供的一种可行方式中,所述重复执行所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵的步骤,直至执行到预设次数时,利用所述第三种子矩阵中的参数得到随机数值,包括:
重复执行所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵的步骤,直至执行到预设次数时,对所述第三种子矩阵中的每个参数进行预设的量化采样处理;
将量化采样处理后的第三种子矩阵中的每个参数转换为对应的二进制数;
利用转换后的第三种子矩阵中的参数得到随机数值。
可选的,在本发明实施例提供的一种可行方式中,所述利用转换后的第三种子矩阵中的参数得到随机数值,包括:
按照所述预设顺序,将转换后的第三种子矩阵中的每个参数依次写入预设的第四种子矩阵和第五种子矩阵;
控制所述第四种子矩阵中的每个参数和第五种子矩阵中的每个参数基于异或运算进行更新;
利用执行异或运算后的第四种子矩阵中的每个参数,和执行异或运算后的第五种子矩阵中的每个参数,得到随机数值。
第二方面,本发明实施例提供一种加密装置,应用于计算机设备,所述计算机设备包括第一超混沌系统模块和第二超混沌系统模块,所述装置包括:
获取模块,用于若接收到加密请求,则获取所述加密请求对应的第一种子矩阵;
输出模块,用于控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵;
随机数值获取模块,用于根据更新后的第一种子矩阵中的参数得到随机数值;
加密模块,用于利用所述随机数值对所述加密请求对应的待加密对象进行加密。
第三方面,本发明实施例提供一种计算机设备,包括存储器以及处理器,存储器存储有计算机程序,计算机程序在处理器上运行时执行如第一方面中任一种公开的加密方法。
第四方面,本发明实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序在处理器上运行时执行如第一方面中任一种公开的加密方法。
本发明实施例提供的加密方法中,计算机设备在得到接收到加密请求时,将获取加密请求对应的第一种子矩阵,以将第一种子矩阵中的参数输入至第一超混沌系统模块和第二超混沌系统模块;接着,控制第一超混沌系统模块和第二超混沌系统模块根据第一种子矩阵中的参数,生成对应的结果,并利用生成的结果更新第一种子矩阵;随后,利用更新后的第一种子矩阵中的参数得到随机数值;最后,利用随机数值对加密请求对应的待加密对象进行加密。
基于此,本发明实施例根据两个超混沌系统生成的随机数值的方式,提升了随机数值的字段长度,进而使得基于随机数值生成的密钥的周期性更隐蔽,从而提高了密钥的质量;并且,本发明实施例提出的基于软件/算法生成随机数值的方式,使得生成的随机数值的质量能得到统一保证,因而加密效果提升。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对本发明保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。
图1示出了本发明实施例提供的第一种加密方法的流程示意图;
图2a、图2b及图2c分别示出了本发明实施例提供的加密前图像,加密后图像及解密后图像;
图3示出了本发明实施例提供的第二种加密方法的流程示意图;
图4示出了本发明实施例提供的加密装置的结构示意图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
在下文中,可在本发明的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。
此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本发明的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本发明的各种实施例中被清楚地限定。
实施例1
参照图1,示出了本发明实施例提供的第一种加密方法的流程示意图,本发明实施例提供的加密方法应用于计算机设备,所述计算机设备包括第一超混沌系统模块和第二超混沌系统模块。
可以理解的是,混沌系统用于表示一种确定但不可预测的复杂动力学状态,混沌系统的长期行为具有不可预测性和遍历性。同时,因混沌系统对初始条件,也即输入的种子参数有较高的敏感性,因此本发明实施例利用混沌系统生成可重复的、相关性低的、类似噪声的随机数值。
进一步的,经申请人测试,基于Logistic混沌系统、Lorenz混沌系统、chen混沌系统及Rossler混沌系统等混沌系统生成的随机数值的统计特性不可靠,且单个混沌系统的数据吞吐量较低,故本发明实施例采用了两个超混沌系统来实现随机数值的生成,从而解决单个混沌系统数据吞吐量较低,且单个混沌系统生成的随机数值的统计特性不可靠的问题。
需说明的是,相比于只存在一个正数李雅普诺夫指数的传统混沌系统,超混沌系统中存在两个正数李雅普诺夫指数,因而具备更丰富的混沌动力学特性。
还可以理解的是,具体采用何种超混沌系统为可根据实际情况设置的内容,如在本发明实施例提供的一种可行方式中,所述第一超混沌系统模块和所述第二超混沌系统模块均为四维超混沌系统,其中,第一超混沌系统模块如下公式(1)至(4)所示。
公式(1)至(4)中,a=10,b=8/3,c=28;当r属于区间(-1.52,-0.06)时,第一超混沌系统模块的运行过程中将存在两个李雅普诺夫指数,进而将产生超混沌现象。
第二超混沌系统模块如下公式(5)至(6)所示。
公式(5)至(6)中,a=50,b=24,c=13,f=8,g=33,h=30;当b属于区间[10,28]时,第二超混沌系统模块的运行过程中将存在两个正数李雅普诺夫指数,因而产生超混沌现象。
基于此,本发明实施例提供的加密方法包括:
S110,若接收到加密请求,则获取所述加密请求对应的第一种子矩阵。
也即,在计算机设备接收到加密请求,需生成加密请求对应的密钥时,将获取多个参数以作为前述第一超混沌系统模块和第二超混沌系统模块的种子参数,进而,在第一超混沌系统模块和第二超混沌系统模块根据种子参数生成对应的随机数值后,计算机设备利用随机数值对加密对象进行加密操作。
可以理解的是,种子参数可以采用如矩阵、集合、数组、类等方式进行存储,但在本发明实施例中,因基于矩阵的编码方式能清楚和直接地指定不同参数的更新/变化方式,且基于矩阵的变化方式较为高效,故将采用矩阵,也即第一种子矩阵完成种子参数的存储。
此外,还可以理解的是,第一种子矩阵的获取方式可根据实际情况设置,如在一种可行方式中,加密请求中已封装有第一种子矩阵,因此计算机设备在得到加密请求后,对加密请求进行解封装即可获取到第一种子矩阵。
而在另一种可行方式中,加密请求未携带/封装有第一种子矩阵,故计算机设备在接收到加密请求后,将根据预设的程序/代码/命令,生成多个参数以构成第一种子矩阵。
不难理解的是,第一种子矩阵的生成方式可根据实际情况设置的内容,如在本发明实施例提供的一种可行方式中,计算机设备首先生成一个维度为2×8的零矩阵,接着生成16个参数,并按照从左到右,从上到下的写入方式,依次将生成的16个参数写入至零矩阵中,进而完成第一种子矩阵的生成。
S120,控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵。
也即,计算机设备将第一种子矩阵中的种子参数输入至第一超混沌系统模块和第二超混沌系统模块后,将基于第一超混沌系统模块和第二超混沌系统模块的输出,对第一种子矩阵中的参数进行更新/替换,从而使第一种子矩阵中的各个参数均为第一超混沌系统模块和第二超混沌系统模块生成的随机数值。
可以理解的是,本发明实施例中的第一种子矩阵包含分别用于输入至第一超混沌系统模块和第二超混沌系统模块的参数,也即,第一种子矩阵中的部分参数用于输入至第一超混沌系统模块,另一部分参数用于输入至第二超混沌系统模块。
可选的,在本发明实施例提供的一种可行方式中,所述第一超混沌系统模块和所述第二超混沌系统模块均将根据RK4(Runge-Kutta,龙格-库塔)算法输出对应的结果。
可选的,在本发明实施例提供的一种可行方式中,当第一超混沌系统模块基于前述公式(1)至(4),第二超混沌系统模块基于前述公式(5)至(8)实现,且第一种子矩阵的维度为2×8时,第一种子矩阵中第一行的8个参数用于输入至第一超混沌系统模块,以定义第一超混沌系统模块的状态和输出;第二行的8个参数用于输入至第二超混沌系统模块,以定义第二超混沌系统模块的状态和输出。
更为具体的,设第一种子矩阵为M[2,8],其中,M[1,1:4]为第一超混沌系统模块对应的第一种子参数,即前述公式(1)至(4)中的x、y、z及w,M[1,5:8]为第一超混沌系统模块对应的第一系统参数,即公式(1)至(4)中的a、b、c及r;M[2,1:4]为第二超混沌系统模块对应的第二种子参数,表示公式(5)至(8)中的x1至x4,M[2,5:8]为第二超混沌系统模块对应的第二系统参数,代表公式(5)至(8)中的a、b、c及f。
需理解的是,因本发明实施例提供的第二超混沌系统模块对输入参数的变化较为敏感,也即,若第二超混沌系统模块的输入参数较多,则将导致第二超混沌系统模块的超混沌现象不稳定,出现值熵值不断增大或减小的现象。
由此,本发明实施例针对第二超混沌系统模块而设置的输入参数M[2,1:8]中,不包含前述公式(5)-(8)中的g和h,也即,g始终为33,h始终为30,g和h不因输入参数的变化而变化,以此确保第二超混沌系统模块的稳定运作。
S130,根据更新后的第一种子矩阵中的参数得到随机数值。
可以理解的是,本发明实施例将利用第一超混沌系统和第二超混沌系统输出的随机数值,对第一种子矩阵中的参数进行更新/替换后,更新后的第一种子矩阵中的参数均为超混沌系统生成的随机数值。进而,当更新后的第一种子矩阵中的参数均被替换/更新后,计算机设备将利用第一种子矩阵中各个参数生成一个用于加密的随机数值,从而通过随机数值加密待加密对象。
还可以理解的是,在第一种子矩阵中的参数均为随机数值时,利用第一种子矩阵中的参数,得到加密所需的随机数值的方式为可根据实际情况设置的内容,示范性的,在一种可行方式中,计算机设备按照从左至右、从上至下的顺序,依次读取第一种子矩阵中的参数,并将读取到的参数依次拼接,进而得到加密所需的随机数值。
不难理解的是,因本发明实施例采用的是双超混沌系统来完成随机数值的生成,故相比于单个混沌系统生成的随机数值更新,本发明实施例生成的随机数值的字段更长,进而周期性更长,也即,周期规律更隐蔽。不仅如此,因本发明实施例基于双超混沌系统的输出结果来得到加密所需的随机数值,因此能避免计算机设备有限的数字精度对随机数值字段长度的限制。
S140,利用所述随机数值对所述加密请求对应的待加密对象进行加密。
可以理解的是,本发明实施例中的待加密对象可以是图像、文本及其他任意由能由数字表达的对象。
例如,在具体的实施例中,待加密对象为一张通过256×256个灰度值构建的图像,进而,对待加密对象的加密流程为:获取待加密对象对应的灰度值矩阵,其中,灰度值矩阵对应前述256×256个灰度值;利用生成的随机数值对灰度值矩阵中的各个灰度值进行加密,从而完成待加密对象的加密。
为更好地说明本发明实施例提供的加密方法的有益效果,请参考图2a、图2b及图2c,分别示出了本发明实施例提供的加密前图像,加密后图像及解密后图像。不难理解的是,图2b为采用本发明实施例的加密方法,生成随机数值后,利用随机数值对图2a进行加密而得到的图像,图2c为利用随机数值对图2b进行解密而得到的图像。
本发明实施例提供的加密方法中,计算机设备在接收到加密请求时,将获取加密请求对应的第一种子矩阵,以将第一种子矩阵中的参数输入至第一超混沌系统模块和第二超混沌系统模块;接着,控制第一超混沌系统模块和第二超混沌系统模块根据第一种子矩阵中的参数生成对应的结果,并利用生成的结果更新第一种子矩阵;随后,根据更新后的第一种子矩阵中的参数得到随机数值;最后,利用随机数值对加密请求对应的待加密对象进行加密。
基于此,本发明实施例根据两个超混沌系统生成的随机数值的方式,提升了随机数值的字段长度,使得随机数值的周期性更隐蔽;并且,本发明实施例提出的基于软件/算法生成随机数值的方式,使得生成的随机数值的质量能得到统一保证,因而加密效果统一。
可选的,在本发明实施例提供的一种可行方式中,所述S110之后,所述S120之前,所述方法还包括:
根据预设的矩阵扰动规则,对所述第一种子矩阵中的参数进行扰动;
进而,所述S120,包括:
控制所述第一超混沌系统模块和所述第二超混沌系统模块根据扰动后的第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新扰动后的第一种子矩阵。
也即,本发明实施例在将第一种子矩阵中的参数输入至第一超混沌系统和第二超混沌系统前,还将对第一种子矩阵进行扰动,以使第一超混沌系统和第二超混沌系统的输入更复杂,进而提高随机数值的生成复杂度,并进一步提高随机数值的安全性。
可以理解的是,此种可行方式下,第一种子矩阵中的参数将在矩阵扰动后,基于第一超混沌系统模块的输出和第二超混沌系统模块的输出进行更新。
还可以理解的是,矩阵扰动规则的具体设置方式为可根据实际情况调整的内容,如在本发明实施例提供的一种可行方式中,所述第一种子矩阵为前述包含第一种子参数、第一系统参数、第二种子参数及第二系统参数的M[2,8],进而,对M[2,8]进行矩阵扰动的过程如公式(9)和公式(10)所示。
M[2,6]′=M[2,6]+M[1,2]/20 (9)
M[1,8]′=-1+M[1,8]/100 (10)
式中,M[2,6]’表示M[2,6]扰动后的结果,M[1,8]’表示M[1,8]扰动后的结果。
也即,此种可行方式中将对第二系统参数中的r和b进行扰动。
此外,可以理解的是,第一种子矩阵可以是在经过多次矩阵扰动后,再被输入至第一超混沌系统模块和第二超混沌系统模块,以进一步提高随机数值的生成复杂性和难以预测性,提高加密效果。
还可以理解的是,本发明实施例中,若参数带有单引号上标,即“’”,则表明参数为更新/扰动/变化后的结果,如前述公式(10)中,M[2,6]’即表示M[2,6]扰动后的结果。
需说明的是,在进行矩阵扰动时,需确保扰动后的第一种子矩阵输入至第一超混沌系统模块和第二超混沌系统模块后,第一超混沌系统模块和第二超混沌系统模块均能维持超混沌现象,也即,第一超混沌系统和第二超混沌系统中存在两个正数李雅普诺夫指数。
可选的,在本发明实施例提供的一种可行方式中,具体可参考图3,示出了本发明实施例提供的第二种加密方法的流程示意图,此种可行方式下,所述第一种子矩阵包括第一种子参数、第一系统参数、第二种子参数及第二系统参数;
进而,所述S120,包括:
S121,将所述第二系统参数和所述第二种子参数输入至所述第二超混沌系统模块,得到第一结果,并利用所述第一结果和所述第一种子参数更新所述第一种子矩阵中的第二种子参数;
S122,将所述第一系统参数和所述第一种子参数输入至所述第一超混沌系统模块,得到第二结果,并利用所述第二结果和更新后的第二种子参数更新所述第一种子矩阵中的第一种子参数。
不难发现,此种可行方式中的第一种子矩阵中的参数与前述的M[2,8]相似,均包含第一种子参数、第一系统参数、第二种子参数及第二系统参数。需说明的是,此种可行方式下的第一种子参数、第一系统参数、第二种子参数及第二系统参数的具体作用与含义与前文中的一致,故不再赘述。
可以理解的是,根据采用的第一超混沌系统模块和第二超混沌系统模块不同,第一种子矩阵的维度将发生对应的变化。为方便说明,本发明实施例将基于前述的公式(1)至(4)对应的第一超混沌系统模块和公式(5)至(8)对应的第二超混沌系统模块进行各个种子矩阵的说明,也即,采用前述的M[2,8]进行相应的说明。但需理解的是,第一种子矩阵的维度及参数设置情况需根据实际情况进行设置,并不局限于M[2,8]这一种设置方式。
可选的,在一种可行方式中,第二种子参数M[2,1:4]的更新方式如公式(11)所示。
不难理解的是,公式(11)中的较右侧的M[2,i]表示第一结果,即第二超混沌系统模块输出的随机数值,M[2,i]’表示更新后的第二系统参数。
进一步的,在完成第二系统参数M[2,1:4]的更新后,计算机设备再控制第一超混沌系统模块产生对应的第二结果,并利用第一结果和更新后的第二种子参数更新第一种子参数M[1,1:4]。
可选的,在一种可行方式中,第一种子参数M[1,1:4]的更新方式如公式(12)至公式(15)所示。
公式(14)中的mod表示模除,即利用256对M[2,2]*224进行取模运算。
不难发现,此种可行方式下,第二超混沌系统模块将对第一超混沌系统模块产生扰动,由此,本发明实施例实现了超混沌系统间的扰乱,进而能进一步提升超混沌系统的混沌动力学特性,从而提高随机数值的生成复杂度。
进一步的,在本发明实施例提供的一种可行方式中,计算机设备将重复循环执行S121和S122,以使第二种子参数和第一种子参数不断地相互更新,换言之,计算机设备将重复执行公式(11)至公式(15)。
由此,本发明实施例将实现两个超混沌系统的互相扰动,使得任一个超混沌系统的输出均将作为另一个超混沌系统的输入,从而进一步提升两个超混沌系统的混沌动力学特性,并加深随机数值的生成复杂度。
可选的,在本发明实施例提供的一种可行方式中,所述第一种子矩阵包括第一种子参数、第一系统参数、第二种子参数及第二系统参数;
进而,所述S120之后,所述S130之前,所述方法还包括:
若更新后的第二种子参数超过对应的预设值,则根据每个第二种子参数对应的预设值,对每个所述更新后的第二种子参数进行取模处理;
进而,所述S120,包括:
利用取模处理后的第一种子矩阵中的参数得到随机数值。
也即,本发明实施例将在每个第二种子参数更新后,判断每个第二系统种子是否超过对应的预设值,若是,则对超过对应预设值的第二系统参数进行缩放。
可以理解的是,每个第二种子参数对应的预设值可根据实际情况设置,如在本发明实施例提供的一种可行方式中,M[2,1:4]中每个第二种子参数对应的预设值依次为500、500、1500及2000。
可选的,在本发明实施例提供的一种可行方式中,所述S120之后,所述S130之前,所述方法还包括:
针对更新后的第一种子矩阵中的参数,利用所述参数的部分参数代替所述参数,其中,所述部分参数包括小数部分参数。
进而,所述S120,包括:
利用替换参数后的第一种子矩阵中的参数得到随机数值。
也即,此种可行方式下,本发明实施例对第一种子矩阵中的任意一个或多个参数进行二次更新,从而进一步提高第一种子矩阵中的参数的复杂度。
可以理解的是,本发明实施例中参数的部分参数为可根据实际情况设置的内容,前述的小数部分参数仅为可行的方式之一。在本发明实施例提供的另一种可行方式中,参数的部分参数指代参数的整数部分参数。
可选的,为进一步提升随机数值的生成难度,在一种可行方式中,本发明实施例将在执行所述若更新后的第二种子参数超过对应的预设值,则根据每个第二种子参数对应的预设值,对每个所述更新后的第二种子参数进行取模处理的步骤后,再执行参数替换的步骤,从而提升随机数值的生成难度。
此外,不难理解的是,具体需对第一种子矩阵中的何种参数进行二次更新为可根据实际情况设置的内容,如在本发明实施例提供的一种可行方式中,将针对第一种子参数和第二种子参数进行二次更新,也即,所述第一种子矩阵包括第一种子参数、第一系统参数、第二种子参数及第二系统参数;
进而,所述针对更新后的第一种子矩阵中的参数,利用所述参数的部分参数代替所述参数,包括:
针对更新后的第一种子矩阵中的第一种子参数和第二种子参数,利用所述第一种子参数和第二种子参数的部分参数代替对应的第一种子参数或第二种子参数。
不难发现的是,此种可行方式下,本发明实施例对第一种子参数和第二系统参数进行二次更新,也即,分别利用第一种子参数和第二种子参数的部分参数替代原有的第一种子参数/第二种子参数,从而进一步提高随机数值的复杂度。
可选的,在本发明实施例提供的一种可行方式中,所述S130包括:
基于预设矩阵置乱规则,对更新后的第一种子矩阵进行矩阵置乱处理,得到第二种子矩阵。
也即,本发明实施例将更新后的第一种子矩阵,也即替换参数后的第一种子矩阵的参数进行行置乱,或列置乱,又或行置乱和列置乱交叉进行的置乱处理,以使第一种子矩阵的参数尽可能的随机化,从而生成第二种子矩阵,进而提高后续生成密钥的复杂度。
为更好的说明本发明实施例提供的矩阵置乱方式,可参考公式(16)至公式(22),公式(16)至公式(22)为本发明实施例提出的一种可行的矩阵置乱方式。
y[1,1]=M[2,1]+M[2,2]+M[1,1] (16)
y[1,2]=M[2,2]+M[2,4]+M[1,2] (17)
y[1,3]=M[2,3]+M[2,4]+M[1,3] (18)
y[1,4]=M[2,4]+M[2,1]+M[1,4] (19)
y[2,1]=M[2,1]+M[1,1]+M[1,2] (20)
y[2,2]=M[2,2]+M[1,2]+M[1,3] (21)
y[2,3]=M[2,3]+M[1,3]+M[1,4] (22)
y[2,4]=M[2,1]+M[2,3]+M[2,4] (22)
需理解的是,此种可行方式下,第二种子矩阵为一个维度为2×4的矩阵,包含公式(16)至公式(22)中的各个y。
还需理解的是,为更方便和清楚说明本发明实施例提供的加密方法,故将以此种可行方式中的第二种子矩阵y[2,4]进行后续内容的说明。但需明确的是,第二种子矩阵y[2,4]仅是一种可行的方式,第二种子矩阵需根据实际情况设置。
可选的,为进一步提升随机数值的生成难度,在一种可行方式中,本发明实施例将在执行所述若更新后的第二种子参数超过对应的预设值,则根据每个第二种子参数对应的预设值,对每个所述更新后的第二种子参数进行取模处理的步骤,和/或执行所述针对更新后的第一种子矩阵中的参数,利用所述参数的部分参数代替所述参数的步骤之后,再执行此种可行方式中的矩阵置乱处理。
可选的,在本发明实施例提供的一种可行的方式中,所述S130,包括:
按照预设顺序,将更新后的第一种子矩阵中的每个参数依次写入预设的第三种子矩阵,其中,所述第三种子矩阵的维度大于所述第一种子矩阵的维度;
重复执行所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵的步骤,直至执行到预设次数时,利用所述第三种子矩阵中的参数得到随机数值。
需理解的是,此种可行方式下,本发明实施例将使两个超混沌系统进行多轮迭代,并根据每次的迭代结果来得到随机数值。
也即,此种可行方式下的计算机设备将在更新第一种子矩阵中的参数后,将更新后的第一种子矩阵中的参数存入第三种子矩阵,以保存此次迭代的结果,同时,控制第一超混沌系统模块和第二超混沌系统模块根据更新后的第一种子矩阵中的参数进行新一轮的迭代运算。
在完成预设次数的迭代,且每次迭代的结果均存入第三种子矩阵后,计算机设备利用第三种子矩阵中的参数得到随机数值,进而完成相应的加密。
不难理解的是,此种可行方式下,第一超混沌系统模块和第二超混沌系统模块之间存储互相干扰的情况,也即,计算机设备利用第一超混沌系统模块的输出结果更新第一种子矩阵后,更新后的第一种子矩阵中的参数将被输入至第二超混沌系统模块,由此,使得第一超混沌系统模块的输出将作为第二超混沌系统模块的输入;类似的,第二超混沌系统模块的输出将作为第一超混沌系统模块的输入。基于此,本发明实施例实现了两个超混沌系统的互相扰动。
此外,能够理解的是,计算机设备利用第一超混沌系统模块和第二超混沌系统模块输出对应的结果更新第一种子矩阵时,将采用第一超混沌系统模块输出的第一结果更新第一种子矩阵中的部分参数,并将采用第二超混沌系统模块输出的第二结果更新第一种子矩阵中的另部分参数。
基于此,本发明实施例基于两个超混沌系统互相扰动的方式,能使计算机设备生成两个相同的随机数周期间隔大幅度增加,即随机数值的周期性更隐蔽,并能有效提高随机数值的安全性和基于随机数值生成的密钥的安全性。
还需理解的是,本发明实施例采用多次生成随机数值的方式,也即,将多次更新的第一种子矩阵中的参数存入第三种子矩阵中,使得双超混沌系统的输出字段更长,进而能进一步提升输出字段的复杂性。
此外,可以理解的是,预设次数和第三种子矩阵的维度为可根据实际情况设置的内容,本发明实施例仅限定第三种子矩阵的维度需大于第一种子矩阵的维度,以确保第三种子矩阵能存入字段更长的随机数值。
可选的,在本发明实施例提供的一种可行方式中,当第一种子矩阵为前述的M[2,8]时,预设次数为2,第三种子矩阵的维度为[16,2]。
可选的,为进一步提升随机数值的复杂度,在一种可行方式中,本发明实施例将利用第二种子矩阵完成第三种子矩阵的生成。
也即,本发明实施例迭代执行以下步骤(1)-(3):(1)基于第一超混沌系统模块和第二超混沌系统模块的输出结果,对第一种子矩阵进行更新;(2)对更新后的第一种子矩阵进行前述矩阵置乱处理,得到第二种子矩阵;(3)将第二种子矩阵的参数写入第三种子矩阵。
可以理解的是,此种可行方式下将在两个超混沌系统互相扰动的基础上,增加前述的矩阵置乱处理过程,从而通过第二种子矩阵完成第三种子矩阵的写入。
例如,第二种子矩阵为前述的y[2,4],预设次数为4,第三种子矩阵的维度为[16,2]。
可选的,在本发明实施例提供的一种可行方式中,所述重复执行所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵的步骤,直至执行到预设次数时,利用所述第三种子矩阵中的参数得到随机数值,包括:
重复执行所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵的步骤,直至执行到预设次数时,对所述第三种子矩阵中的每个参数进行预设的量化采样处理;
将量化采样处理后的第三种子矩阵中的每个参数转换为对应的二进制数;
利用转换后的第三种子矩阵中的参数得到随机数值。
也即,此种可行方式下,本发明实施例为提升两个超混沌系统输出的随机数值的统计性能,将采用预设的量化采样处理方法和二进制数转换的方法,对第三种子矩阵中的每个参数进行处理。
可选的,在本发明实施例提供的一种可行方式中,得到转换后的第三种子矩阵的过程如公式(23)和公式(24)所示。
z[l,n]′=mod(z[l,n]*224,256),l∈{1,2,…,15,16},n∈{1,2} (23)
z[l,n]″=Bin(z[l,n]′)
(24)
需说明的是,公式(23)和公式(24)中的z表示维度为[16,2]的第三种子矩阵,公式(24)中的Bin表示二进制化,z[l,n]”表示z[l,n]’的二进制化结果。
根据公式(23)和公式(24)可知,此种可行方式下本发明实施例在控制第三种子矩阵中的每个参数z[l,n]乘以224以得到对应的乘算值后,控制每个参数对应的乘算值与256进行取模运算,进而完成量化采样。
此外,还需说明的是,此种可行方式中的224和256为根据实际情况设置的内容,本发明实施例中可通过其他的值完成量化采样。
可选的,在本发明实施例提供的一种可行方式中,所述利用转换后的第三种子矩阵中的参数得到随机数值,包括:
按照所述预设顺序,将转换后的第三种子矩阵中的每个参数依次写入预设的第四种子矩阵和第五种子矩阵;
控制所述第四种子矩阵中的每个参数和第五种子矩阵中的每个参数基于异或运算进行更新;
利用执行异或运算后的第四种子矩阵中的每个参数,和执行异或运算后的第五种子矩阵中的每个参数,得到随机数值。
可以理解的是,此种可行方式下,本发明实施例将第三种子矩阵拆分为两个矩阵,即第四种子矩阵和第五种子矩阵,以使第四种子矩阵和第五种子矩阵中的参数交互更新。
还可以理解的是,将第三种子矩阵中的参数写入第四和第五种子矩阵的方式为可根实际情况设置的内容,如在本发明实施例提供的一种可行方式中,计算机设备将按照从左至右,从上至下的顺序,依次读取第三种子矩阵中的参数,并将读取到的参数依次存入第四种子矩阵;当第四种子矩阵存满时,将读取到的参数依次存入第五种子矩阵。
进一步的,本发明实施例中的异或运算的执行方式亦可根据实际情况设置,如在本发明实施例提供的一种可行方式中,第四种子矩阵为w1[8,16],第五种子矩阵为w2[8,16],第四和第五种子矩阵中的参数进行异或运算的过程为:
w1[1,:]=w1[6,:]、w2[3,:]及w2[8,:]的数据从左至右相互异或;
w1[2,:]=w1[7,:]、w2[4,:]及w2[5,:]的数据从左至右相互异或;
w1[3,:]=w1[8,:]、w2[1,:]及w2[6,:]的数据从左至右相互异或;
w1[4,:]=w1[5,:]、w2[2,:]及w2[7,:]的数据从左至右相互异或;
w1[5,:]=w1[4,:]、w2[2,:]及w2[7,:]的数据从左至右相互异或;
w1[6,:]=w1[1,1]、w2[8,:]及w2[3,:]的数据从左至右相互异或;
w1[7,:]=w1[2,:]、w2[4,:]及w2[5,:]的数据从左至右相互异或;
w1[8,:]=w1[3,:]、w2[1,:]及w2[6,:]的数据从左至右相互异或;
w2[1,:]=w1[1,:]、w1[5,:]及w2[5,:]的数据从左至右相互异或;
w2[2,:]=w1[2,:]、w1[6,:]及w2[6,:]的数据从左至右相互异或;
w2[3,:]=w1[3,:]、w1[7,:]及w2[7,:]的数据从左至右相互异或;
w2[4,:]=w1[4,:]、w1[8,:]及w2[8,:]的数据从左至右相互异或;
w2[5,:]=w1[5,:]、w1[6,:]、w2[1,:]及w2[2,:]的数据从左至右相互异或;
w2[6,:]=w1[1,:]、w1[2,:]、w1[3,:]及w1[4,:]的数据从左至右相互异或;
w2[7,:]=w1[1,:]、w1[4,:]、w1[5,:]及w1[8,:]的数据从左至右相互异或;
w2[8,:]=w1[7,:]、w1[8,:]、w2[3,:]及w2[4,:]的数据从左至右相互异或。
示范性的,以第四种子矩阵中的第一行的第一个参数,即w1中w1[1,:]内的w1[1,1]为例,w1[1,1]的更新如公式(25)所示。
实施例2
与本发明实施例1提供的加密方法相对应的,本发明实施例2还提供一种加密装置,参照图4,示出了本发明实施例提供的加密装置200的结构示意图,本发明实施例提供的加密装置200应用于计算机设备,所述计算机设备包括第一超混沌系统模块和第二超混沌系统模块,所述装置包括:
获取模块210,用于若接收到加密请求,则获取所述加密请求对应的第一种子矩阵;
输出模块220,用于控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵;
随机数值获取模块230,用于根据更新后的第一种子矩阵中的参数得到随机数值;
加密模块240,用于利用所述随机数值对所述加密请求对应的待加密对象进行加密。
可选的,在本发明实施例提供的一种可行方式中,所述装置还包括:
扰动模块,用于根据预设的矩阵扰动规则,对所述第一种子矩阵中的参数进行扰动;
控制所述第一超混沌系统模块和所述第二超混沌系统模块根据扰动后的第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新扰动后的第一种子矩阵。
可选的,在本发明实施例提供的一种可行方式中,所述第一种子矩阵包括第一种子参数、第一系统参数、第二种子参数及第二系统参数;
所述输出模块,包括:
第一更新子模块,用于将所述第二系统参数和所述第二种子参数输入至所述第二超混沌系统模块,得到第一结果,并利用所述第一结果和所述第一种子参数更新所述第一种子矩阵中的第二种子参数;
第二更新子模块,用于将所述第一系统参数和所述第一种子参数输入至所述第一超混沌系统模块,得到第二结果,并利用所述第二结果和更新后的第二种子参数更新所述第一种子矩阵中的第一种子参数。
可选的,在本发明实施例提供的一种可行方式中,所述装置还包括:
取模模块,用于若更新后的第二种子参数超过对应的预设值,则根据每个第二种子参数对应的预设值,对每个所述更新后的第二种子参数进行取模处理;
所述随机数值获取模块还用于利用取模处理后的第一种子矩阵中的参数得到随机数值。
可选的,在本发明实施例提供的一种可行方式中,所述生成模块,包括:
替换模块,用于针对更新后的第一种子矩阵中的参数,利用所述参数的部分参数代替所述参数,其中,所述部分参数包括小数部分参数;
所述随机数值获取模块还用于利用替换参数后的第一种子矩阵中的参数得到随机数值。
可选的,在本发明实施例提供的一种可行方式中,所述随机数值获取模块,包括:
置乱子模块,用于基于预设矩阵置乱规则,对更新后的第一种子矩阵进行矩阵置乱处理,得到第二种子矩阵;
随机数值得到子模块,用于根据第二种子矩阵得到随机数值。
可选的,在本发明实施例提供的一种可行方式中,所述随机数值获取模块,包括:
写入子模块,用于按照预设顺序,将更新后的第一种子矩阵中的每个参数依次写入预设的第三种子矩阵,其中,所述第三种子矩阵的维度大于所述第一种子矩阵的维度;
循环子模块,用于重复执行所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵的步骤,直至执行到预设次数时,利用所述第三种子矩阵中的参数得到随机数值。
可选的,在本发明实施例提供的一种可行方式中,所述循环子模块,包括:
量化采样单元,用于重复执行所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵的步骤,直至执行到预设次数时,对所述第三种子矩阵中的每个参数进行预设的量化采样处理;
转换单元,用于将量化采样处理后的第三种子矩阵中的每个参数转换为对应的二进制数;
随机数值取得单元,用于利用转换后的第三种子矩阵中的参数得到随机数值。
可选的,在本发明实施例提供的一种可行方式中,所述随机数值取得单元,包括:
参数存入子单元,用于按照所述预设顺序,将转换后的第三种子矩阵中的每个参数依次写入预设的第四种子矩阵和第五种子矩阵;
异或运算子单元,用于控制所述第四种子矩阵中的每个参数和第五种子矩阵中的每个参数基于异或运算进行更新;
随机数值输出子单元,用于利用执行异或运算后的第四种子矩阵中的每个参数,和执行异或运算后的第五种子矩阵中的每个参数,得到随机数值。
本申请实施例提供的加密装置200能够实现实施例1对应的加密方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机设备,包括存储器以及处理器,存储器存储有计算机程序,计算机程序在处理器上运行时执行如实施例1对应的加密方法。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序在处理器上运行时执行如实施例1对应的加密方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。
Claims (12)
1.一种加密方法,其特征在于,应用于计算机设备,所述计算机设备包括第一超混沌系统模块和第二超混沌系统模块,所述方法包括:
若接收到加密请求,则获取所述加密请求对应的第一种子矩阵;
控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵;
根据更新后的第一种子矩阵中的参数得到随机数值;
利用所述随机数值对所述加密请求对应的待加密对象进行加密。
2.根据权利要求1所述的加密方法,其特征在于,所述若接收到加密请求,则获取所述加密请求对应的第一种子矩阵之后,所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵之前,所述方法还包括:
根据预设的矩阵扰动规则,对所述第一种子矩阵中的参数进行扰动;
所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵,包括:
控制所述第一超混沌系统模块和所述第二超混沌系统模块根据扰动后的第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新扰动后的第一种子矩阵。
3.根据权利要求1所述的加密方法,其特征在于,所述第一种子矩阵包括第一种子参数、第一系统参数、第二种子参数及第二系统参数;
所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵,包括:
将所述第二系统参数和所述第二种子参数输入至所述第二超混沌系统模块,得到第一结果,并利用所述第一结果和所述第一种子参数更新所述第一种子矩阵中的第二种子参数;
将所述第一系统参数和所述第一种子参数输入至所述第一超混沌系统模块,得到第二结果,并利用所述第二结果和更新后的第二种子参数更新所述第一种子矩阵中的第一种子参数。
4.根据权利要求1所述的加密方法,其特征在于,所述第一种子矩阵包括第一种子参数、第一系统参数、第二种子参数及第二系统参数;
所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵之后,所述根据更新后的第一种子矩阵中的参数得到随机数值之前,所述方法还包括:
若更新后的第二种子参数超过对应的预设值,则根据每个第二种子参数对应的预设值,对每个所述更新后的第二种子参数进行取模处理;
所述根据更新后的第一种子矩阵中的参数得到随机数值,包括:
利用取模处理后的第一种子矩阵中的参数得到随机数值。
5.根据权利要求1所述的加密方法,其特征在于,所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵之后,所述根据更新后的第一种子矩阵中的参数得到随机数值之前,所述方法还包括:
针对更新后的第一种子矩阵中的参数,利用所述参数的部分参数代替所述参数,其中,所述部分参数包括小数部分参数;
所述根据更新后的第一种子矩阵中的参数得到随机数值,包括:
利用替换参数后的第一种子矩阵中的参数得到随机数值。
6.根据权利要求1所述的加密方法,其特征在于,所述根据更新后的第一种子矩阵中的参数得到随机数值,包括:
基于预设矩阵置乱规则,对更新后的第一种子矩阵进行矩阵置乱处理,得到第二种子矩阵;
根据第二种子矩阵得到随机数值。
7.根据权利要求1所述的加密方法,其特征在于,所述根据更新后的第一种子矩阵中的参数得到随机数值,包括:
按照预设顺序,将更新后的第一种子矩阵中的每个参数依次写入预设的第三种子矩阵,其中,所述第三种子矩阵的维度大于所述第一种子矩阵的维度;
重复执行所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵的步骤,直至执行到预设次数时,利用所述第三种子矩阵中的参数得到随机数值。
8.根据权利要求7所述的加密方法,其特征在于,所述重复执行所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵的步骤,直至执行到预设次数时,利用所述第三种子矩阵中的参数得到随机数值,包括:
重复执行所述控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵的步骤,直至执行到预设次数时,对所述第三种子矩阵中的每个参数进行预设的量化采样处理;
将量化采样处理后的第三种子矩阵中的每个参数转换为对应的二进制数;
利用转换后的第三种子矩阵中的参数得到随机数值。
9.根据权利要求8所述的加密方法,其特征在于,所述利用转换后的第三种子矩阵中的参数得到随机数值,包括:
按照所述预设顺序,将转换后的第三种子矩阵中的每个参数依次写入预设的第四种子矩阵和第五种子矩阵;
控制所述第四种子矩阵中的每个参数和第五种子矩阵中的每个参数基于异或运算进行更新;
利用执行异或运算后的第四种子矩阵中的每个参数,和执行异或运算后的第五种子矩阵中的每个参数,得到随机数值。
10.一种加密装置,其特征在于,应用于计算机设备,所述计算机设备包括第一超混沌系统模块和第二超混沌系统模块,所述装置包括:
获取模块,用于若接收到加密请求,则获取所述加密请求对应的第一种子矩阵;
输出模块,用于控制所述第一超混沌系统模块和所述第二超混沌系统模块根据所述第一种子矩阵中的参数,输出对应的结果,并利用所述结果更新所述第一种子矩阵;
随机数值获取模块,用于根据更新后的第一种子矩阵中的参数得到随机数值;
加密模块,用于利用所述随机数值对所述加密请求对应的待加密对象进行加密。
11.一种计算机设备,其特征在于,包括存储器以及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行如权利要求1-9任一项所述的加密方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序在处理器上运行时执行如权利要求1-9任一项所述的加密方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211080846.1A CN115459899A (zh) | 2022-09-05 | 2022-09-05 | 加密方法、装置、计算机设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211080846.1A CN115459899A (zh) | 2022-09-05 | 2022-09-05 | 加密方法、装置、计算机设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115459899A true CN115459899A (zh) | 2022-12-09 |
Family
ID=84303829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211080846.1A Pending CN115459899A (zh) | 2022-09-05 | 2022-09-05 | 加密方法、装置、计算机设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115459899A (zh) |
-
2022
- 2022-09-05 CN CN202211080846.1A patent/CN115459899A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | A new simple one-dimensional chaotic map and its application for image encryption | |
Liu et al. | A new image encryption algorithm based on logistic chaotic map with varying parameter | |
Souyah et al. | An image encryption scheme combining chaos-memory cellular automata and weighted histogram | |
Norouzi et al. | An image encryption algorithm based on DNA sequence operations and cellular neural network | |
Chen et al. | Image security system using recursive cellular automata substitution | |
Hanis et al. | Double image compression and encryption scheme using logistic mapped convolution and cellular automata | |
Chen et al. | Novel SCAN-CA-based image security system using SCAN and 2-D von Neumann cellular automata | |
Brahim et al. | A new image encryption scheme based on a hyperchaotic system & multi specific S-boxes | |
Bouslehi et al. | Innovative image encryption scheme based on a new rapid hyperchaotic system and random iterative permutation | |
Yang et al. | A cubic map chaos criterion theorem with applications in generalized synchronization based pseudorandom number generator and image encryption | |
He et al. | A novel image encryption algorithm based on the delayed maps and permutation‐confusion‐diffusion architecture | |
Zheng et al. | An image encryption algorithm based on multichaotic system and DNA coding | |
Chen et al. | A novel image encryption scheme based on PWLCM and standard map | |
Panduranga et al. | Hybrid approach for image encryption using scan patterns and carrier images | |
Dong et al. | Self‐Adaptive Image Encryption Algorithm Based on Quantum Logistic Map | |
Chen et al. | Image encryption using progressive cellular automata substitution and SCAN | |
CN109639423B (zh) | 一种解密算法的构成装置 | |
Tang et al. | Secure and Efficient Image Compression‐Encryption Scheme Using New Chaotic Structure and Compressive Sensing | |
Pu et al. | Chaotic multimedia stream cipher scheme based on true random sequence combined with tree parity machine | |
Rifa et al. | Product perfect Z 2 Z 4-linear codes in steganography | |
CN115459899A (zh) | 加密方法、装置、计算机设备及计算机可读存储介质 | |
Vanitha et al. | Bio-medical image encryption using the modified chaotic image encryption method | |
CN110086619B (zh) | 密钥流生成方法及装置 | |
Khavya et al. | Design and analysis of a secure coded communication system using chaotic encryption and turbo product code decoder | |
JP2012049765A (ja) | 秘匿性増強処理演算装置およびこれを備えた量子暗号通信端末 |
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 |