前后端通信中重要数据加固加密的方法及系统与流程

文档序号:29043528发布日期:2022-02-25 21:22阅读:242来源:国知局
前后端通信中重要数据加固加密的方法及系统与流程

1.本技术涉及通信安全技术领域,尤其涉及一种前后端通信中重要数据加固加密的方法及系统。


背景技术:

2.无论是在开发原生app、webapp还是pc端的软件中,凡是通过前后端分离的开发模式,往往会调用后端提供的接口来进行业务交互,数据的安全性非常重要,特别是用户相关的信息,以明文方式的前后端传输,接口安全性极低。
3.基于上述情况,现有技术中采用https协议通信请求以及对请求参数进行简单套用某种加密算法制作签名的方式完成互联网数据传输加密,实现互联网传输安全保护,但是这两种方式安全范围有限,信息依然可以被攻击、获取、伪造以及篡改。


技术实现要素:

4.有鉴于此,本技术的目的在于提出一种前后端通信中重要数据加固加密的方法及系统,用以解决或部分解决上述技术问题。
5.基于上述目的,本技术的第一方面提供了一种前后端通信中重要数据加固加密的方法,包括:
6.客户端接收到数据发送指令形成第一访问信息,将所述第一访问信息发送至服务端;
7.所述服务端接收到所述第一访问信息进行第一次加密生成第一加密信息,将所述第一加密信息发送至所述客户端;
8.所述客户端利用第一解密信息对所述第一加密信息进行第一次解密得到第一解密数据,销毁所述第一解密信息;
9.所述客户端利用所述第一解密数据对重要数据进行第二次加密生成第二加密信息,基于所述第二加密信息形成第二访问信息,将所述第二访问信息发送至所述服务端;
10.所述服务端利用第二解密信息对所述第二加密信息进行第二次解密,获取第二解密数据,销毁所述第二解密信息,所述服务端根据获取的所述第二解密数据中的重要数据执行业务功能。
11.本技术的第二方面提供了一种前后端通信中重要数据加固加密系统,包括:相互通信连接的客户端和服务端;
12.客户端包括:访问信息生成模块、客户端解密模块、客户端销毁模块和解密数据加密模块;
13.服务端包括:访问信息加密模块、服务端解密模块、服务端销毁模块和业务功能执行模块;
14.访问信息生成模块,被配置为接收数据发送指令后生成第一访问信息;
15.访问信息加密模块,被配置为接收到第一访问信息进行加密生成第一加密信息;
16.客户端解密模块,被配置为利用第一解密信息对接收到的第一加密信息进行第一次解密得到第一解密数据;
17.客户端销毁模块,被配置为利用第一解密信息进行解密后对第一解密信息进行销毁;
18.解密数据加密模块,被配置为利用第一解密数据对重要数据进行第二次加密生成第二加密信息;
19.服务端解密模块,被配置为利用第二解密信息对接收到的第二加密信息进行第二次解密获取第二解密数据;
20.服务端销毁模块,被配置为利用第二解密信息进行解密后对第二解密信息进行销毁;
21.业务功能执行模块,被配置为根据获取的重要数据进行逻辑处理执行功能。
22.从上面所述可以看出,本技术提供的前后端通信中重要数据加固加密的方法及系统,在客户端和服务端之间传输过程中经过多层加密解密,避免固定信息传输造成的增加被破解风险,加固传输过程的保密性,并销毁传输过程中每次在客户端及服务端存入的记录,从而加强重要数据在传输过程中保密性,避免数据包被拦截后密钥泄露,导致数据被破解,篡改等情况发生。
附图说明
23.为了更清楚地说明本技术或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
24.图1为本技术一个实施例的前后端通信中重要数据加固加密方法的流程图;
25.图2为本技术另一个实施例的前后端通信中重要数据加固加密方法的流程图;
26.图3为本技术实施例的前后端通信中重要数据加固加密系统的结构框图;
27.图4为本技术另一个实施例的前后端通信中重要数据加固加密系统的结构框图;
28.图5为本技术实施例的电子设备的结构图。
具体实施方式
29.为使本技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本技术进一步详细说明。
30.需要说明的是,除非另外定义,本技术实施例使用的技术术语或者科学术语应当为本技术所属领域内具有一般技能的人士所理解的通常意义。本技术实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
31.相关技术中一般在通信请求中使用https协议,主要通过数字证书、加密算法、非对称密钥等技术对数据保密性、数据完整性及身份校验安全性进行保护,然而https协议的安全是有范围的,在面对黑客攻击、拒绝服务攻击和服务器劫持等方面起不到保护作用,对于有些第三方抓包工具通过某些手段可以抓取https的明文,因此对一些敏感数据,仍需要进行加密处理。
32.另外,相关技术中还通过简单套用某种加密算法制作签名的方式防止数据被篡改,但是只要破解人了解或是通过穷举方式获取是哪种加密方式,基本都可以对数据进行篡改、伪造。
33.本技术的实施例提供一种前后端通信中重要数据加固加密的方法,加固密钥传输过程,从而加强重要数据传输过程中的保密性。
34.如图1所示,本实施例的方法包括:
35.步骤101,客户端接收到数据发送指令形成第一访问信息,将第一访问信息发送至服务端。
36.在该步骤中,通过人与客户端的交互触发数据发送指令在客户端形成第一访问信息访问服务端,在客户端与服务端之间建立通信连接。
37.客户端可为网页浏览器、收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端软件等,这里不对客户端作具体限定。
38.数据发送指令可为人对客户端进行的网页浏览器搜索中输入的信息数据、及时通讯的客户端软件中的身份信息数据和密码数据等,这里不对数据发送指令作具体限定,通过人为对客户端进行直接操作实现数据发送指令的触发。
39.步骤102,服务端接收到第一访问信息进行第一次加密生成第一加密信息,将第一加密信息发送至客户端。
40.在该步骤中,服务端接收到第一访问信息生成第三rsa密钥对,第三rsa密钥对包括第三公钥及第三私钥,记录第三rsa密钥对对应的第二时间戳,以第二时间戳为标志位,将第三私钥存入服务端会话信息,通过第一访问信息对第三私钥及第二时间戳进行加密形成第一加密信息发送至客户端。
41.通过rsa算法随机生成密钥对,由一对密钥进行加解密过程,在不直接传递密钥情况下完成解密,从而确保信息的安全性,避免直接传递密钥所造成被破解风险。
42.通过时域等技术使服务端响应运行时在服务器内创建独享的时域对象,存储特定会话所需的属性及配置信息,这里将第三私钥存入服务端会话信息中,实现第三私钥的保留,传输第三公钥,保护信息安全。
43.步骤103,客户端利用第一解密信息对第一加密信息进行第一次解密得到第一解密数据,销毁第一解密信息。
44.在该步骤中,客户端通过本地存储的第一解密信息对接收到的第一加密信息进行解密,获取第一解密数据,销毁本地存储的第一解密信息。
45.其中第一解密信息通过本地存储的方式进行客户端存储,其存放的数据参数,不会主动传递给服务器端,解决了无用参数传递的问题。本地存储的数据存放在硬盘,到达有效期后销毁,避免存储在客户端的数据被攻击获取。
46.步骤104,客户端利用第一解密数据对重要数据进行第二次加密生成第二加密信
息,基于第二加密信息形成第二访问信息,将第二访问信息发送至所述服务端。
47.在该步骤中,客户端通过获取的第一解密数据中的第三公钥对重要数据进行加密生成第二加密信息,基于第二加密信息形成第二访问信息,将第二访问信息发送至服务端。
48.第二加密信息通过第二时间戳进行签名,替代运用数字签名的签名方式,时间戳签名方式不受有限期的限制和随时吊销问题,对需要保护的传输内容的安全性进一步加固。
49.步骤105,服务端利用第二解密信息对第二访问信息进行第二次解密,获取第二解密数据,销毁第二解密信息,服务端根据获取的所述第二解密数据中的重要数据执行业务功能。
50.在该步骤中,服务端根据接收到的第二访问信息中第二时间戳取出调用存入会话信息中的第三rsa密钥对中的第三私钥,以第三私钥对第二加密信息进行解密,获取重要数据,销毁存入会话信息中的第三私钥,服务端根据获取的第二解密数据中重要数据执行业务功能。
51.服务端获取的重要数据为登录页面的逻辑处理数据,响应重要数据,在数据库中查找出匹配的内容,再由浏览器充当客户端将登录页面内容显示出来,这里不对重要数据作具体限定。
52.通过上述方案,随机生成密钥,进行多次加密传输密钥,在数据传输过程中销毁客户端及服务端的密钥储存记录,这样就加固了密钥传输过程,从而加强重要数据传输过程中保密性,避免了固定密钥增加被破解的风险,同时避免了密钥信息存储在客户端造成密钥泄露以及截获服务端返回密钥的请求破解或伪造请求数据。
53.在一些实施例中,如图2所示,在步骤102、103、104和105之前包括:客户端接收到数据发送指令形成第一访问信息,将第一访问信息发送至服务端,方法还包括:
54.步骤201,客户端接收数据发送指令形成加密访问数据,将加密访问数据发送至服务端。
55.在该步骤中,客户端接收数据发送指令生成第一rsa密钥对,第一rsa密钥对包括第一公钥及第一私钥,将第一私钥本地存储,对第一公钥用base64进行编码,以base64编码后的所述第一公钥为参数访问服务端。
56.通过base64方式对第一公钥进行编码,bsae64编码方式将较长的标识符编码为一个字符串,把二进制数据编码,实现数据不可读性,保护数据传输的保密性。
57.步骤202,服务端接收到加密访问数据进行加密生成密文信息,将密文信息发送至所述客户端。
58.在该步骤中,服务端接收到以base64编码后的第一公钥生成第二rsa密钥对,第二rsa密钥对包括第二公钥及第二私钥,记录第二rsa密钥对对应的第一时间戳,以第一时间戳为标志位,将第二公钥存入服务端会话信息,通过第一公钥对第二私钥及第一时间戳进行加密形成密文信息发送至客户端。
59.第二rsa密钥对在服务端生成,再进行加密传输,服务端攻击难度高,加固传输保密性。
60.步骤203,客户端利用解密访问信息对密文信息进行解密生成第一访问信息,销毁解密访问信息,将第一访问信息发送至服务端。
61.在该步骤中,客户端通过本地存储的第一私钥对接收到的密文信息进行解密,获取密文信息中的第二私钥及第一时间戳,形成第一访问信息,销毁本地存储中的第一私钥,将解密出的第二私钥本地存储,将第一访问信息发送至服务端。
62.以时间戳作为数字签名的变种应用,作为密钥对生成的唯一时间标识,对前后端通信的安全进行进一步保护,防止传输过程中数据被伪造和篡改。
63.在一些实施例中,客户端接收到数据发送指令形成第一访问信息,将第一访问信息发送至服务端,方法还可以重复上述步骤201、202、203,可进行多层加密,加密层数根据客户端及服务端性能进行设置,这里不对加密层数作具体限定。
64.通过上述方案,增加加密层数,使得加密规则更加牢固,降低被破解风险,另外第二密钥在服务端生成存储,然后传输第三密钥,因服务端相比客户端攻击难度高,保密性也较强,进一步地加固密钥传输过程,从而实现加强重要数据传输过程中的保密性效果。
65.需要说明的是,本技术实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本技术实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
66.需要说明的是,上述对本技术的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
67.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种前后端通信中重要数据加固加密系统。
68.参考图3,所述前后端通信中重要数据加固加密系统,包括:相互通信连接的客户端和服务端;
69.客户端包括:访问信息生成模块301、客户端解密模块303、客户端销毁模块304和解密数据加密模块305;
70.服务端包括:访问信息加密模块302、服务端解密模块306、服务端销毁模块307和业务功能执行模块308;
71.访问信息生成模块301,被配置为接收数据发送指令后生成第一访问信息;
72.访问信息加密模块302,被配置为接收到第一访问信息进行加密生成第一加密信息;
73.客户端解密模块303,被配置为利用第一解密信息对接收到的第一加密信息进行第一次解密得到第一解密数据;
74.客户端销毁模块304,被配置为利用第一解密信息进行解密后对第一解密信息进行销毁;
75.解密数据加密模块305,被配置为利用第一解密数据对重要数据进行第二次加密生成第二加密信息;
76.服务端解密模块306,被配置为利用第二解密信息对接收到的第二加密信息进行第二次解密获取第二解密数据;
77.服务端销毁模块307,被配置为利用第二解密信息进行解密后对第二解密信息进行销毁;
78.业务功能执行模块308,被配置为根据获取的重要数据进行逻辑处理执行功能。
79.在一些实施例中,如图4所示,所述前后端通信中重要数据加固加密系统,还包括:
80.客户端包括:加密访问数据生成模块401、解密访问信息解密模块403和解密访问信息销毁模块404;
81.服务端包括:加密访问数据加密模块402;
82.加密访问数据生成模块401,被配置为接收数据发送指令形成加密访问数据;
83.加密访问数据加密模块402,被配置为根据加密访问数据进行加密生成密文信息;
84.解密访问信息解密模块403,被配置为利用解密访问信息对接收到的密文信息进行解密生成第一访问信息;
85.解密访问信息销毁模块404,被配置为利用解密访问信息进行解密后对解密访问信息进行销毁。
86.在一些实施例中,加密访问数据生成模块401,被配置为客户端接收数据发送指令生成第一rsa密钥对,第一rsa密钥对包括第一公钥及第一私钥,将第一私钥本地存储,对第一公钥用base64进行编码,以base64编码后的第一公钥为参数访问服务端。
87.在一些实施例中,加密访问数据加密模块402,被配置为服务端接收到以base64编码后的第一公钥生成第二rsa密钥对,第二rsa密钥对包括第二公钥及第二私钥,记录第二rsa密钥对对应的第一时间戳,以第一时间戳为标志位,将第二公钥存入服务端会话信息,通过第一公钥对第二私钥及第一时间戳进行加密形成密文信息发送至所述客户端。
88.在一些实施例中,解密访问信息解密模块403,被配置为客户端通过本地存储的所第一私钥对接收到的密文信息进行解密,获取密文信息中的第二私钥及所述第一时间戳,形成第一访问信息。
89.解密访问信息销毁模块404,被配置为销毁本地存储中的第一私钥,将解密出的第二私钥本地存储,将第一访问信息发送至服务端。
90.在一些实施例中,访问信息加密模块302,被配置为服务端接收到第一访问信息生成第三rsa密钥对,第三rsa密钥对包括第三公钥及第三私钥,记录第三rsa密钥对对应的第二时间戳,以第二时间戳为标志位,将第三私钥存入服务端会话信息,通过第一访问信息对第三私钥及第二时间戳进行加密形成第一加密信息发送至客户端。
91.在一些实施例中,客户端解密模块303,被配置为客户端通过本地存储的第一解密信息,对接收到的第一加密信息进行解密,获取第一解密数据;
92.客户端销毁模块304,被配置为销毁客户端本地存储的第一解密信息。
93.在一些实施例中,解密数据加密模块305,被配置为客户端通过获取的第一解密数据中的第三公钥对重要数据进行加密生成第二加密信息,基于第二加密信息形成第二访问信息,将第二访问信息发送至服务端。
94.在一些实施例中,服务端解密模块306,被配置为服务端根据接收到的第二访问信息中第二时间戳取出调用存入会话信息中的第三rsa密钥对中的第三私钥,以所第三私钥对所述第二加密信息进行解密,获取重要数据;
95.服务端销毁模块307,被配置为销毁服务端存入会话信息中的第三私钥;
96.业务功能执行模块308,被配置为服务端根据获取的第二解密数据中重要数据执行业务功能。
97.为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本技术时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
98.上述实施例的装置用于实现前述任一实施例中相应的前后端通信中重要数据加固加密方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
99.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的前后端通信中重要数据加固加密方法。
100.图5示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器501、存储器502、输入/输出接口503、通信接口504和总线505。其中处理器501、存储器502、输入/输出接口503和通信接口504通过总线505实现彼此之间在设备内部的通信连接。
101.处理器501可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
102.存储器502可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器502可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器502中,并由处理器501来调用执行。
103.输入/输出接口503用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
104.通信接口504用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
105.总线505包括一通路,在设备的各个组件(例如处理器501、存储器502、输入/输出接口503和通信接口504)之间传输信息。
106.需要说明的是,尽管上述设备仅示出了处理器501、存储器502、输入/输出接口503、通信接口504以及总线505,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
107.上述实施例的电子设备用于实现前述任一实施例中相应的前后端通信中重要数据加固加密方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
108.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的前后端通信中重要数据加固加密方法。
109.本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以
由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
110.上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的前后端通信中重要数据加固加密方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
111.所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本技术的范围(包括权利要求)被限于这些例子;在本技术的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本技术实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
112.另外,为简化说明和讨论,并且为了不会使本技术实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本技术实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本技术实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本技术的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本技术实施例。因此,这些描述应被认为是说明性的而不是限制性的。
113.尽管已经结合了本技术的具体实施例对本技术进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。
114.本技术实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本技术实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1