CN115001690A - 基于魔方的加密方法、装置、设备及存储介质 - Google Patents
基于魔方的加密方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115001690A CN115001690A CN202210537245.2A CN202210537245A CN115001690A CN 115001690 A CN115001690 A CN 115001690A CN 202210537245 A CN202210537245 A CN 202210537245A CN 115001690 A CN115001690 A CN 115001690A
- Authority
- CN
- China
- Prior art keywords
- encryption
- characters
- turntable
- node
- magic cube
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
- Y04S40/20—Information technology specific aspects, e.g. CAD, simulation, modelling, system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种基于魔方的加密方法、装置、设备及存储介质,属于信息安全技术领域。该方法包括构建加密魔方;基于预设的起始加密节点和终止加密节点,在所述加密魔方中确定加密路径;对目标数据进行预处理,得到预处理数据;基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文。也就是说,在本申请中,基于不同的起始加密节点和终止加密节点可以在加密魔方中得到不同的加密路径,根据加密路径对预处理数据中的字符逐个进行加密,提高了加密过程的复杂度以及加密密钥的复杂度,进而提高了加密安全性。
Description
技术领域
本申请涉及信息安全技术领域,尤其涉及一种基于魔方的加密方法、装置、设备及存储介质。
背景技术
目前的加密算法主要是RSA加密算法等,如RSA加密算法通过大素数和幂运算得到加密密钥,再使用加密密钥对明文进行加密。但是随着量子计算技术的发展,提高了通过大素数和幂运算得到的加密密钥的破解效率,进而导致加密算法的安全性降低。
发明内容
本申请的主要目的在于提供一种基于魔方的加密方法、装置、设备及存储介质,旨在解决现有加密算法安全性低的技术问题。
为实现上述目的,本申请提供一种基于魔方的加密方法,包括以下步骤:
构建加密魔方;
基于预设的起始加密节点和终止加密节点,在所述加密魔方中确定加密路径;
对目标数据进行预处理,得到预处理数据;
基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文。
可选地,所述构建加密魔方的步骤,包括:
构建基础魔方;
根据转盘筛选函数,确定加密转盘的第一环的字符的排列顺序以及第二环的字符的排列顺序;
根据转盘中间环函数确定加密转盘的中间环的字符的排列顺序;
基于所述第一环、第二环和中间环与所述基础魔方的节点之间的映射关系,确定所述基础魔方的节点的加密转盘,得到加密魔方,其中,所述加密转盘的第一环的字符与所述加密转盘的第二环的字符相映射生成所述加密转盘所对应的加密映射关系,所述加密转盘的中间环的字符与所述加密转盘的第一环/第二环的字符相映射生成所述加密转盘所对应的干扰映射关系。
可选地,所述基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文的步骤,包括:
基于所述加密路径中各加密节点的加密转盘所对应的加密映射关系,根据所述各加密节点在所述加密路径中的次序,对所述字符逐级映射加密,得到所述字符的密文;
对所述各加密节点的加密转盘所对应的加密映射关系进行更新;
对所述加密路径上的加密节点进行更新;
判断所述预处理数据中是否存在未加密字符;
若所述预处理数据中不存在未加密字符,则将所述字符的密文依据所述字符在所述预处理数据中的顺序进行排序,得到所述目标数据的密文;
若所述预处理数据中存在未加密字符,则返回基于所述加密路径中各加密节点的加密转盘所对应的加密映射关系,根据所述各加密节点在所述加密路径中的次序,对所述字符逐级映射加密,得到所述字符的密文的步骤。
可选地,所述基于所述加密路径中各加密节点的加密转盘所对应的加密映射关系,根据所述各加密节点在所述加密路径中的次序,对所述字符逐级映射加密,得到所述字符的密文的步骤之后,还包括:
基于所述加密路径中终止加密节点的加密转盘所对应的干扰映射关系,确定所述字符对应的干扰密文,并将所述干扰密文组合至所述字符的密文。
可选地,所述对所述各加密节点的加密转盘所对应的加密映射关系进行更新的步骤,包括:
根据转盘初始化函数,确定所述各加密节点的加密转盘的转动起始位置;
根据转盘旋转函数,确定所述各加密节点的加密转盘的转动特征数据;
基于所述转动起始位置和所述转动特征数据,对所述各加密节点的加密转盘所对应的加密映射关系进行更新。
可选地,所述对所述加密路径上的加密节点进行更新的步骤,包括:
当加密转盘所在加密节点在加密路径中的排序为奇数时,根据第一预设转动规则对加密魔方进行转动;
当加密转盘所在加密节点在加密路径中的排序为偶数时,根据第二预设转动规则对加密魔方进行转动。
可选地,所述对目标数据进行预处理,得到预处理数据的步骤,包括:
对目标数据进行预处理,得到预处理数据,其中,所述预处理数据由Base64编码所对应的64个字符进行表征。
此外,为实现上述目的,本申请还提供一种基于魔方的加密装置,包括:
构建模块,用于构建加密魔方;
路径确定模块,用于基于预设的起始加密节点和终止加密节点,在所述加密魔方中确定加密路径;
数据预处理模块,用于对目标数据进行预处理,得到预处理数据;
加密模块,用于基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文。
此外,为实现上述目的,本申请还提供一种基于魔方的加密设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于魔方的加密程序,所述基于魔方的加密程序配置为实现如上所述的基于魔方的加密方法的步骤。
此外,为实现上述目的,本申请还提供一种存储介质,所述存储介质上存储有基于魔方的加密程序,所述基于魔方的加密程序被处理器执行时实现如上所述的基于魔方的加密方法的步骤
本申请公开了一种基于魔方的加密方法、装置、设备及存储介质,与现有技术中,加密算法安全性低相比,本实施例通过构建加密魔方;基于预设的起始加密节点和终止加密节点,在所述加密魔方中确定加密路径;对目标数据进行预处理,得到预处理数据;基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文。也就是说,在本申请中,基于不同的起始加密节点和终止加密节点可以在加密魔方中得到不同的加密路径,根据加密路径对预处理数据中的字符逐个进行加密,提高了加密过程的复杂度以及加密密钥的复杂度,进而提高了加密安全性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例方案涉及的硬件运行环境的基于魔方的加密设备的结构示意图;
图2为本申请基于魔方的加密方法第一实施例的流程示意图;
图3为本申请加密魔方的旋转形式示意图;
图4为本申请基于魔方的加密装置第一实施例的功能模块示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,图1为本申请实施例方案涉及的硬件运行环境的基于魔方的加密设备结构示意图。
如图1所示,该基于魔方的加密设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM)存储器,也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对基于魔方的加密设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、数据存储模块、网络通信模块、用户接口模块以及基于魔方的加密程序。
在图1所示的基于魔方的加密设备中,网络接口1004主要用于与其他设备进行数据通信;用户接口1003主要用于与用户进行数据交互;本申请基于魔方的加密设备中的处理器1001、存储器1005可以设置在基于魔方的加密设备中,所述基于魔方的加密设备通过处理器1001调用存储器1005中存储的基于魔方的加密程序,并执行本申请实施例提供的基于魔方的加密方法。
本申请实施例提供了一种基于魔方的加密方法,参照图2,图2为本申请基于魔方的加密方法第一实施例的流程示意图。
在本实施例中,所述基于魔方的加密方法包括:
步骤S10、构建加密魔方;
步骤S20、基于预设的起始加密节点和终止加密节点,在所述加密魔方中确定加密路径;
步骤S30、对目标数据进行预处理,得到预处理数据;
步骤S40、基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文。
与现有技术中,加密算法安全性低相比,本实施例通过构建加密魔方;基于预设的起始加密节点和终止加密节点,在所述加密魔方中确定加密路径;对目标数据进行预处理,得到预处理数据;基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文。也就是说,在本实施例中,基于不同的起始加密节点和终止加密节点可以在加密魔方中得到不同的加密路径,根据加密路径对预处理数据中的字符逐个进行加密,提高了加密过程的复杂度以及加密密钥的复杂度,进而提高了加密安全性。
具体步骤如下:
步骤S10、构建加密魔方。
需要说明的是,在本实施例中,加密魔方上存在多个加密节点,每一加密节点包括加密转盘。
具体地,构建加密魔方,包括:
步骤S11、构建基础魔方。
在本实施例中,可以用G(V,E)来表征基础魔方,其中,V表征基础魔方中所有节点的集合,E表征基础魔方中连接各个节点的边的集合。为了简化基础魔方的构建过程,可以选择三阶魔方、四阶魔方、五阶魔方、六阶魔方、三角形魔方、菱形魔方和球形魔方等中的一种魔方作为基础魔方。
以三阶魔方举例说明,三阶魔方包括6个中心块、12个棱块和8个角块,中心块、棱块和角块的表面上的边和节点即为基础魔方中的节点和边,三阶魔方共有56个节点和72条边。
步骤S12、根据转盘筛选函数,确定加密转盘的第一环的字符的排列顺序以及第二环的字符的排列顺序。
在本实施例中,转盘筛选函数S(para,EB)用于根据筛选参数para和筛选规则从密码数据集中确定加密转盘的第一环的字符的排列顺序以及第二环的字符的排列顺序。其中,一个筛选参数可以对应一个筛选规则,也可以对应多个筛选规则。
在本实施例中,筛选参数para包括基础魔方中各节点所对应的编码或口令,其中口令定期进行更新。
在本实施例中,加密转盘的第一环与第二环均被平均分成64份,即加密转盘的第一环和第二环中均包含64个字符。将Base64编码(基于64个可打印字符来表示二进制数据)所对应的64个字符进行排列组合,可以生成64!条密码串,每一条密码串包括Base64编码所对应的64个字符。密码数据集中的密码串即为64!条密码串中的一部分,且密码数据集中的密码串都有其对应的编号,同时密码数据集中的密码串可以定期更新。
也就是说,在本实施例中根据转盘筛选函数,确定加密转盘的第一环的字符的排列顺序以及第二环的字符的排列顺序可以有两种不同的方式。
方式一、在一个筛选参数对应一个筛选规则的情况下,根据第一筛选参数和其所对应的筛选规则,从密码数据集中确定加密转盘的第一环的字符的排列顺序,根据第二筛选参数和其所对应的筛选规则,从密码数据集中确定加密转盘的第二环的字符的排列顺序,其中,第一筛选参数和第二筛选参数是筛选参数para的一种,且第一筛选参数和第二筛选参数不同。
例如,第一筛选参数为基础魔方中各节点所对应的编码,其对应的筛选规则为对第一筛选参数的e次方进行取整,则根据第一筛选参数和其所对应的筛选规则,从密码数据集中确定加密转盘的第一环的字符的排列顺序包括:
对节点所对应的编码进行转换,以供节点所对应的编码的表征形式为数字形式,对节点所对应的编码的e次方进行取整,将取整后得到的数据视为密码串所对应的编码,根据取整后得到的数据在密码数据集中提取相对应的密码串,密码串即为加密转盘的第一环的字符的排列顺序。
第二筛选参数为口令,则根据第二筛选参数和其所对应的筛选规则,从密码数据集中确定加密转盘的第二环的字符的排列顺序包括:
对口令进行编码转换,得到数字口令,对数字口令的1/2次方进行取整,将取整后得到的数据视为密码串所对应的编码,根据取整后得到的数据在密码数据集中提取相对应的密码串,以该密码串作为首个加密转盘的第二环的字符的排列顺序,每间隔t个密码串后,选择第t+1个密码串作为加密转盘的第二环的字符的排列顺序,直至确定N个加密转盘的第二环的字符的排列顺序,N为基础魔方中的节点的数量。
需要说明的,筛选参数对应的筛选规则可以根据实际应用情况进行设置,并不局限于上述举例说明的筛选规则,更多的筛选规则在此不再赘述。
方式二、在一个筛选参数对应多个筛选规则的情况下,根据筛选参数所对应的第一筛选规则,从密码数据集中确定加密转盘的第一环的字符的排列顺序,根据筛选参数所对应的第二筛选规则,从密码数据集中确定加密转盘的第二环的字符的排列顺序。
例如,筛选参数为基础魔方中各节点所对应的编码,其对应的第一筛选规则为对第一筛选参数的e次方进行取整,则根据筛选参数所对应的第一筛选规则,从密码数据集中确定加密转盘的第一环的字符的排列顺序包括:
对节点所对应的编码的e次方进行取整,将取整后得到的数据视为密码串所对应的编码,根据取整后得到的数据在密码数据集中提取相对应的密码串,密码串即为加密转盘的第一环的字符的排列顺序;其对应的第二筛选规则为对第二筛选参数的1/2次方进行取整,则根据筛选参数所对应的第二筛选规则,从密码数据集中确定加密转盘的第二环的字符的排列顺序包括:对节点所对应的编码的1/2次方进行取整,将取整后得到的数据视为密码串所对应的编码,根据取整后得到的数据在密码数据集中提取相对应的密码串,密码串即为加密转盘的第二环的字符的排列顺序。
需要说明的,筛选参数对应的多个筛选规则可以根据实际应用情况进行设置,并不局限于上述举例说明的筛选规则,更多的筛选规则在此不再赘述。
步骤S13、根据转盘中间环函数确定加密转盘的中间环的字符的排列顺序。
在本实施例中,转盘中间环函数A(para1,n)用于根据中间筛选参数para1和字符长度n,从行密钥数据集中确定加密转盘的中间环的字符的排列顺序。
在本实施例中,行密钥数据集的获取过程如下:
对包含多行文字的明文信息数据集中的每行文字进行Base64编码,得到每行文字所对应的编码信息;
从每行文字所对应的编码信息中截取长度大于预设长度值的字符串,并基于奇偶位字符互换规则对字符串重新排列组合,得到每行文字所对应的行密钥,组成行密钥数据集,其中,每行文字所对应的行密钥的长度均不相同。
需要说明的是,预设长度值在本实施例中优选为2048。
具体地,当中间筛选参数为基础魔方中各节点所对应的编码,则根据转盘中间环函数确定加密转盘的中间环的字符的排列顺序,包括:
对节点所对应的编码进行转换,以供节点所对应的编码的表征形式为数字形式,对节点所对应的编码的a次方进行取整,将取整后得到的数据视为行密钥所对应的编码,根据取整后得到的数据在行密钥数据集中提取相对应的行密钥,并从提取得到的行密钥中截取长度为kn的字符串作为加密转盘的中间环的字符的排列顺序,其中,k为中间环的字符个数,n为中间环的字符长度。
具体地,当中间筛选参数为口令,则根据转盘中间环函数确定加密转盘的中间环的字符的排列顺序,包括:
对口令进行编码转换,得到数字口令,对数字口令的a次方进行取整,将取整后得到的数据视为行密钥所对应的编码,根据取整后得到的数据在行密钥数据集中提取相对应的行密钥,以该提取得到的行密钥作为首个加密转盘的第二环的字符的排列顺序,每间隔T个密码串后,选择第T+1个密码串作为加密转盘的第二环的字符的排列顺序,直至确定N个加密转盘的第二环的字符的排列顺序,N为基础魔方中的节点的数量。
在本实施例中,加密转盘的第一环与第二环均被平均分成64份,因此,加密转盘的中间环也被平均分成64份,即k=64。中间环的字符长度n是大于2的正整数,可以根据实际应用需求进行设置。
步骤S14、基于所述第一环、第二环和中间环与所述基础魔方的节点之间的映射关系,确定所述基础魔方的节点的加密转盘,得到加密魔方,其中,所述加密转盘的第一环的字符与所述加密转盘的第二环的字符相映射生成所述加密转盘所对应的加密映射关系,所述加密转盘的中间环的字符与所述加密转盘的第一环/第二环的字符相映射生成所述加密转盘所对应的干扰映射关系。
在本实施例中,加密转盘上的第一环和第二环上的字符的排序均由Base64编码所对应的64个字符排列组合,也就是说,加密转盘的第一环的字符与所述加密转盘的第二环的字符相映射生成所述加密转盘所对应的加密映射关系可以高达64!种,提高了加密密钥的复杂程度。加密转盘的中间环的字符与所述加密转盘的第一环/第二环的字符相映射生成所述加密转盘所对应的干扰映射关系,可以实现对字符的非对称加密,提高了密文的干扰性。
在本实施例中,加密转盘的第一环、加密转盘的第二环、加密转盘的中间环分别与基础魔方的节点之间存在映射关系。
若确定加密转盘的第一环的字符的排列顺序的筛选参数为基础魔方各节点所对应的编码,则加密转盘的第一环在基础魔方中所对应的节点即为筛选参数所对应的节点。例如,加密转盘的第一环的字符的排列顺序是基于基础魔方中的节点S11所对应的编码确定的,则该加密转盘的第一环在基础魔方中被设置在节点S11上。同理,确定加密转盘的第二环的字符的排列顺序的筛选参数也为基础魔方各节点所对应的编码,则加密转盘的第二环所对应的节点即为筛选参数所对应的节点。同理,确定加密转盘的中间环的字符的排列顺序的中间筛选参数也为基础魔方各节点所对应的编码,则加密转盘的中间环所对应的节点即为中间筛选参数所对应的节点。
若确定加密转盘的第一环的字符的排列顺序的筛选参数为口令,则加密转盘的第一环与基础魔方的节点之间存在的映射关系为:
将基础魔方各节点所对应的编码转换为数字编码,并计算数字编码中各数字之和,根据各数字之和,将数字编码按照大小顺序进行排序,即对基础魔方各节点进行排序;将N个加密转盘的第一环的字符的排列顺序所对应的行密钥的编码作为N个加密转盘的第一环所对应的编码,将N个加密转盘的第一环所对应的编码转换为数字编码,并计算数字编码中各数字之和,根据各数字之和,将数字编码按照大小顺序进行排序,即对N个加密转盘的第一环进行排序;将排序后的基础魔方各节点与排序后的N个加密转盘的第一环一一对应。
同理,若确定加密转盘的第一环的字符的排列顺序的筛选参数也为口令,则加密转盘的第二环与基础魔方的节点之间的映射关系,与加密转盘的第一环与基础魔方的节点之间的映射关系相同;若确定加密转盘的中间环的字符的排列顺序的中间筛选参数也为口令,则加密转盘的中间环与基础魔方的节点之间的映射关系,与加密转盘的第一环与基础魔方的节点之间的映射关系相同。
需要说明的是,加密转盘的第一环与基础魔方的节点之间的映射关系、加密转盘的第二环与基础魔方的节点之间的映射关系、以及加密转盘的中间环与基础魔方的节点之间的映射关系,这三种映射关系可以相同,也可以不同,具体可以根据实际应用需求进行设置。
步骤S20、基于预设的起始加密节点和终止加密节点,在所述加密魔方中确定加密路径。
在本实施例中,预设的起始加密节点和终止加密节点即为加密魔方中的加密节点。起始加密节点和终止加密节点可以根据实际应用需求进行设置,也可以根据目标数据的数据大小匹配相对应的起始加密节点和终止加密节点。即本实施例中,存在预设的目标数据大小与起始加密节点和终止加密节点的映射表,在映射表中,一组起始加密节点和终止加密节点对应一段目标数据大小。
具体地,基于预设的起始加密节点和终止加密节点,在所述加密魔方中确定加密路径,包括:
基于预设的起始加密节点和终止加密节点,按照路径最短原则在所述加密魔方中确定加密路径;
或者,基于预设的起始加密节点和终止加密节点,按照路径最长原则在所述加密魔方中确定加密路径。
需要说明的是,已知两点,按照路径最短原则/路径最长原则,确定两点之间的路径是现有技术,故在本实施例中不加以详细说明。
在本实施例中,基于不同的起始加密节点和终止加密节点可以在加密魔方中得到不同的加密路径,不同的加密路径中对应不同的加密转盘,即对应不同的加密密钥,增加了加密密钥的多样性,进一步提高加密安全性。
步骤S30、对目标数据进行预处理,得到预处理数据。
具体地,对目标数据进行预处理,得到预处理数据,其中,所述预处理数据由Base64编码所对应的64个字符进行表征。
在本实施例中,对目标数据进行预处理,得到由Base64编码所对应的64个字符进行表征的预处理数据有两种方式。
方式一、对目标数据进行Base64编码,得到预处理数据。
方式二、对目标数据进行一次加密,得到一次加密密文,对一次加密密文进行Base64编码,得到预处理数据。
其中,方式二中对目标数据进行一次加密的加密算法可以为RSA加密算法、ECC加密算法等。
其中,本实施例方式一和方式二中所使用的Base64编码方法与通用的Base64方法不同,两者之间的区别在于,本实施例中所使用的Base64编码方法可以根据实际应用需求(个性化)设定64个字符在转换表中的顺序,即根据实际应用需求设定转换表中64个字符与数字0~63的映射对应关系,增强本实施例的安全程度。
步骤S40、基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文。
具体地,基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文,包括:
步骤S41、基于所述加密路径中各加密节点的加密转盘所对应的加密映射关系,根据所述各加密节点在所述加密路径中的次序,对所述字符逐级映射加密,得到所述字符的密文。
例如,加密路径中共有5个加密节点,分别为第一加密节点、第二加密节点、第三加密节点、第四加密节点和第五加密节点。提取预处理数据中的一个字符,根据第一加密节点的加密转盘所对应的加密映射关系得到字符对应的第一映射字符,其次根据第二加密节点的加密转盘所对应的加密映射关系得到第一映射字符对应的第二映射字符,再根据第三加密节点的加密转盘所对应的加密映射关系得到第二映射字符对应的第三映射字符,然后根据第四加密节点的加密转盘所对应的加密映射关系得到第三映射字符对应的第四映射字符,最后根据第五加密节点的加密转盘所对应的加密映射关系得到第四映射字符对应的第五映射字符,第五映射字符即为字符的密文。
步骤S42、基于所述加密路径中终止加密节点的加密转盘所对应的干扰映射关系,确定所述字符对应的干扰密文,并将所述干扰密文组合至所述字符的密文。
例如,加密路径中共有5个加密节点,分别为第一加密节点、第二加密节点、第三加密节点、第四加密节点和第五加密节点,则第五加密节点为终止加密节点。在根据第五加密节点的加密转盘所对应的加密映射关系得到第四映射字符对应的第五映射字符的同时,根据第五加密节点的加密转盘所对应的干扰映射关系得到第四映射字符对应的干扰字符,干扰字符即为字符对应的干扰密文。
在本实施例中,将干扰密文组合至字符的密文可以将干扰密文加入到字符的密文的末端,也可以将干扰密文加入到字符的密文的首端。
在本实施例中,在字符的密文中加入干扰密文,进一步提高了密文的安全性。
步骤S43、对所述各加密节点的加密转盘所对应的加密映射关系进行更新。
具体地,对所述各加密节点的加密转盘所对应的加密映射关系进行更新,包括:
步骤S431、根据转盘初始化函数,确定所述各加密节点的加密转盘的转动起始位置。
在本实施例中,根据转盘初始化函数,确定所述各加密节点的加密转盘的转动起始位置的具体过程如下:
对加密转盘所在加密节点在加密魔方中所对应的编码进行转换,得到加密转盘所在加密节点在加密魔方中所对应的数字编码,对数字编码的a次方进行取整,将取整后得到的数据视为行密钥所对应的编码,根据取整后得到的数据在行密钥数据集中提取相对应的行密钥,统计提取得到的行密钥中各字符存在的个数,选取个数最多的字符作为加密转盘的转动起始位置对应的字符。
步骤S432、根据转盘旋转函数,确定所述各加密节点的加密转盘的转动特征数据。
在本实施例中,加密转盘的转动特征数据包括旋转方向和旋转格数。
当加密转盘的中间环的字符与加密转盘的第一环的字符相映射生成加密转盘所对应的干扰映射关系时,根据转盘旋转函数,确定所述各加密节点的加密转盘的转动特征数据,包括:
当加密转盘所在加密节点在加密路径中的排序为奇数时,该加密转盘的第一环的旋转方向为顺时针方向,该加密转盘的中间环的旋转方向为逆时针方向;当加密转盘所在加密节点在加密路径中的排序为偶数时,该加密转盘的第一环的旋转方向为逆时针方向,该加密转盘的中间环的旋转方向为顺时针方向;
将加密转盘所在加密节点在加密路径中的排序作为加密转盘的第一环和中间环的旋转格数。
当加密转盘的中间环的字符与加密转盘的第二环的字符相映射生成加密转盘所对应的干扰映射关系时,根据转盘旋转函数,确定所述各加密节点的加密转盘的转动特征数据,包括:
当加密转盘所在加密节点在加密路径中的排序为奇数时,该加密转盘的第二环的旋转方向为顺时针方向,该加密转盘的中间环的旋转方向为逆时针方向;当加密转盘所在加密节点在加密路径中的排序为偶数时,该加密转盘的第二环的旋转方向为逆时针方向,该加密转盘的中间环的旋转方向为顺时针方向;
将加密转盘所在加密节点在加密路径中的排序作为加密转盘的第二环和中间环的旋转格数。
步骤S433、基于所述转动起始位置和所述转动特征数据,对所述各加密节点的加密转盘所对应的加密映射关系进行更新。
例如,行密钥的首字符为A,加密转盘的中间环的字符与加密转盘的第二环的字符相映射生成加密转盘所对应的干扰映射关系,且加密转盘所在加密节点在加密路径中的排序为1,则将该加密转盘的第二环中A字符所在位置作为旋转起始位置,将第二环顺时针方向旋转1格,将该加密转盘的中间环中A字符所在位置作为旋转起始位置,将中间环逆时针方向旋转1格。
在本实施例中,每完成对预处理数据中一个字符的加密,就更新一下加密路径中各加密转盘所对应的加密映射关系和干扰映射关系,进一步提高了加密密钥的复杂度,提高了对密文的破解难度,进而提高了加密安全性。
步骤S44、对所述加密路径上的加密节点进行更新。
具体地,对所述加密路径上的加密节点进行更新,包括:
当加密转盘所在加密节点在加密路径中的排序为奇数时,根据第一预设转动规则对加密魔方进行转动,以此实现对加密路径上的加密节点的更新;
当加密转盘所在加密节点在加密路径中的排序为偶数时,根据第二预设转动规则对加密魔方进行转动,以此实现对加密路径上的加密节点的更新。
参照图3,图3为本申请加密魔方的旋转形式示意图。在本实施例中,加密魔方的旋转形式包括:Rr(代表右面顺时针转r次90度),R`r(代表右面逆时针转r次90度),Br(代表后面顺时针转r次90度),B`r(代表后面逆时针转r次90度),Fr(代表前面顺时针转r次90度),F`r(代表前面逆时针转r次90度),Lr(代表左面顺时针转r次90度),L`r(代表左面逆时针转r次90度),Ur(代表顶层顺时针转r次90度),U`r(代表顶层逆时针转r次90度),Dr(代表底层顺时针转r次90度),D`r(代表底层逆时针转r次90度),Mr(代表中间层顺时针转r次90度),M`r(代表中间层逆时针转r次90度)。
第一预设转动规则和第二预设转动规则由上述加密魔方的旋转形式中的一种或多种组合形式,具体的旋转形式的选取以及组合顺序可以根据实际应用进行设置。例如,第一预设转动规则包括:R(右面顺时针转90度)、F`2(前面逆时针转2次90度)、M`(中间层逆时针转90度)和L(左面顺时针转90度);第二预设转动规则包括:U`2(顶层逆时针转2次90度)、B2(后面顺时针转2次90度)、R`(右面逆时针转90度)、L`(左面逆时针转90度)和M(代表中间层顺时针转90度)。
步骤S45、判断所述预处理数据中是否存在未加密字符。
步骤S46、若所述预处理数据中不存在未加密字符,则将所述字符的密文依据所述字符在所述预处理数据中的顺序进行排序,得到所述目标数据的密文。
步骤S47、若所述预处理数据中存在未加密字符,则返回基于所述加密路径中各加密节点的加密转盘所对应的加密映射关系,根据所述各加密节点在所述加密路径中的次序,对所述字符逐级映射加密,得到所述字符的密文的步骤。
需要说明的是,在本实施例中,对预处理数据中的字符进行加密是在Base64编码所对应的64个字符的基础上进行映射替换加密,加密前的原文是Base64编码所对应的64个字,最终输出的密文还是Base64编码所对应的64个字符,因此在破解的时候很难判断原文是什么,提高了原文的隐蔽性。
本实施例的解密过程按照加密过程沿加密路径反向映射就可以实现解密。
本申请实施例提供了一种基于魔方的加密装置,参照图4,图4为本申请基于魔方的加密装置第一实施例的功能模块示意图。
在本实施例中,所述基于魔方的加密装置包括:
构建模块10、用于构建加密魔方;
路径确定模块20、用于基于预设的起始加密节点和终止加密节点,在所述加密魔方中确定加密路径;
数据预处理模块30、用于对目标数据进行预处理,得到预处理数据;
加密模块40、用于基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文。
可选地,所述构建模块用于实现:
构建基础魔方;
根据转盘筛选函数,确定加密转盘的第一环的字符的排列顺序以及第二环的字符的排列顺序;
根据转盘中间环函数确定加密转盘的中间环的字符的排列顺序;
基于所述第一环、第二环和中间环与所述基础魔方的节点之间的映射关系,确定所述基础魔方的节点的加密转盘,得到加密魔方,其中,所述加密转盘的第一环的字符与所述加密转盘的第二环的字符相映射生成所述加密转盘所对应的加密映射关系,所述加密转盘的中间环的字符与所述加密转盘的第一环/第二环的字符相映射生成所述加密转盘所对应的干扰映射关系。
可选地,所述加密模块包括:
字符加密单元,用于基于所述加密路径中各加密节点的加密转盘所对应的加密映射关系,根据所述各加密节点在所述加密路径中的次序,对所述字符逐级映射加密,得到所述字符的密文;
加密映射关系更新单元,用于对所述各加密节点的加密转盘所对应的加密映射关系进行更新;
加密节点更新单元,用于对所述加密路径上的加密节点进行更新;
判断单元,用于实现:
判断所述预处理数据中是否存在未加密字符;
若所述预处理数据中不存在未加密字符,则将所述字符的密文依据所述字符在所述预处理数据中的顺序进行排序,得到所述目标数据的密文;
若所述预处理数据中存在未加密字符,则返回基于所述加密路径中各加密节点的加密转盘所对应的加密映射关系,根据所述各加密节点在所述加密路径中的次序,对所述字符逐级映射加密,得到所述字符的密文的步骤。
可选地,所述加密模块还包括:
加密干扰单元,用于基于所述加密路径中终止加密节点的加密转盘所对应的干扰映射关系,确定所述字符对应的干扰密文,并将所述干扰密文组合至所述字符的密文。
可选地,所述加密映射关系更新单元用于实现:
根据转盘初始化函数,确定所述各加密节点的加密转盘的转动起始位置;
根据转盘旋转函数,确定所述各加密节点的加密转盘的转动特征数据;
基于所述转动起始位置和所述转动特征数据,对所述各加密节点的加密转盘所对应的加密映射关系进行更新。
可选地,所述加密节点更新单元用于实现:
当加密转盘所在加密节点在加密路径中的排序为奇数时,根据第一预设转动规则对加密魔方进行转动;
当加密转盘所在加密节点在加密路径中的排序为偶数时,根据第二预设转动规则对加密魔方进行转动。
可选地,所述数据预处理模块用于实现:
对目标数据进行预处理,得到预处理数据,其中,所述预处理数据由Base64编码所对应的64个字符进行表征。
本申请基于魔方的加密装置具体实施方式与上述基于魔方的加密方法各实施例基本相同,在此不再赘述。
本申请实施例还提供了一种存储介质,所述存储介质上存储有基于魔方的加密程序,所述基于魔方的加密程序被处理器执行时实现如上所述的基于魔方的加密方法的步骤。
本申请存储介质具体实施方式与上述基于魔方的加密方法各实施例基本相同,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种基于魔方的加密方法,其特征在于,所述基于魔方的加密方法包括以下步骤:
构建加密魔方;
基于预设的起始加密节点和终止加密节点,在所述加密魔方中确定加密路径;
对目标数据进行预处理,得到预处理数据;
基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文。
2.如权利要求1所述的基于魔方的加密方法,其特征在于,所述构建加密魔方的步骤,包括:
构建基础魔方;
根据转盘筛选函数,确定加密转盘的第一环的字符的排列顺序以及第二环的字符的排列顺序;
根据转盘中间环函数确定加密转盘的中间环的字符的排列顺序;
基于所述第一环、第二环和中间环与所述基础魔方的节点之间的映射关系,确定所述基础魔方的节点的加密转盘,得到加密魔方,其中,所述加密转盘的第一环的字符与所述加密转盘的第二环的字符相映射生成所述加密转盘所对应的加密映射关系,所述加密转盘的中间环的字符与所述加密转盘的第一环/第二环的字符相映射生成所述加密转盘所对应的干扰映射关系。
3.如权利要求1所述的基于魔方的加密方法,其特征在于,所述基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文的步骤,包括:
基于所述加密路径中各加密节点的加密转盘所对应的加密映射关系,根据所述各加密节点在所述加密路径中的次序,对所述字符逐级映射加密,得到所述字符的密文;
对所述各加密节点的加密转盘所对应的加密映射关系进行更新;
对所述加密路径上的加密节点进行更新;
判断所述预处理数据中是否存在未加密字符;
若所述预处理数据中不存在未加密字符,则将所述字符的密文依据所述字符在所述预处理数据中的顺序进行排序,得到所述目标数据的密文;
若所述预处理数据中存在未加密字符,则返回基于所述加密路径中各加密节点的加密转盘所对应的加密映射关系,根据所述各加密节点在所述加密路径中的次序,对所述字符逐级映射加密,得到所述字符的密文的步骤。
4.如权利要求3所述的基于魔方的加密方法,其特征在于,所述基于所述加密路径中各加密节点的加密转盘所对应的加密映射关系,根据所述各加密节点在所述加密路径中的次序,对所述字符逐级映射加密,得到所述字符的密文的步骤之后,还包括:
基于所述加密路径中终止加密节点的加密转盘所对应的干扰映射关系,确定所述字符对应的干扰密文,并将所述干扰密文组合至所述字符的密文。
5.如权利要求3所述的基于魔方的加密方法,其特征在于,所述对所述各加密节点的加密转盘所对应的加密映射关系进行更新的步骤,包括:
根据转盘初始化函数,确定所述各加密节点的加密转盘的转动起始位置;
根据转盘旋转函数,确定所述各加密节点的加密转盘的转动特征数据;
基于所述转动起始位置和所述转动特征数据,对所述各加密节点的加密转盘所对应的加密映射关系进行更新。
6.如权利要求3所述的基于魔方的加密方法,其特征在于,所述对所述加密路径上的加密节点进行更新的步骤,包括:
当加密转盘所在加密节点在加密路径中的排序为奇数时,根据第一预设转动规则对加密魔方进行转动;
当加密转盘所在加密节点在加密路径中的排序为偶数时,根据第二预设转动规则对加密魔方进行转动。
7.如权利要求1所述的基于魔方的加密方法,其特征在于,所述对目标数据进行预处理,得到预处理数据的步骤,包括:
对目标数据进行预处理,得到预处理数据,其中,所述预处理数据由Base64编码所对应的64个字符进行表征。
8.一种基于魔方的加密装置,其特征在于,所述基于魔方的加密装置包括:
构建模块,用于构建加密魔方;
路径确定模块,用于基于预设的起始加密节点和终止加密节点,在所述加密魔方中确定加密路径;
数据预处理模块,用于对目标数据进行预处理,得到预处理数据;
加密模块,用于基于所述加密路径,对所述预处理数据中的字符逐个进行加密,得到所述目标数据的密文。
9.一种基于魔方的加密设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于魔方的加密程序,所述基于魔方的加密程序配置为实现如权利要求1至7中任一项所述的基于魔方的加密方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有基于魔方的加密程序,所述基于魔方的加密程序被处理器执行时实现如权利要求1至7任一项所述的基于魔方的加密方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210537245.2A CN115001690A (zh) | 2022-05-16 | 2022-05-16 | 基于魔方的加密方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210537245.2A CN115001690A (zh) | 2022-05-16 | 2022-05-16 | 基于魔方的加密方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115001690A true CN115001690A (zh) | 2022-09-02 |
Family
ID=83027822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210537245.2A Pending CN115001690A (zh) | 2022-05-16 | 2022-05-16 | 基于魔方的加密方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115001690A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117236826A (zh) * | 2023-11-16 | 2023-12-15 | 深圳市普拉托科技有限公司 | 物流托盘的码放识别方法、装置、设备及存储介质 |
-
2022
- 2022-05-16 CN CN202210537245.2A patent/CN115001690A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117236826A (zh) * | 2023-11-16 | 2023-12-15 | 深圳市普拉托科技有限公司 | 物流托盘的码放识别方法、装置、设备及存储介质 |
CN117236826B (zh) * | 2023-11-16 | 2024-03-19 | 深圳市普拉托科技有限公司 | 物流托盘的码放识别方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Enayatifar et al. | Image encryption using a synchronous permutation-diffusion technique | |
Al-Ghamdi et al. | Security enhancement of shares generation process for multimedia counting-based secret-sharing technique | |
Chen et al. | Reusing the permutation matrix dynamically for efficient image cryptographic algorithm | |
KR20190035835A (ko) | 데이터 처리 방법 및 디바이스 | |
CN116471007B (zh) | 基于云平台的网络信息加密传输方法 | |
Alarood et al. | IES: Hyper-chaotic plain image encryption scheme using improved shuffled confusion-diffusion | |
CN111314069A (zh) | 基于区块链的摇号系统、方法、电子设备及存储介质 | |
CN111291397A (zh) | 一种网页数据防爬加密方法 | |
CN105721156A (zh) | 用于模幂加密方案的通用编码函数 | |
WO2017075609A1 (en) | An information secure protocol for mobile proactive secret sharing with near-optimal resilience | |
CN115001690A (zh) | 基于魔方的加密方法、装置、设备及存储介质 | |
Ahmad et al. | A secure network communication protocol based on text to barcode encryption algorithm | |
US11277259B2 (en) | Multi-layer encryption employing Kaprekar routine and letter-proximity-based cryptograms | |
CN111241596A (zh) | 一种区块链资产账户恢复的方法及装置 | |
CN114900287A (zh) | 基于路网的加密方法、装置、设备及存储介质 | |
AU2013334491B2 (en) | Methods and systems for concealing information | |
CN108847924A (zh) | 加密方法、装置、计算机设备和存储介质 | |
Jana et al. | A novel SPN-based video steganographic scheme using Sudoku puzzle for secured data hiding | |
CN112199730A (zh) | 一种终端上应用数据的处理方法、装置及电子设备 | |
CN116132065A (zh) | 密钥确定方法、装置、计算机设备和存储介质 | |
KR100561845B1 (ko) | 애드 혹 망에서 멀티 레벨 접근 제어를 위한 데이터암호화 및 복호화 방법 | |
CN115766244A (zh) | 车联网信息加密方法、装置、计算机设备和存储介质 | |
Jagdale et al. | Securing MMS with high performance elliptic curve cryptography | |
CN113765650A (zh) | 数据加密、解密方法、装置、电子设备及存储介质 | |
CN114282922A (zh) | 一种基于冷钱包的区块链交易处理方法及装置 |
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 |