掌桥专利:专业的专利平台
掌桥专利
首页

基于多参数分形排序向量的明文信息加密方法及系统

文献发布时间:2024-04-18 20:02:18


基于多参数分形排序向量的明文信息加密方法及系统

技术领域

本公开涉及信息安全技术领域,具体涉及基于多参数分形排序向量的明文信息加密方法及系统。

背景技术

本部分的陈述仅仅是提供了与本公开相关的背景技术信息,不必然构成在先技术。

文件加密是对信息安全的基本要求,文件加密系统通过加密算法将明文改变成密文,密文文件只能在安装有加密客户端的设备上浏览和编辑,发送到其他外部设备上无法通过任何方式获取文件内容,可以有效防止有意或无意泄密事件的发生。

混沌密码学是一种新的密码加密算法,具有简单、高效、安全等优点。混沌密码学是混沌理论的一个重要的应用领域。混沌用于密码学主要依据混沌的基本特性,即随机性、遍历性、确定性和对初始条件的敏感性,混沌密码体系在结构上与传统密码学理论中的混淆(Confusion)和扩散(Diffusion)概念联系起来,混沌理论和纯粹密码学之间的必然联系形成了混沌密码学。

在混沌密码研究中,置乱过程是保障密码算法的安全性的重要步骤。为了进一步增强置乱的效果,基于混沌序列索引与其他方法结合的置乱过程被设计在混沌加密算法中。为了进一步提高加扰效果,在混沌加密算法中设计了基于混沌与其他技术相结合的加扰方法。尽管这类置乱方法可以通过改变比特的位置,在减少明文信息数据的比特之间的相关性方面相当有效,但设计像比特置变换的过程仍然很复杂。

发明内容

本公开为了解决上述问题,提出了基于多参数分形排序向量的明文信息加密方法及系统,提供一种多参数分形排序向量的构造方法并将其作为空间位置映射,设计基于多参数分形排序向量置乱过程的加密算法,在密码算法的置乱过程中,增强了明文信息在加密过程中的空间位置变换的复杂性。

根据一些实施例,本公开采用如下技术方案:

基于多参数分形排序向量的明文信息加密方法,包括:

获取明文信息数据,转化为序列向量并计算明文信息数据长度;

获取密钥,根据双参数分形排序向量迭代方法获取多参数分形排序向量,将密钥初始值带入二维混沌系统获取两个混沌序列;

求取混沌序列中各元素的升序排序位置索引并标记,将明文信息数据的多参数分形排序向量和各元素的升序排序位置作为比特位置置乱索引进行置乱得到置乱数据;

对所述置乱数据进行扩散获取密文数据,实现明文信息数据到密文数据的转换,对明文信息数据进行加密的过程。

根据一些实施例,本公开采用如下技术方案:

基于多参数分形排序向量的明文信息加密系统,包括:

数据获取模块,用于获取明文信息数据,转化为序列向量并计算明文信息数据长度;

置乱模块,用于获取密钥,根据双参数分形排序向量迭代方法获取多参数分形排序向量,将密钥初始值带入二维混沌系统获取两个混沌序列;

求取混沌序列中各元素的升序排序位置索引并标记,将明文信息数据的多参数分形排序向量和各元素的升序排序位置作为比特位置置乱索引进行置乱得到置乱数据;

加密模块,用于对所述置乱数据进行扩散获取密文数据,实现明文信息数据到密文数据的转换,对明文信息数据进行加密的过程。

根据一些实施例,本公开采用如下技术方案:

一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质用于存储计算机指令,所述计算机指令被处理器执行时,实现所述的基于多参数分形排序向量的明文信息加密方法。

根据一些实施例,本公开采用如下技术方案:

一种电子设备,包括:处理器、存储器以及计算机程序;其中,处理器与存储器连接,计算机程序被存储在存储器中,当电子设备运行时,所述处理器执行所述存储器存储的计算机程序,以使电子设备执行实现所述的基于多参数分形排序向量的明文信息加密方法。

与现有技术相比,本公开的有益效果为:

本公开提供了一种基于多参数分形排序向量的明文信息加密方法,设计了多参数分形排序向量的构造方法,通过对初始排序向量中的元素和整体进行运算,实现由多个初始排序向量的相对简单数学向量得到多参数分形排序向量的复杂数学向量。设计了以多参数分形排序向量为空间位置映射的置乱方法,依据多参数分形排序向量作为空间位置映射作为待加密数据的空间位置变换的位置索引将数据从原位置变更到新的位置,通过运用多参数分形排序向量的复杂性,将其运用到信息数据的空间位置变换过程中,以多参数分形排序向量作为信息数据的空间位置变化的位置索引进行变换,可以使得原始的信息数据的位置关系发生较大变化,从而提升置乱过程的效果。设计基于明文信息数据的密钥生成器,将明文信息数据依靠Hash函数得到Hash序列,再有Hash序列转化方法将16进制的序列转化为密钥,获得与明文信息紧密相关的混沌加密算法的密钥,进而提升密钥的安全性和算法抵抗差分攻击的能力。

