一种数据存储介质、加密方法与流程

文档序号:17863847发布日期:2019-06-11 23:03阅读:987来源:国知局

本发明涉及数据保护技术领域,具体地说是一种数据存储介质、加密方法。



背景技术:

目前,现有的数据加密方法常用md5算法,md5加密算法如下:

1)数据填充

对消息进行数据填充,使消息的长度对512取模得448,设消息长度为x,即满足xmod512=448。根据此公式得出需要填充的数据长度。

填充方法:在消息后面进行填充,填充第一位为1,其余为0。

2)添加消息长度

在第一步结果之后再填充上原消息的长度,可用来进行的存储长度为64位。如果消息长度大于264,则只使用其低64位的值,即(消息长度对264取模)。

在此步骤进行完毕后,最终消息长度就是512的整数倍。

3)数据处理

准备需要用到的数据:

4个常数:a=0x67452301,b=0x0efcdab89,c=0x98badcfe,d=0x10325476;

4个函数:f(x,y,z)=(x&y)|((~x)&z);g(x,y,z)=(x&z)|(y&(~z));h(x,y,z)=x^y^z;i(x,y,z)=y^(x|(~z));

把消息分以512位为一分组进行处理,每一个分组进行4轮变换,以上面所说4个常数为起始变量进行计算,重新输出4个变量,以这4个变量再进行下一分组的运算,如果已经是最后一个分组,则这4个变量为最后的结果,即md5值。

然而,md5加密算法本身是不可逆的,但由于其算法固定的特性,使得一段固定模式的原文,其密文也是固定的,比如常见的字符串admin的32位md5就是21232f297a57a5a743894a0e4a801fc3,人们很容易收集到这些常用的md5然后把它们集成到数据字典中,通过数据映射实现破解的目的。

因此,现有技术还有待发展。



技术实现要素:

鉴于上述现有技术的不足之处,本发明的目的在于提供一种数据存储介质、加密方法。旨在解决现有技术的应用过于广泛而导致保密性出现问题,容易被破解问题。

为了达到上述目的,本发明采取了以下技术方案:

本发明提供一种数据存储介质,包括:

数据存储模块,用于存储原始数据方阵;

卷积核模块,用于存储卷积核方阵;

运算模块,用于将所述数据存储模块中的所述原始数据方阵与所述卷积核模块中的所述卷积核方阵一一对应的进行规则相同的运算,并输出加密数据方阵;

加密数据模块;用于存储所述加密数据方阵。

进一步的,所述卷积核方阵的方阵大小不超过所述原始数据方阵的大小。

本发明还提供一种数据加密方法,包括权利要求1或2所述的存储介质,还包括以下步骤:

1)所述运算模块接收所述原始数据方阵与所述卷积核方阵;

2)所述原始数据方阵上的某一位置将卷积核方阵完全覆盖,并记录该位置;

3)将所述卷积核方阵中的数据与位置相对应的所述原始数据方阵中的数据进行规则相同的运算,得到与所述卷积核方阵中的数据数量相同的若干得数;

4)将若干所述得数相加,得到加密数据,并将所述加密数据放入所述加密数据方阵中的相应位置;

5)移动所述卷积核方阵,使所述原始数据方阵上的另一位置将卷积核方阵完全覆盖,并转回步骤3),直至能使所述卷积核方阵完全覆盖在所述原始数据方阵上的所有位置全部已被记录,此时即得到所述加密数据方阵。

进一步的,所述卷积核方阵呈正方形方阵。

进一步的,所述加密数据方阵中的所述加密数据包括有效加密数据、无效加密数据,所述有效加密数据为满足第一预设条件的若干所述加密数据的组合。

进一步的,所述第一预设条件为同时满足如下条件:

a)若干所述加密数据对应的所述卷积核方阵的若干位置互不重叠;

b)若干所述加密数据对应的所述卷积核方阵的若干位置覆盖了所述原始数据方阵中的全部所述原始数据。

进一步的,所述无效加密数据可被任意随机数字替换。

进一步的,步骤5)之后还包括:将所述加密数据方阵视为所述原始数据方阵,转回步骤1)。

本发明与现有技术相比,加密算法上利用了卷积的特性,采集了原始数据在多维上的数据特性,并通过可配置的算法来打破加密方法固定的弊病,借助卷积的特性,能够使得密文越发抽象,因为卷积提取的是原始数据在高纬度特征空间中的结果,进一步加强了密码强度。

附图说明

图1为本发明的方法示意图;

图2为本发明实施例1中原始数据及卷积核部分的示意图;

图3为本发明实施例1中加密数据部分的示意图。

具体实施方式

以下对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

实施例1

如图1所示,下方区域为5*5大小的原始数据、3*3大小的卷积核,上方区域为3*3大小的加密数据,加密数据中的每个格子由原始数据中被下方的卷积核覆盖的3*3大小的区域通过指定的算法计算得出;

其指定的算法具体为:

如图2所示,其中卷积核覆盖在原始数据的左上角处,其中位于每个方格正中央的数字为原始数据,位于每个方格右下角的数字为卷积核中数据,将处于相同位置的原始数据与卷积核数据相乘,并将结果相加,得到得数为12,将其写入加密数据方阵的左上角处,并将卷积核向下或向右移动一个单位,继续重复上述步骤,直至卷积核方阵将原始数据上所有可能覆盖的位置全部覆盖过一次,即可得到如图3所示的加密数据方阵;

在如图2所示的5*5的原始数据方阵中,因为其它卷积核方阵的位置均与覆盖在加密数据方阵左上角处的位置均存在重复,因此设为无效数据,可在加密数据方阵中除去或被其它随机数字替换;而位于加密数据方阵左上角的“12”为有效数据,需要保留。

显然,如上所述,因完整保护数据的需要,当选用方阵大小为3*3的卷积核时,相对应的原始数据方阵的横向长度、纵向长度均应为3的倍数,如方阵大小为3*6、6*6、9*9,从而能使卷积核方阵在位置不产生重叠的情况下完全覆盖原始数据方阵。

在一般情况下卷积核方阵选用正方形。

为了增加保密性,在求出加密数据后,可对加密数据中的有效数据的位置进行按照一定规则进行乱序,例如奇数行与偶数行之间、奇数列与偶数列之间互换位置。

为了增加保密性,也可将加密数据方阵中的有效数据再视为原始数据方阵再进行一次加密流程,由于密文中的每个格子是通过一系列简单运算得出,所以是不可逆的,而卷积核的方阵大小,方阵内的数字可以改变,只有掌握卷积核及加密算法才可能破解,有效提高了数据的安全性。



技术特征:

技术总结
本发明涉及数据保护技术领域,具体地说是一种数据存储介质、加密方法,存储介质包括数据存储模块、卷积核模块、运算模块、加密数据模块,加密方法包括将原始数据方阵的某一位置完整覆盖在卷积核方阵上,并通过指定算法得到一个加密数据,再移动卷积核,使原始数据方阵的另一位置完整覆盖在卷积核方阵上,并重复上述计算;本发明和现有技术相比,加密算法上利用了卷积的特性,采集了原始数据在多维上的数据特性,并通过可配置的算法来打破加密方法固定的弊病,进一步加强了密码强度。

技术研发人员:陈杰
受保护的技术使用者:芜湖智久机器人有限公司
技术研发日:2019.01.18
技术公布日:2019.06.07
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1