一种利用DES算法构建的银行数据加密方法与流程

文档序号:33151594发布日期:2023-02-03 22:58阅读:25来源:国知局
一种利用DES算法构建的银行数据加密方法与流程
一种利用des算法构建的银行数据加密方法
技术领域
1.本发明涉及数据加密技术领域,具体是一种利用des算法构建的银行数据加密方法。


背景技术:

2.des加密算法是一种对称密码加密方法,相对于现有的md5、rsa、aes等基础算法,其相对成熟,且加密速度快,简单实用,兼具安全性和效率需求。
3.数据的加密一般应用于大数据处理领域,类似于银行等企业中,为了保全用户以及银行的信息,需要针对数据信息进行加密处理,防止银行数据丢失。
4.传统的银行数据信息处理,一般通过传统的加密算法进行加密处理,但是传统的数据加密方法,在生成密钥和密文时,密文会转化为非文本类型,给数据保存和网络传输带来影响,导致银行数据处理过程中,较为繁琐,且伴随着泄露的风险;因此,针对上述问题提出一种利用des算法构建的银行数据加密方法。


技术实现要素:

5.为了弥补现有技术的不足,解决上述至少一个问题,本发明提出的一种利用des算法构建的银行数据加密方法。
6.一种利用des算法构建的银行数据加密方法,该加密方法包括以下步骤:
7.步骤s1:根据银行数据库中的文件,将其列为多个分组并加密;
8.步骤s2:对单个分组文件内容进行des加密,形成密文;
9.步骤s3:对密文进行文本化处理,方便数据保存以及网络传输。
10.优选的,所述步骤s1中,银行数据库中的文件,根据客户基本信息、身份证号、联系方式以及存款金额将其分组,经加密后获得。
11.优选的,所述步骤s2中,首先获取文件加密后的64位明文以及64位密钥,对单个分组文件内容进行des加密,包括根据初始置换表,完成对数据的初始置换,并初步打乱明文数据位序;再将置换后的64位数据,划分为左右两组,每组为32位数据,进一步处理;对置换后的数据进行16轮迭代,在每一轮迭代中,依据扩展置换表,将每组数据扩展置换为48位数据,通过子密钥和48位数据进行异或逻辑运算,简称为xor运算,运算后产生的新64位数据利用逆置换表进行置换,逆置换完成后,明文加密为密文。
12.优选的,所述xor运算的逻辑公式为:
13.r1=l0xor f(r0,k1)
14.其中,r1表示右侧分组数据的当前轮次运算值;l0、r0表示上一轮次运算结果;k1为子密钥;再利用s盒置换表,将原始的48位数据置换成32位,参照p置换表进行p置换处理,并对左32位数据进行xor运算,公式如下:
15.f(r,k)=p(s(kxore(r)))
16.其中,f(r,k)为转换函数,p()代表p置换操作,s()代表s盒转换操作,e(r)表示对
右侧分组进行扩展置换操作。
17.优选的,所述步骤s3中,对密文进行文本化处理,即以字节为单位,将每个字节转换为对应的ascⅱ码的16进制表示。
18.优选的,所述步骤s2中,分组文件加密成密文后,在对其进行解密时,依次经历初始置换、16轮迭代、扩展置换、与子密钥xor运算、s盒置换、p置换、xor左32位数据以及逆置换操作,其中在逆转换前,需要提前准备64位密文与64位密钥。
19.优选的,所述步骤s3中,当密文文本化处理后,需要对其进行解密时,将密文中的每两个字符分为一组,解析为对应的16进制值,还原des密文数据块,再进行des解密,密文值与文本相互转换关键函数为16进制转换对应字符,对应字符转换为16进制。
20.优选的,所述步骤s2中,对数据进行加密以及解密过程前,均需要对密钥进行处理,制作为16行*48列子密钥数组数据。
21.本发明的有益之处在于:
22.本发明通过des加密处理,将密钥特征分散至整个数据处理中,同时,数据编码最大化影响密钥整体,从而实现无法根据数据统计获得密钥规律的目的,提高数据密文的破解难度,利用des加密算法,可针对大数据量进行加密处理,速度上优于其他加密算法,且安全性高。
附图说明
23.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
24.图1为本发明一种实施例的流程图。
具体实施方式
25.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
26.请参阅图1所示,一种利用des算法构建的银行数据加密方法,该加密方法包括以下步骤:
27.步骤s1:根据银行数据库中的文件,将其列为多个分组并加密;
28.步骤s2:对单个分组文件内容进行des加密,形成密文;
29.步骤s3:对密文进行文本化处理,方便数据保存以及网络传输。
30.作为本发明的一种实施方式,所述步骤s1中,银行数据库中的文件,根据客户基本信息、身份证号、联系方式以及存款金额将其分组,经加密后获得。
31.作为本发明的一种实施方式,所述步骤s2中,首先获取文件加密后的64位明文以及64位密钥,对单个分组文件内容进行des加密,包括根据初始置换表,完成对数据的初始置换,并初步打乱明文数据位序;再将置换后的64位数据,划分为左右两组,每组为32位数
据,进一步处理;对置换后的数据进行16轮迭代,在每一轮迭代中,依据扩展置换表,将每组数据扩展置换为48位数据,通过子密钥和48位数据进行异或逻辑运算,简称为xor运算,运算后产生的新64位数据利用逆置换表进行置换,逆置换完成后,明文加密为密文。
32.作为本发明的一种实施方式,所述xor运算的逻辑公式为:
33.r1=l0xor f(r0,k1)
34.其中,r1表示右侧分组数据的当前轮次运算值;l0、r0表示上一轮次运算结果;k1为子密钥;再利用s盒置换表,将原始的48位数据置换成32位,参照p置换表进行p置换处理,并对左32位数据进行xor运算,公式如下:
35.f(r,k)=p(s(kxore(r)))
36.其中,f(r,k)为转换函数,p()代表p置换操作,s()代表s盒转换操作,e(r)表示对右侧分组进行扩展置换操作。
37.作为本发明的一种实施方式,所述步骤s3中,对密文进行文本化处理,即以字节为单位,将每个字节转换为对应的ascⅱ码的16进制表示。
38.作为本发明的一种实施方式,所述步骤s2中,分组文件加密成密文后,在对其进行解密时,依次经历初始置换、16轮迭代、扩展置换、与子密钥xor运算、s盒置换、p置换、xor左32位数据以及逆置换操作,其中在逆转换前,需要提前准备64位密文与64位密钥。
39.作为本发明的一种实施方式,所述步骤s3中,当密文文本化处理后,需要对其进行解密时,将密文中的每两个字符分为一组,解析为对应的16进制值,还原des密文数据块,再进行des解密,密文值与文本相互转换关键函数为16进制转换对应字符,对应字符转换为16进制。
40.作为本发明的一种实施方式,所述步骤s2中,对数据进行加密以及解密过程前,均需要对密钥进行处理,制作为16行*48列子密钥数组数据。
41.具体的,密钥字符在生成时,需要保证密钥字符的有效性;des密钥一般为8个字符,实际只用到64位数据的56位,每个字符的最后一个二进制位被定义为校验位,未参与des运算,实际应用中,不应使用ascⅱ值128作为密钥值,保证des算法密文的有效性;
42.des采用8字符密钥,存在不良体验,针对该种情况,可允许字符数可变,当用户设置的字符数小于8时,由程序自动补空,当用户设置的密钥字符数大于8时,按照字符的二进制位,等间距选择64位二进制位,其他未用的二进制丢弃;
43.为了防止密钥丢失或泄露情况,建立严格的密码管理制度,严格监督数据库管理人员按照制度执行;
44.工作原理:通过des加密处理,将密钥特征分散至整个数据处理中,同时,数据编码最大化影响密钥整体,从而实现无法根据数据统计获得密钥规律的目的,提高数据密文的破解难度,利用des加密算法,可针对大数据量进行加密处理,速度上优于其他加密算法,且安全性高。
45.在本说明书的描述中,参考术语“一个实施例”、“示例”、“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
46.以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1