本公开设计了基于多参数分形排序向量的混沌密码系统,包括Hash序列转化方法、基于明文信息数据的密钥生成器和基于多参数分形排序向量的混沌密码算法。该混沌密码系统具有抵抗各类攻击的能力,同时也因为引入了分形排序向量的运算使得其在实现同等加密效果时所使用的计算量更小。也就是说,基于多参数分形排序向量的混沌密码系统同时具有良好的安全性和计算效率、

附图说明

构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。

图1为本公开实施例的基于多参数分形排序向量的明文信息加密方法流程示意图;

图2为本公开实施例的多参数分形排序向量置乱在长宽相同的数据中的示例;

图3为本公开实施例的多参数分形排序向量置乱在长宽不同的数据中的示例;

图4为本公开实施例的多参数分形排序向量的构造方法的示例。

具体实施方式

下面结合附图与实施例对本公开作进一步说明。

应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。

需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。

实施例1

本公开的一种实施例中提供了一种基于多参数分形排序向量的明文信息加密方法,包括:

步骤一:获取明文信息数据,转化为序列向量并计算明文信息数据长度;

步骤二:获取密钥,根据双参数分形排序向量迭代方法获取多参数分形排序向量,将密钥初始值带入二维混沌系统获取两个混沌序列;

步骤三:求取混沌序列中各元素的升序排序位置索引并标记,将明文信息数据的多参数分形排序向量和各元素的升序排序位置作为比特位置置乱索引进行置乱得到置乱数据;

步骤四:对所述置乱数据进行扩散获取密文数据,实现明文信息数据到密文数据的转换,对明文信息数据进行加密的过程。

排序向量可被理解为是由元素1作为最小元素、由向长度作为最大元素且向量中各个元素互相不等的整数元素组成的向量。

分形排序向量是在排序向量的基础上提出的。分形排序向量是具有复杂性、自相似性和无界性等分形特性的排序向量。

多参数分形排序向量是指由多个初始排序向量按照一定的映射得到的具有复杂性、自相似性和无界性等分形特性的排序向量,多参数分形排序向量的长度是根据分形的特性和映射函数可计算的。

作为一种实施例,本公开的一种基于多参数分形排序向量的明文信息加密方法,具体的实施过程包括:

步骤1:获取明文信息数据,转化为序列向量并计算明文信息数据长度;

步骤2:获取密钥,根据双参数分形排序向量迭代方法获取多参数分形排序向量,将密钥初始值带入二维混沌系统获取两个混沌序列;

步骤3:求取混沌序列中各元素的升序排序位置索引并标记,将明文信息数据的多参数分形排序向量和各元素的升序排序位置作为比特位置置乱索引进行置乱得到置乱数据;

步骤4:对所述置乱数据进行扩散获取密文数据,实现明文信息数据到密文数据的转换,对明文信息数据进行加密的过程。

具体的,在步骤1中,获取明文信息数据,转化为序列向量并计算明文信息数据长度,具体的:将获取的明文信息数据,将明文信息数据经hash函数运算得到16进制的序列向量,计算向量的长度,设置截取的每个分段的长度,通过计算得出十进制数的向量长度,将16进制的序列设置一定的长度为一个表示整体,转化为十进制表示,并得到十进制表示的向量,进而再转换为十进制数值。

进一步的,将hash得到的16进制序列进行分组,然后进行十进制转换的方法包括:

第1步:将由明文信息数据经hash函数运算得到的16进制的序列记为向量Λ。

第2步:计算向量Λ的长度记为L

第3步:设置截取的每个分段的长度γ。通过计算得出十进制数的向量Θ长度

