微服务数据传输方法、装置、电子设备及存储介质与流程

文档序号:33628635发布日期:2023-03-28 22:06阅读:34来源:国知局
微服务数据传输方法、装置、电子设备及存储介质与流程

1.本技术涉及数据传输技术领域,尤其涉及一种微服务数据传输方法、装置、电子设备及存储介质。


背景技术:

2.网络给数据传输带来的简单和便利性不言而喻,但其背后也伴随着诸多的信息安全隐患,密码算法作为信息安全的核心自然而然成为关注的重点。微服务是一种软件开发技术架构,它将单一的应用程序划分为一组小的服务,服务中间互相解耦,互相协调和配合。
3.通常,微服务框架中的数据传输可以通过前端传递到后端,也可以从后端传递到前端,数据传输的加密过程在后端中的加密网关中完成。但是,加密网关中的加密算法存在以下问题:加密解密算法不符合信息安全规范、加密解密算法不统一,加密解密算法会影响微服务框架的性能。


技术实现要素:

4.有鉴于此,本技术的目的在于提出一种微服务数据传输方法、装置、电子设备及存储介质,用以解决或部分解决上述技术问题。
5.基于上述目的,本技术的第一方面提供了一种微服务数据传输方法,所述方法应用于微服务框架,所述微服务框架包括:前端和后端;所述方法包括:
6.响应于确定所述前端接收请求数据,获取所述请求数据中的第一加密属性;
7.响应于确定所述第一加密属性为真,所述前端采用国密算法对所述请求数据进行第一加密处理,得到第一传输数据并将所述第一传输数据发送到所述后端;
8.所述后端获取所述第一传输数据中的关键字;
9.所述后端根据所述关键字采用所述国密算法对所述第一传输数据进行第一解密处理,得到第一解密结果,所述前端到所述后端的数据传输完成;
10.响应于确定所述后端接收响应数据,获取所述响应数据中的控制标注;
11.响应于确定所述控制标注中存在加密标注,所述后端采用国密算法对所述响应数据进行第二加密处理,得到第二传输数据并将所述第二传输数据发送到所述前端;
12.所述前端获取所述第二传输数据中的第二加密属性;
13.所述前端根据所述第二加密属性采用所述国密算法对所述第二传输数据进行第二解密处理,得到第二解密结果,所述前端到所述后端的数据传输完成。
14.本技术的第二方面提供一种微服务数据传输装置,所述装置应用于微服务框架,所述微服务框架包括:前端和后端;所述装置包括:
15.获取第一属性模块,被配置为响应于确定所述前端接收请求数据,获取所述请求数据中的第一加密属性;
16.第一加密模块,被配置为响应于确定所述第一加密属性为真,所述前端采用国密
算法对所述请求数据进行第一加密处理,得到第一传输数据并将所述第一传输数据发送到所述后端;
17.获取关键字模块,被配置为所述后端获取所述第一传输数据中的关键字;
18.第一解密模块,被配置为所述后端根据所述关键字采用所述国密算法对所述第一传输数据进行第一解密处理,得到第一解密结果,所述前端到所述后端的数据传输完成;
19.获取标注模块,被配置为响应于确定所述后端接收响应数据,获取所述响应数据中的控制标注;
20.第二加密模块,被配置为响应于确定所述控制标注中存在加密标注,所述后端采用国密算法对所述响应数据进行第二加密处理,得到第二传输数据并将所述第二传输数据发送到所述前端;
21.获取第二属性模块,被配置为所述前端获取所述第二传输数据中的第二加密属性;
22.第二解密模块,被配置为所述前端根据所述第二加密属性采用所述国密算法对所述第二传输数据进行第二解密处理,得到第二解密结果,所述前端到所述后端的数据传输完成。
23.本技术的第三方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述的方法。
24.本技术的第四方面提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行第一方面所述方法。
25.从上面所述可以看出,本技术提供的一种微服务数据传输方法、装置、电子设备及存储介质,采用国密算法对前端接收的请求数据以及后端接收的响应数据进行加密解密处理,利用国密算法的规范性保证了数据传输过程的安全规范,并且加密解密过程都采用同一种国密算法实现了加密解密算法的统一;将请求数据中第一加密属性和响应数据中控制标注的赋值作为应用国密算法的判断依据,避免了对前端和后端中业务代码的修改,从而减少了加密解密算法对微服务框架性能的影响,保证了加密解密过程的有效性并且提高了加密解密过程的效率。
附图说明
26.为了更清楚地说明本技术或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
27.图1a为本技术实施例的微服务数据传输方法的流程示意图;
28.图1b为步骤102的步骤展开示意图;
29.图1c为步骤104的步骤展开示意图;
30.图1d为步骤106的步骤展开示意图;
31.图1e为步骤108的步骤展开示意图;
32.图2a为本技术另一个实施例的前端到后端数据传输的流程示意图;
33.图2b为本技术另一个实施例的后端到前端数据传输的流程示意图;
34.图3为本技术实施例的微服务数据传输装置的结构示意图;
35.图4为本技术实施例的电子设备的结构示意图。
具体实施方式
36.为使本技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本技术进一步详细说明。
37.需要说明的是,除非另外定义,本技术实施例使用的技术术语或者科学术语应当为本技术所属领域内具有一般技能的人士所理解的通常意义。本技术实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
38.如背景技术所述,随着互联网特别是移动互联网的蓬勃发展,生产生活方式发生了重大改变。网络带来的简单和便利性不言而喻,但其背后也伴随着诸多的信息安全隐患,信息安全在安全生产中也占有着越来越重要的位置。
39.密码算法作为信息安全的核心自然而然成为关注的重点。信息安全行业认定和公布了一系列密码算法标准及其应用规范,其中部分算法已经成为了国际标准。标准算法主要包含sm1(shangyong1,商用密码1)、sm2(shangyong2,商用密码2)、sm3(shangyong3,商用密码3)、sm4(shangyong4,商用密码4)、sm9(shangyong9,商用密码9)等算法,每种算法的作用亦不相同。微服务是一种软件开发技术架构,它将单一的应用程序划分为一组小的服务,服务中间互相解耦,互相协调和配合。随着微服务技术的蓬勃发展,怎样在微服务架构的应用软件下实现软件数据的安全传输和安全存储,怎样构建一套符合网络安全等级保护的应用软件架构,是所有的软件设计和开发人员必须要面临和解决的问题。
40.这样带来的问题有:1.数据安全传输和存储方法不统一,算法不统一,标准不统一,其中有些算法并不符合网络安全等级保护的要求;2.数据加密和解密实现五花八门,影响了应用软件的开发效率和维护难度;3.部分实现方法和算法可能会面临软件性能低的问题。
41.由此可见,需要提供一种符合信息安全行业规范、加密解密算法统一、对微服务性能影响小的微服务数据传输方法。
42.鉴于此,本技术的实施例提供一种微服务数据传输方法,可以应用于微服务框架中数据传输的加密解密过程。
43.如图1a所示,本实施例的方法应用于微服务框架,所述微服务框架包括:前端和后端;本实施例的方法包括:
44.步骤101,响应于确定所述前端接收请求数据,获取所述请求数据中的第一加密属性。
45.在该步骤中,请求数据指的是需要后端返回数据的数据,本实施例优选的请求数
据可以是前端发送到后端的,需要后端返回数据的数据,例如,采用http(hyper text transfer protocol,超文本传输协议)的请求参数、请求体、请求头和文件。第一加密属性指的是前端中表示是否对请求数据进行加密的属性,本技术实施例优选的第一加密属性可以是前端中拦截器获取的,表示是否对请求数据进行加密的属性,例如,通过axios(一种网络请求库)的拦截器获取的encrypt(加密)属性。这样,为后续采用国密算法进行第一加密处理提供加密判断依据。将请求数据中第一加密属性赋值作为应用国密算法的判断依据,避免了对前端和后端中业务代码的修改,从而减少了加密解密算法对微服务框架性能的影响,保证了加密解密过程的有效性并且提高了加密解密过程的效率。
46.步骤102,响应于确定所述第一加密属性为真,所述前端采用国密算法对所述请求数据进行第一加密处理,得到第一传输数据并将所述第一传输数据发送到所述后端。
47.在该步骤中,国密算法指的是商用密码算法。是由信息安全行业认定和公布的密码算法标准及其应用规范,本技术实施例优选的国密算法可以是分组加密算法,例如,sm4加密算法。第一传输数据指的是前端传输到后端的数据,本技术实施例优选的第一传输数据可以是前端传输到后端的json(javascript object notation,轻量级数据交换格式)格式数据,例如,第一传输数据可以是请求数据的地址。这样,为后续后端进行解密提供了数据基础。采用国密算法对前端接收的请求数据进行加密解密处理,利用国密算法的规范性保证了数据传输过程的安全规范,并且加密解密过程都采用同一种国密算法实现了加密解密算法的统一。
48.步骤103,所述后端获取所述第一传输数据中的关键字。
49.在该步骤中,关键字指的是键值对中用于查询的数据,本技术实施例优选的关键字可以是第一传输数据中键值对中用于查询的数据,例如,第一传输数据中key(关键)为ciphertext(加密文本)。这样,为后续后端进行解密提供了解密判断基础。
50.步骤104,所述后端根据所述关键字采用所述国密算法对所述第一传输数据进行第一解密处理,得到第一解密结果,所述前端到所述后端的数据传输完成。
51.在该步骤中,第一解密结果指的是业务微服务接收到的数据,本实施例优选的第一解密结果可以是后端中业务微服务接收到的数据。
52.步骤105,响应于确定所述后端接收响应数据,获取所述响应数据中的控制标注。
53.在该步骤中,响应数据指的是根据请求获取的需要返回的数据,本实施例优选的响应数据可以是后端发送到前端的,根据请求获取的需要返回的数据。控制标注指的后端中表示是否对响应数据进行加密的标注,本技术实施例优选的控制标注可以是后端通过切面获取的,表示是否对响应数据进行加密的标注,例如,通过aop(aspect oriented programming面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术)获取的controller(控制器)层标注。这样,为后续采用国密算法进行第二加密处理提供加密判断依据。
54.步骤106,响应于确定所述控制标注中存在加密标注,所述后端采用国密算法对所述响应数据进行第二加密处理,得到第二传输数据并将所述第二传输数据发送到所述前端。
55.在该步骤中,加密标注指的是后端中表示对响应数据进行加密的标注,本技术实施例优选的控制标注可以是后端通过切面获取的,表示对响应数据进行加密的标注,例如,
通过aop(aspect oriented programming面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术)获取的controller(控制器)层标注的@encryptresult(加密结果)。将响应数据中控制标注的赋值作为应用国密算法的判断依据,避免了对前端和后端中业务代码的修改,从而减少了加密解密算法对微服务框架性能的影响,保证了加密解密过程的有效性并且提高了加密解密过程的效率。第二传输数据指的是后端传输到前端的数据,本技术实施例优选的第二传输数据可以是后端传输到前端的json(javascript object notation,轻量级数据交换格式)格式数据。这样,为后续前端进行解密提供了数据基础。
56.步骤107,所述前端获取所述第二传输数据中的第二加密属性。
57.在该步骤中,第二加密属性指的是表示是否对响应数据进行解密的属性,本技术实施例优选的第二加密属性可以是前端中响应拦截器获取的,表示是否对响应数据进行解密的属性,例如,通过axios(一种网络请求库)的响应拦截器获取的encrypt(加密)属性。这样,为后续前端进行解密提供了解密判断基础。
58.步骤108,所述前端根据所述第二加密属性采用所述国密算法对所述第二传输数据进行第二解密处理,得到第二解密结果,所述前端到所述后端的数据传输完成。
59.在该步骤中,第二解密结果指的是业务前端接收到的数据,本实施例优选的第二解密结果可以是前端中业务前端接收到的数据。采用国密算法对后端接收的响应数据进行加密解密处理,利用国密算法的规范性保证了数据传输过程的安全规范,并且加密解密过程都采用同一种国密算法实现了加密解密算法的统一。
60.通过上述方案,采用国密算法对前端接收的请求数据以及后端接收的响应数据进行加密解密处理,利用国密算法的规范性保证了数据传输过程的安全规范,并且加密解密过程都采用同一种国密算法实现了加密解密算法的统一;将请求数据中第一加密属性和响应数据中第二加密属性的赋值作为应用国密算法的判断依据,避免了对前端和后端中业务代码的修改,从而减少了加密解密算法对微服务框架性能的影响,保证了加密解密过程的有效性并且提高了加密解密过程的效率。
61.在一些实施例中,所述方法还包括:
62.响应于确定所述第一加密属性为假,所述前端将所述请求数据作为所述第一传输数据发送到所述后端。
63.在上述方案中,当第一加密属性为假时,表示前端接收的请求数据不需要进行第一加密处理。
64.通过上述方案,为后续后端进行解密提供了数据基础。
65.在一些实施例中,如图1b所示,步骤102的具体展开步骤包括:
66.步骤1021,所述前端采用预先存储的前端公钥对随机获取的密钥进行加密,得到前端加密密钥;
67.步骤1022,所述前端根据前端加密密钥采用所述国密算法对所述请求数据进行加密,得到第一加密数据;
68.步骤1023,所述前端将所述第一加密数据中的关键字设置为密码文本;
69.步骤1024,所述前端采用摘要算法对所述第一加密数据进行摘要提取,得到第一摘要数据并将所述第一加密数据、所述第一摘要数据和所述前端加密密钥作为所述第一传
输数据。
70.在上述方案中,前端公钥指的是存储在前端的非对称算法中的公钥,本技术实施例中优选的前端公钥可以是存储在前端的非对称算法sm2中的公钥。前端加密密钥指的是前端的分组加密算法中的密钥,本技术实施例优选的前端加密密钥可以是请求数据对应的分组加密算法sm4中的密钥。摘要算法指的是能够提取数据摘要的算法,本实施例优选的摘要算法可以是微服务框架中能够提取数据摘要的算法sm3。前端公钥保证了等保三级的要求,前端加密密钥的随机性保证了第一传输数据与前端加密密钥的一一对应。
71.例如,请求数据可以是http://ip:port/page/list?a=1&b=asfd第一加密结果可以是http://ip:port/page/list?chipertext=12abe5a12234beacead89。
72.通过上述方案,采用国密算法对前端接收的请求数据进行加密处理,利用国密算法的规范性保证了数据传输过程的安全规范。
73.在一些实施例中,如图1c所示,步骤104的具体展开步骤包括:
74.步骤1041,响应于确定所述关键字为密码文本,所述后端采用预先存储的后端私钥对所述前端加密密钥进行解密,得到后端解密密钥;
75.步骤1042,所述后端根据所述后端解密密钥采用所述国密算法对所述第一传输数据中的第一加密数据进行解密,得到第一解密数据;
76.步骤1043,所述后端采用所述摘要算法对所述第一解密数据进行摘要提取,得到第二摘要数据;
77.步骤1044,响应于确定所述第一摘要数据等于所述第二摘要数据,将所述第一解密数据作为第一解密结果。
78.在上述方案中,后端私钥指的是存储在后端的非对称算法中的私钥,本技术实施例中优选的后端私钥可以是存储在后端的非对称算法sm2中的私钥。后端解密密钥指的是后端的分组加密算法中的用于解密的密钥,本技术实施例优选的后端解密密钥可以是请求数据对应的分组加密算法sm4中的用于解密的密钥。前端公钥和后端私钥保证了等保三级的要求,第一摘要数据和第二摘要数据的对比保证了第一传输数据的传输完整性。
79.通过上述方案,采用国密算法对前端接收的请求数据进行解密处理,利用国密算法的规范性保证了数据传输过程的安全规范,并且加密解密过程都采用同一种国密算法实现了加密解密算法的统一。
80.在一些实施例中,所述方法还包括:
81.响应于确定所述控制标注中不存在加密标注,所述后端将所述响应数据作为所述第二传输数据发送到所述前端。
82.在上述方案中,当不存在加密标注时,表示后端接收的响应数据不需要进行第二加密处理。
83.通过上述方案,为后续前端进行解密提供了数据基础。
84.在一些实施例中,如图1d所示,步骤106的具体展开步骤包括:
85.步骤1061,所述后端采用预先存储的后端公钥对随机生成的密钥进行加密,得到后端加密密钥;
86.步骤1062,所述后端根据所述后端加密密钥采用所述国密算法对所述响应数据进行加密,得到第二加密数据;
87.步骤1063,所述后端将所述第二加密数据中的第二加密属性设置为真;
88.步骤1064,所述后端采用摘要算法对所述第二加密数据进行摘要提取,得到第三摘要数据并将所述第二加密数据、第三摘要数据和所述后端加密密钥作为所述第二传输数据。
89.在上述方案中,后端公钥指的是存储在后端的非对称算法中的公钥,本技术实施例中优选的后端公钥可以是存储在前端的非对称算法sm2中的公钥。后端加密密钥指的是后端的分组加密算法中的密钥,本技术实施例优选的后端加密密钥可以是响应数据对应的分组加密算法sm4中的密钥。后端公钥保证了等保三级的要求,后端加密密钥的随机性保证了第二传输数据与后端加密密钥的一一对应。
90.例如,响应数据可以是{code:200,result:{a:1,b:asfd},encrypt:false},第二加密数据可以是{code:200,result:{12abe5a12234beacead89},encrypt:true}。
91.通过上述方案,采用国密算法对后端接收的响应数据进行加密处理,利用国密算法的规范性保证了数据传输过程的安全规范。
92.在一些实施例中,如图1e所示,步骤108的具体展开步骤包括:
93.步骤1081,响应于确定所述第二传输数据中的第二加密属性为真,所述前端采用预先存储的前端私钥对所述后端加密密钥进行解密,得到前端解密密钥;
94.步骤1082,所述前端根据所述前端解密密钥采用所述国密算法对所述第二传输数据中的第二加密数据进行解密,得到第二解密数据;
95.步骤1083,所述前端采用所述摘要算法对所述第二解密数据进行摘要提取,得到第四摘要数据;
96.步骤1084,响应于确定所述第三摘要数据等于所述第四摘要数据,所述前端将所述第二解密数据作为第二解密结果。
97.在上述方案中,前端私钥指的是存储在前端的非对称算法中的私钥,本技术实施例中优选的前端私钥可以是存储在前端的非对称算法sm2中的私钥。前端解密密钥指的是前端的分组加密算法中的用于解密的密钥,本技术实施例优选的前端解密密钥可以是响应数据对应的分组加密算法sm4中的用于解密的密钥。后端公钥和前端私钥保证了等保三级的要求,第三摘要数据和第四摘要数据的对比保证了第二传输数据的传输完整性。
98.通过上述方案,采用国密算法对后端接收的响应数据进行解密处理,利用国密算法的规范性保证了数据传输过程的安全规范,并且加密解密过程都采用同一种国密算法实现了加密解密算法的统一。
99.需要说明的是,本技术实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本技术实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
100.需要说明的是,上述对本技术的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
101.基于同一发明构思,在上述各个实施例方法对应实施方案的基础上,可以有如下具体实现情况。
102.具体的,本实施例可以应用于满足bs(browserserver,浏览器服务器)架构的应用软件。前端可选用mvvm(model-view-viewmodel,一种事件驱动编程方式)框架,如vue(渐进式框架)、react(用户界面框架)、angularjs(应用设计框架)等,亦可为jquery(轻量级库)框架;后端主要适用于java语言编写,支持常见的主流框架,如springboot(轻量应用程序框架)、springmvc(业务模型-指用户界面-控制器)等。在下面的描述中,前端以vue的axios为例,后端以springboot框架下的zuul(一种微服务网关)网关组件为例。
103.如图2a所示,除了对param(请求参数)和body(请求体)进行加密外,还可对header(请求头)和file(文件)进行加密传输。前端通过axios的过滤器,可获取到请求数据,通过获取axios(ajax,数据交互方式)中的encrypt属性值(true或false),判断是否对数据进行整体的加密处理,传给后端。在微服务架构下,请求地址一般先进入网关微服务。网关微服务可通过zuul的过滤器(filter)获取到请求参数或请求体,然后判定有没有key值叫做ciphertext(密码文本)的数据。如果有,则认为数据是密文,而对其解密;如果没有,则不进行任何处理。解密完毕后,将明文数据重新赋予请求参数或请求体,传给置于网关之后的业务模块微服务,业务微服务接收到的即为明文的数据。在此过程中,sm2的公钥置于前端,私钥置于后端,sm4的密钥为随机生成,即“一次一密”。所以只要sm2的私钥不被泄露,即使加密数据被捕获拦截,亦无法对数据进行解密。此过程中后端业务代码不需做任何处理。
104.如图2b所示,后端通过标记@encryptresult注解说明哪些请求要进行响应加密,加过密的数据返回前端时,携带的encrypt属性的值为true。前端过滤器里拦截到加密数据后,通过解密算法进行解密处理,处理完成后修改encrypt为false,然后交由业务模块进行后续处理。在此过程中,sm2的公钥存储在后端,私钥存储在前端。为了防止前端的sm2私钥被泄露,需要对js文件进行混淆和加密处理。此过程中前端业务代码不需做任何处理。
105.上述实施例的微服务数据传输方法,具有如前述任一实施例中的微服务数据传输方法实施例的有益效果,在此不再赘述。
106.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种微服务数据传输装置。
107.参考图3,所述微服务数据传输装置,所述装置应用于微服务框架,所述微服务框架包括:前端和后端;所述装置包括:
108.获取第一属性模块201,被配置为响应于确定所述前端接收请求数据,获取所述请求数据中的第一加密属性;
109.第一加密模块202,被配置为响应于确定所述第一加密属性为真,所述前端采用国密算法对所述请求数据进行第一加密处理,得到第一传输数据并将所述第一传输数据发送到所述后端;
110.获取关键字模块203,被配置为所述后端获取所述第一传输数据中的关键字;
111.第一解密模块204,被配置为所述后端根据所述关键字采用所述国密算法对所述第一传输数据进行第一解密处理,得到第一解密结果,所述前端到所述后端的数据传输完成;
112.获取标注模块205,被配置为响应于确定所述后端接收响应数据,获取所述响应数
据中的控制标注;
113.第二加密模块206,被配置为响应于确定所述控制标注中存在加密标注,所述后端采用国密算法对所述响应数据进行第二加密处理,得到第二传输数据并将所述第二传输数据发送到所述前端;
114.获取第二属性模块207,被配置为所述前端获取所述第二传输数据中的第二加密属性;
115.第二解密模块208,被配置为所述前端根据所述第二加密属性采用所述国密算法对所述第二传输数据进行第二解密处理,得到第二解密结果,所述前端到所述后端的数据传输完成。
116.在一些实施例中,所述微服务数据传输装置还包括:
117.第一发送模块,被配置为响应于确定所述第一加密属性为假,所述前端将所述请求数据作为所述第一传输数据发送到所述后端。
118.在一些实施例中,所述第一加密模块202具体被配置为:
119.所述前端采用预先存储的前端公钥对随机获取的密钥进行加密,得到前端加密密钥;
120.所述前端根据前端加密密钥采用所述国密算法对所述请求数据进行加密,得到第一加密数据;
121.所述前端将所述第一加密数据中的关键字设置为密码文本;
122.所述前端采用摘要算法对所述第一加密数据进行摘要提取,得到第一摘要数据并将所述第一加密数据、所述第一摘要数据和所述前端加密密钥作为所述第一传输数据。
123.在一些实施例中,所述第一解密模块204具体被配置为:
124.响应于确定所述关键字为密码文本,所述后端采用预先存储的后端私钥对所述前端加密密钥进行解密,得到后端解密密钥;
125.所述后端根据所述后端解密密钥采用所述国密算法对所述第一传输数据中的第一加密数据进行解密,得到第一解密数据;
126.所述后端采用所述摘要算法对所述第一解密数据进行摘要提取,得到第二摘要数据;
127.响应于确定所述第一摘要数据等于所述第二摘要数据,将所述第一解密数据作为第一解密结果。
128.在一些实施例中,所述微服务数据传输装置还包括:
129.第二发送模块,被配置为响应于确定所述控制标注中不存在加密标注,所述后端将所述响应数据作为所述第二传输数据发送到所述前端。
130.在一些实施例中,所述第二加密模块206具体被配置为:
131.所述后端采用预先存储的后端公钥对随机生成的密钥进行加密,得到后端加密密钥;
132.所述后端根据所述后端加密密钥采用所述国密算法对所述响应数据进行加密,得到第二加密数据;
133.所述后端将所述第二加密数据中的第二加密属性设置为真;
134.所述后端采用摘要算法对所述第二加密数据进行摘要提取,得到第三摘要数据并
将所述第二加密数据、第三摘要数据和所述后端加密密钥作为所述第二传输数据。
135.在一些实施例中,所述第二解密模块208具体被配置为:
136.响应于确定所述第二传输数据中的第二加密属性为真,所述前端采用预先存储的前端私钥对所述后端加密密钥进行解密,得到前端解密密钥;
137.所述前端根据所述前端解密密钥采用所述国密算法对所述第二传输数据中的第二加密数据进行解密,得到第二解密数据;
138.所述前端采用所述摘要算法对所述第二解密数据进行摘要提取,得到第四摘要数据;
139.响应于确定所述第三摘要数据等于所述第四摘要数据,所述前端将所述第二解密数据作为第二解密结果。
140.为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本技术时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
141.上述实施例的装置用于实现前述任一实施例中相应的微服务数据传输方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
142.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的微服务数据传输方法。
143.图4示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
144.处理器1010可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
145.存储器1020可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
146.输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
147.通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
148.总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
149.需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口
1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
150.上述实施例的电子设备用于实现前述任一实施例中相应的微服务数据传输方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
151.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的微服务数据传输方法。
152.本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
153.上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的微服务数据传输方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
154.所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本技术的范围(包括权利要求)被限于这些例子;在本技术的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本技术实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
155.另外,为简化说明和讨论,并且为了不会使本技术实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本技术实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本技术实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本技术的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本技术实施例。因此,这些描述应被认为是说明性的而不是限制性的。
156.尽管已经结合了本技术的具体实施例对本技术进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。
157.本技术实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本技术实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1