第4步:将16进制的序列以γ长度为一个表示整体,转化为十进制表示,并得到十进制表示的向量Θ(1,2,...,L

Θ(i)=hex2dec[Λ(1+(i-1)×Γ:i×Γ)]

其中,hex2dec[]表示将16进制表示转化为十进制表示的函数。

由此可以得到由hash获得的十六进制按固定长度进行分段组合而转化得到的十进制表示的向量Θ

注释:若最后一组未满足指定元素个数,则按实际有的元素个数为一组16进制表示字符将其转化为十进制数值。由此上述求得十进制表示的向量Θ的表示可以优化为:

第3步:分别将Λ按连续不相交的相邻1个、2个、3个、4个、5个、6个元素为组作为16进制数转化为十进制数值序列D

经过上述步骤,实现Hash序列的十六进制向十进制数值的转化。

进一步的,获取密钥的方法包括:

依托Hash序列转化方法,设计密码系统密码生成器,按下列步骤可以获得密钥:

第1步:读取明文信息数据,计算明文信息数据长度L。

第2步:通过SHA-512计算出明文信息数据的128位16进制字符串Λ。

第3步:分别将Λ按连续不相交的相邻1个、2个、3个、4个、5个、6个元素为组作为16进制数转化为十进制数值序列D

第4步:在适合明文信息数据尺寸的MPFSV输入参数的排列情况中,选取第n=mod(sum(D

第5步:计算参数

n

x

y

这里,n

根据上述步骤可以得到密钥n、n

步骤2中,常规的多参数分形排序向量的构造方法中,初始排序向量依此被用于计算。

第一个初始排序向量中的元素被分割成排序与第二个初始排序向量相似的子向量,同时这些子向量的排序与第一个初始排序向量中相应元素的排序相同,由此得到由第一个初始排序向量和第二个初始排序向量计算得到的分形排序向量V2。继续地,新得到的分形排序向量中的元素被分割成排序与第三个初始排序向量相似的子向量,同时这些子向量的排序与V2中相应元素的排序相同,由此得到分形排序向量V3。在获知VN-1的情况下,将该向量中的元素分割成排序与第N个初始排序向量相似的子向量,同时这些子向量的排序与VN-1中相应元素的排序相同,由此得到由N个初始排序决定的多参数分形排序向量VN。

构造的多参数分形排序向量的构造方法是由双参数分形排序向量的构造方法衍生而来的,首先设计一个双参数分形排序向量迭代方法,这个方法中,第一次迭代是由前两个初始排序向量作为输入,新的分形排序向量中的各个子向量依此由第一个初始排序向量中的各个元素减1后与其最大值的乘积加上第二个初始排序向量。

然后,以上一步得到的分形排序向量作为新的第一个参数,以第三个初始排序向量作为第二个参数,重复上一步的计算,可以得到由第1、2、3个初始排序向量求得的分形排序向量。

最后,按上述步骤,可以按序逐步迭代由N个初始排序向量得到多参数分形排序向量

综上,用函数表示上述步骤的映射关系,可将由初始排序向量得到多参数分形排序向量,新的道的多参数分形排序向量的长度为N个初始排序向量的累乘。

进一步的,步骤3中,求取混沌序列中各元素的升序排序位置索引并标记,将明文信息数据的多参数分形排序向量和各元素的升序排序位置作为比特位置置乱索引进行置乱得到置乱数据。

对有混沌序列中的各个元素进行由小到大的升序排序,记录每个元素排序后的位置编号并将这些位置编号按对应元素的排序前的位置编写到向量中,由此可以求得混沌序列的各个元素的升序排序位置索引。

对明文信息数据P中的每一个比特分别按照V

步骤4中,对所述置乱数据进行扩散获取密文数据,实现明文信息数据到密文数据的转换,对明文信息数据进行加密的过程。

进一步的,本公开方法的混沌加密方法包括:

第1步:读取明文信息数据,计算明文信息数据长度L。

第2步:根据密钥生成器得到密钥n、n

第3步:在适合明文信息数据尺寸的MPFSV输入参数的排列情况中,选取第n个参数根据多参数分形排序向量构造方法获得多参数分形排序向量V

第4步:以x

第5步:求得混沌序列C

第6步:按下式对置乱得到的数据P

根据以上步骤即可实现明文信息数据到密文数据的加密转换,从而保护明文信息数据的安全。

由于本公开提出的加密方法为对称加密,故解密算法是加密方法的逆过程,不再赘述。

实施例2

本公开的一种实施例中提供了一种基于多参数分形排序向量的明文信息加密系统,包括:

数据获取模块,用于获取明文信息数据,转化为序列向量并计算明文信息数据长度;

置乱模块,用于获取密钥,根据双参数分形排序向量迭代方法获取多参数分形排序向量,将密钥初始值带入二维混沌系统获取两个混沌序列;

求取混沌序列中各元素的升序排序位置索引并标记,将明文信息数据的多参数分形排序向量和各元素的升序排序位置作为比特位置置乱索引进行置乱得到置乱数据;

加密模块,用于对所述置乱数据进行扩散获取密文数据,实现明文信息数据到密文数据的转换,对明文信息数据进行加密的过程、

实施例3

本公开的一种实施例中提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质用于存储计算机指令,所述计算机指令被处理器执行时,实现所述的基于多参数分形排序向量的明文信息加密方法。

实施例4

本公开的一种实施例中提供了一种电子设备,包括:处理器、存储器以及计算机程序;其中,处理器与存储器连接,计算机程序被存储在存储器中,当电子设备运行时,所述处理器执行所述存储器存储的计算机程序,以使电子设备执行实现所述的基于多参数分形排序向量的明文信息加密方法。

本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本公开的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本公开的保护范围以内。

技术分类

06120116576658