一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

信息传输方法、装置、电子设备及计算机可读存储介质与流程

2022-10-26 19:58:30 来源:中国专利 TAG:


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.优选的,所述认证系统生成第二请求数据、并传输至所述服务器中的处理系统,包括:
28.生成第二随机数,基于所述处理公钥对所述第二随机数进行加密,得到第二加密随机数;
29.基于所述第二随机数对所述目标公开标识、所述第一时间戳及所述第一加密随机数进行加密,得到第二加密结果;
30.基于所述认证系统的认证私钥对所述认证系统的标识号、所述第二加密随机数、所述第二加密结果进行签名,得到第一签名结果;
31.将所述标识号、所述第二加密随机数、所述第二加密结果及所述第一签名结果作为所述第二请求数据,并传输所述第二请求数据至所述处理系统。
32.优选的,所述处理系统通过所述第二请求数据的认证过程,包括:
33.获取所述认证系统的认证公钥;
34.基于所述认证公钥对所述第一签名结果进行验签;
35.若验签通过,则基于所述处理系统的处理私钥对所述第二加密随机数进行解密,得到所述第二随机数;
36.基于所述第二随机数对所述第二加密结果进行解密,得到所述目标公开标识、所述第一时间戳及所述第一加密随机数;
37.基于所述处理私钥对所述第一加密随机数进行解密,得到所述第一随机数;
38.基于所述第一时间戳判断是否重放攻击;
39.若未重放攻击,则通过所述第二请求数据的认证。
40.优选的,所述处理系统生成与所述信息获取请求对应的所述第一应答数据,包括:
41.生成与所述信息获取请求对应的所述目标应答数据;
42.基于所述第一随机数对所述目标应答数据进行加密,得到第三加密结果;
43.生成与所述目标应答数据对应的第二时间戳和第三随机数;
44.基于所述目标应答数据、所述第三加密结果、所述第二时间戳和所述第三随机数生成所述第一应答数据。
45.优选的,所述基于所述目标应答数据、所述第三加密结果、所述第二时间戳和所述第三随机数生成所述第一应答数据,包括:
46.基于预先生成的认证令牌对所述第三加密结果进行哈希计算,得到第二哈希值;
47.基于所述认证公钥对所述第三随机数进行加密,得到第三加密随机数;
48.基于所述第三随机数对所述目标公开标识、所述第二时间戳、所述第三加密结果及所述第二哈希值进行加密,得到第四加密结果;
49.基于所述处理私钥对所述第四加密结果进行签名,得到第二签名结果;
50.将所述第三加密随机数、所述第四加密结果及所述第二签名结果作为所述第一应答数据。
51.优选的,所述认证系统在通过第一应答数据的认证后生成所述第二应答数据,包括:
52.获取所述处理公钥;
53.基于所述处理公钥对所述第二签名结果进行验签;
54.若验签通过,则基于所述认证私钥对所述第三加密随机数进行解密,得到所述第三随机数;
55.基于所述第三随机数对所述第四加密结果进行解密,得到所述目标公开标识、所述第二时间戳、所述第三加密结果及所述第二哈希值;
56.基于所述加密密钥对所述目标公开标识、所述第二时间戳、所述第三加密结果及所述第二哈希值进行加密,得到第五加密结果;
57.基于所述完整性密钥对所述第五加密结果进行哈希计算,得到第三哈希值;
58.将所述第五加密结果及所述第三哈希值作为所述第二应答数据。
59.优选的,所述客户端对所述第二应答数据进行认证,并在通过认证后从所述第二应答数据中获取与所述信息获取请求对应的目标应答数据,包括:
60.基于所述完整性密钥对所述第五加密结果进行哈希运算,得到第四哈希值;
61.判断所述第四哈希值与所述第三哈希值是否一致;
62.若一致,则基于所述加密密钥对所述第五加密结果进行解密,得到所述目标公开标识、所述第二时间戳、所述第三加密结果及所述第二哈希值;
63.判断所述目标公开标识是否为自身的公开标识,若是,则基于自身保存的所述认证令牌对所述目标公开标识、所述第二时间戳及所述第三加密结果进行哈希计算,得到第四哈希值;
64.判断所述第四哈希值与所述第二哈希值是否一致,若一致,则基于所述第二时间戳判断是否重放攻击;
65.若未重放攻击,则基于所述第一随机数对所述第三加密结果进行解密,得到所述目标应答数据。
66.优选的,所述客户端生成与信息获取请求对应的第一请求数据之前,还包括:
67.所述客户端生成与认证请求对应的第三请求数据;
68.所述客户端发送所述第三请求数据至所述认证系统;
69.所述认证系统通过所述第三请求数据的认证后生成第四请求数据、并传输至所述处理系统;
70.所述处理系统通过所述第四请求数据的认证后、生成与所述认证请求对应的第三应答数据,并传输所述第三应答数据至所述认证系统;
71.所述认证系统通过所述第三应答数据的认证后生成第四应答数据;
72.所述客户端接收所述认证系统传输的所述第四应答数据;
73.所述客户端对所述第四应答数据进行认证,并在通过认证后从所述第四应答数据中获取所述认证令牌;
74.其中,所述第三应答数据包括所述认证令牌。
75.优选的,所述客户端生成与认证请求对应的第三请求数据,包括:
76.生成与所述认证请求对应的第四随机数及第三时间戳;
77.基于所述处理公钥对所述客户端的目标私有标识进行加密,得到加密标识信息;
78.基于所述认证公钥对所述目标公开标识、所述标识号、所述第四随机数及所述第三时间戳进行加密,得到第六加密结果;
79.将所述加密标识信息、所述第六加密结果作为所述第三请求数据。
80.优选的,所述认证系统通过所述第三请求数据的认证后生成第四请求数据、并传输至所述处理系统,包括:
81.基于所述认证私钥对所述第六加密结果进行解密,得到所述目标公开标识、所述标识号、所述第四随机数及所述第三时间戳;
82.判断所述标识号是否为自身的标识号,若是,则基于所述第三时间戳判断是否重放攻击;
83.若未重放攻击,则基于所述认证私钥对所述加密标识信息进行签名,得到第三签名结果;
84.将所述标识号、所述加密标识信息及所述第三签名结果作为所述第四请求数据发送至所述处理系统。
85.优选的,所述处理系统通过所述第四请求数据的认证后、生成与所述认证请求对应的第三应答数据,包括:
86.基于所述认证公钥对所述第三签名结果进行验签;
87.若验签通过,则基于处理私钥对所述加密标识信息进行解密,得到所述目标私有标识;
88.判断能否在所述服务器中找到与所述目标私有标识对应的第一公开标识,若能找到,则生成所述认证令牌;
89.基于所述认证公钥对所述第一公开标识、所述认证令牌进行加密,得到第六加密结果;
90.基于所述处理私钥对所述第六加密结果进行签名,得到第四签名结果;
91.将所述第六加密结果及所述第四签名结果作为所述第三应答数据。
92.优选的,所述认证系统通过所述第三应答数据的认证后生成第四应答数据,包括:
93.基于所述处理公钥对所述第四签名结果进行验签,若验签通过,则基于所述认证私钥对所述第六加密结果进行解密,得到所述第一公开标识及所述认证令牌;
94.判断所述第一公开标识与自身保存的所述客户端的公开标识是否一致,若一致,则生成第五随机数;
95.基于所述第四随机数对所述第一公开标识、所述认证令牌及所述第五随机数进行加密,得到第七加密结果;
96.将所述第七加密结果作为所述第四应答数据。
97.优选的,所述客户端对所述第四应答数据进行认证,并在通过认证后从所述第四应答数据中获取所述认证令牌,包括:
98.基于所述第四随机数对所述第七加密结果进行解密,得到所述第一公开标识、所述认证令牌及所述第五随机数;
99.判断所述第一公开标识与所述目标公开标识是否一致,若一致,则保存所述认证令牌。
100.优选的,所述认证系统生成第五随机数之后,还包括:
101.基于所述第四随机数及所述第五随机数生成所述加密密钥及所述完整性密钥、并保存至所述服务器中;
102.所述客户端保存所述认证令牌之后,还包括:
103.基于所述第四随机数及所述第五随机数生成所述加密密钥及所述完整性密钥并保存。
104.优选的,所述信息获取请求包括携带用户资料的注册请求,所述目标应答数据包括注册信息。
105.根据本公开实施例的第二方面,提供一种信息传输方法,应用于客户端,包括:
106.生成与信息获取请求对应的第一请求数据,所述信息获取请求包括私钥获取请求;
107.发送所述第一请求数据至所述服务器中的认证系统,以使所述认证系统通过所述第一请求数据的认证后生成第二请求数据、并传输至所述服务器中的处理系统;
108.接收所述认证系统传输的第二应答数据,所述第二应答数据包括所述认证系统在通过第一应答数据的认证后生成的数据,所述第一应答数据包括所述处理系统在通过所述第二请求数据的认证后、生成的与所述信息获取请求对应的数据;
109.对所述第二应答数据进行认证,并在通过认证后从所述第二应答数据中获取与所述信息获取请求对应的目标应答数据,所述目标应答数据包括用户私钥。
110.根据本公开实施例的第三方面,提供一种信息传输装置,应用于客户端,包括:
111.第一生成模块,用于生成与信息获取请求对应的第一请求数据,所述信息获取请求包括私钥获取请求;
112.第一发送模块,用于发送所述第一请求数据至所述服务器中的认证系统,以使所述认证系统通过所述第一请求数据的认证后生成第二请求数据、并传输至所述服务器中的处理系统;
113.第一接收模块,用于接收所述认证系统传输的第二应答数据,所述第二应答数据包括所述认证系统在通过第一应答数据的认证后生成的数据,所述第一应答数据包括所述
处理系统在通过所述第二请求数据的认证后、生成的与所述信息获取请求对应的数据;
114.第一认证模块,用于对所述第二应答数据进行认证,并在通过认证后从所述第二应答数据中获取与所述信息获取请求对应的目标应答数据,所述目标应答数据包括用户私钥。
115.根据本公开实施例的第四方面,提供一种电子设备,包括:
116.存储器,用于存储计算机程序;
117.处理器,用于执行所述存储器中的所述计算机程序,以实现如上任一所述方法的步骤。
118.根据本公开实施例的第五方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述方法的步骤。
119.本公开提供的一种信息传输方法,客户端生成与信息获取请求对应的第一请求数据,信息获取请求包括私钥获取请求;客户端发送第一请求数据至服务器中的认证系统;认证系统通过第一请求数据的认证后生成第二请求数据、并传输至服务器中的处理系统;处理系统通过第二请求数据的认证后、生成与信息获取请求对应的第一应答数据,并在通过第一应答数据的认证后生成第二应答数据;客户端接收认证系统传输的第二应答数据;客户端对第二应答数据进行认证,并在通过认证后从第二应答数据中获取与信息获取请求对应的目标应答数据,目标应答数据包括用户私钥。本公开中,服务器中存在认证系统及处理系统,客户端通过与认证系统及处理系统进行交互便以从服务器处直接获取用户私钥,实现了私钥的在线分发,可以避免现有离线分发方法的缺点,适用性好,且认证系统及处理系统会对客户端传输的与信息获取请求对应的第一请求数据进行认证,只有认证通过后才能进行后续的信息传输,也即每次信息交换实现了客户端、认证系统、处理系统三方相互认证,一次一密,对信息进行加密及完整性保护,信息来源可认证,保证了客户端与服务器间信息传输的安全性;此外,一次会话实现数据获取,与传统的认证、产生密钥、加密信息传输三次会话相比,效率高。本公开涉及的一种信息传输装置、电子设备及计算机可读存储介质也解决了相应技术问题。
120.应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
121.为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
122.图1为根据一示例性实施例示出的一种信息传输方法的第一流程图;
123.图2为本技术中客户端、认证系统、处理系统间的连接示意图;
124.图3为根据一示例性实施例示出的一种信息传输方法的第二流程图;
125.图4为根据一示例性实施例示出的一种信息传输方法的第三流程图;
126.图5为根据一示例性实施例示出的一种信息传输装置的结构示意图;
127.图6为根据一示例性实施例示出的一种电子设备900的框图。
具体实施方式
128.下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
129.请参阅图1,图1为根据一示例性实施例示出的一种信息传输方法的第一流程图。
130.本公开涉及的一种信息传输方法,应用于客户端,可以包括以下步骤:
131.步骤s101:生成与信息获取请求对应的第一请求数据。
132.可以理解的是,第一请求数据指的是客户端基于信息获取请求生成的相应数据,其用于向服务器传输客户端所需的信息获取请求,客户端与服务器之间可以采用有线连接方式或无线连接方式。信息获取请求的类型及第一请求数据的生成方式等均可以根据应用场景来确定,本公开在此不做具体限定。
133.步骤s102:发送第一请求数据至服务器中的认证系统,以使认证系统通过第一请求数据的认证后生成第二请求数据、并传输至服务器中的处理系统。
134.可以理解的是,本公开中的服务器中设置有认证系统及处理系统,且客户端生成与信息获取请求对应的第一请求数据之后,需发送第一请求数据至该认证系统,以使得认证系统对第一请求数据进行安全认证、并在安全认证通过后生成第二请求数据传输给处理系统,也即认证系统通过第二请求数据向处理系统安全传输客户端的信息获取请求。
135.步骤s103:接收认证系统传输的第二应答数据,第二应答数据包括认证系统在通过第一应答数据的认证后生成的数据,第一应答数据包括处理系统在通过第二请求数据的认证后、生成的与信息获取请求对应的数据。
136.可以理解的是,处理系统在获取第二请求数据后,需对第二请求数据进行认证,并在认证通过后生成第一应答数据再传输给认证系统,且第一应答数据中可以包含与信息获取请求对应的目标应答数据等;认证系统再对第一应答数据进行认证,并在认证通过后生成第二应答数据传输给客户端,以此来使得认证系统、处理系统及客户端间传输的数据均是安全的。
137.步骤s104:对第二应答数据进行认证,并在通过认证后从第二应答数据中获取与信息获取请求对应的目标应答数据。
138.可以理解的是,客户端在接收到认证系统传输的第二应答数据之后,便可以对第二应答数据进行认证,并在通过认证后从第二应答数据中获取与信息获取请求对应的目标应答数据。
139.本公开提供的一种信息传输方法,应用于客户端,生成与信息获取请求对应的第一请求数据;发送第一请求数据至服务器中的认证系统,以使认证系统通过第一请求数据的认证后生成第二请求数据、并传输至服务器中的处理系统;接收认证系统传输的第二应答数据,第二应答数据包括认证系统在通过第一应答数据的认证后生成的数据,第一应答数据包括处理系统在通过第二请求数据的认证后、生成的与信息获取请求对应的数据;对第二应答数据进行认证,并在通过认证后从第二应答数据中获取与信息获取请求对应的目标应答数据。本公开中,服务器中存在认证系统及处理系统,客户端通过与认证系统及处理系统进行交互便以从服务器处直接获取目标应答数据,实现了目标应答数据的在线分发,
可以避免现有离线分发方法的缺点,适用性好,且认证系统及处理系统会对客户端传输的与信息获取请求对应的第一请求数据进行认证,只有认证通过后才能进行后续的信息传输,也即每次信息交换实现了客户端、认证系统、处理系统三方相互认证,一次一密,对信息进行加密及完整性保护,信息来源可认证,保证了客户端与服务器间信息传输的安全性;此外,一次会话实现数据获取,与传统的认证、产生密钥、加密信息传输三次会话相比,效率高。
140.请参阅图2和图3,图2为本技术中客户端、认证系统、处理系统间的连接示意图,其中,kms表示服务器,

和ra表示服务器中的认证系统,

和pkg表示服务器中的处理系统,

和pps表示服务器中的参数服务器,且参数服务器可以用来保存服务器中的相应数据。图3为根据一示例性实施例示出的一种信息传输方法的第二流程图。
141.本公开涉及的一种信息传输方法,客户端在生成与信息获取请求对应的第一请求数据的过程中,可以生成与信息获取请求对应的第一随机数r3及第一时间戳t3;获取处理系统的处理公钥pkgpk;获取加密密钥ck及完整性密钥ik;基于第一随机数r3、第一时间戳t3、处理公钥pkgpk、加密密钥ck及完整性密钥ik生成第一请求数据。
142.可以理解的是,客户端在基于第一随机数r3、第一时间戳t3、处理公钥pkgpk、加密密钥ck及完整性密钥ik生成第一请求数据的过程中,可以基于处理公钥pkgpk对第一随机数r3进行加密,得到第一加密随机数a
pkgpk
(r3);基于加密密钥ck对客户端的目标公开标识uid、第一时间戳t3、第一加密随机数a
pkgpk
(r3)进行加密,得到第一加密结果e
ck
(uid||t3||a
pkgpk
(r3));基于完整性密钥ik对第一加密结果e
ck
(uid||t3||a
pkgpk
(r3))进行完整性保护,得到完整性保护结果hmac
ik
;将目标公开标识uid、第一加密结果e
ck
(uid||t3||a
pkgpk
(r3))及完整性保护结果hmac
ik
作为第一请求数据uid||e
ck
(uid||t3||a
pkgpk
(r3))||hmac
ik

143.相应的,认证系统在通过第一请求数据的认证后生成第二请求数据、并传输至服务器中的处理系统的过程中,可以查找目标公开标识uid对应的加密密钥ck及完整性密钥ik,比如在参数服务器中进行查找等;基于加密密钥ck对第一加密结果eck(uid||t3||apkgpk(r3))进行解密,得到目标公开标识uid、第一时间戳t3及第一加密随机数r3;判断目标公开标识uid与自身保存的客户端的公开标识是否一致,若不一致,则可以认定客户端不合法,结束信息传输操作,若一致,则基于完整性密钥ik对第一加密结果eck(uid||t3||apkgpk(r3))进行哈希计算,得到第一哈希值;判断第一哈希值与完整性保护结果hmac
ik
是否一致,若不一致则可以结束信息传输操作,若一致,则基于第一时间戳t3判断是否重放攻击;若未重放攻击,则生成第二随机数r4,基于处理公钥pkgpk对第二随机数r4进行加密,得到第二加密随机数a
pkgpk
(r4);基于第二随机数r4对目标公开标识uid、第一时间戳t3及第一加密随机数a
pkgpk
(r3)进行加密,得到第二加密结果e
r4
(uid||t3||a
pkgpk
(r3));基于认证系统的认证私钥rask对认证系统的标识号raid、第二加密随机数a
pkgpk
(r4)、第二加密结果e
r4
(uid||t3||a
pkgpk
(r3))进行签名,得到第一签名结果sign2=sign
rask
(raid,a
pkgpk
(r4),e
r4
(uid||t3||a
pkgpk
(r3)));将标识号raid、第二加密随机数a
pkgpk
(r4)、第二加密结果e
r4
(uid||t3||a
pkgpk
(r3))及第一签名结果sign2作为第二请求数据raid||a
pkgpk
(r4)||e
r4
(uid||t3||a
pkgpk
(r3))||sign2,并传输第二请求数据至处理系统。
144.相应的,处理系统在通过第二请求数据的认证后、生成与信息获取请求对应的第一应答数据的过程中,可以获取认证系统的认证公钥rapk;基于认证公钥rapk对第一签名
结果sign2进行验签;若验签通过,则基于处理系统的处理私钥pkgsk对第二加密随机数a
pkgpk
(r4)进行解密,得到第二随机数r4;基于第二随机数r4对第二加密结果e
r4
(uid||t3||a
pkgpk
(r3))进行解密,得到目标公开标识uid、第一时间戳t3及第一加密随机数a
pkgpk
(r3);基于处理私钥pkgsk对第一加密随机数a
pkgpk
(r3)进行解密,得到第一随机数r3;基于第一时间戳t3判断是否重放攻击;若未重放攻击,则生成与信息获取请求对应的目标应答数据uidsk;基于第一随机数r3对目标应答数据uidsk进行加密,得到第三加密结果e
r3
(uidsk);生成与目标应答数据uidsk对应的第二时间戳t4和第三随机数r5;基于预先生成的认证令牌token对第三加密结果e
r3
(uidsk)进行哈希计算,得到第二哈希值hmac
token
;基于认证公钥rapk对第三随机数r5进行加密,得到第三加密随机数a
rapk
(r5);基于第三随机数r5对目标公开标识uid、第二时间戳t4、第三加密结果e
r3
(uidsk)及第二哈希值hmac
token
进行加密,得到第四加密结果e
r5
(uid||t4||e
r3
(uidsk)||hmac
token
);基于处理私钥pkgsk对第四加密结果e
r5
(uid||t4||e
r3
(uidsk)||hmac
token
)进行签名,得到第二签名结果sign3=sign
pkgsk
(e
r5
(uid||t4||e
r3
(uidsk)||hmac
token)
);将第三加密随机数a
rapk
(r5)、第四加密结果e
r5
(uid||t4||e
r3
(uidsk)||hmac
token
)及第二签名结果sign3作为第一应答数据a
rapk
(r5)||e
r5
(uid||t4||e
r3
(uidsk)||hmac
token
)||sign3。
145.相应的,认证系统在通过第一应答数据的认证后生成第二应答数据的过程中,可以获取处理公钥pkgpk;基于处理公钥pkgpk对第二签名结果sign3进行验签;若验签通过,则基于认证私钥rask对第三加密随机数a
rapk
(r5)进行解密,得到第三随机数r5;基于第三随机数r5对第四加密结果e
r5
(uid||t4||e
r3
(uidsk)||hmac
token
)进行解密,得到目标公开标识uid、第二时间戳t4、第三加密结果e
r3
(uidsk)及第二哈希值hmac
token
;基于加密密钥ck对目标公开标识uid、第二时间戳t4、第三加密结果e
r3
(uidsk)及第二哈希值hmac
token
进行加密,得到第五加密结果e
ck
(uid||t4||e
r3
(uidsk)||hmac
token
);基于完整性密钥ik对第五加密结果e
ck
(uid||t4||e
r3
(uidsk)||hmac
token
)进行哈希计算,得到第三哈希值hmac
ik
;将第五加密结果e
ck
(uid||t4||e
r3
(uidsk)||hmac
token
)及第三哈希值hmac
ik
作为第二应答数据e
ck
(uid||t4||e
r3
(uidsk)||hmac
token
)||hmac
ik

146.相应的,客户端在对第二应答数据进行认证,并在通过认证后从第二应答数据中获取与信息获取请求对应的目标应答数据的过程中,可以基于完整性密钥ik对第五加密结果e
ck
(uid||t4||e
r3
(uidsk)||hmac
token
)进行哈希运算,得到第四哈希值;判断第四哈希值与第三哈希值hmac
ik
是否一致;若一致,则基于加密密钥ck对第五加密结果e
ck
(uid||t4||e
r3
(uidsk)||hmac
token
)进行解密,得到目标公开标识uid、第二时间戳t4、第三加密结果e
r3
(uidsk)及第二哈希值hmac
token
;判断目标公开标识uid是否为自身的公开标识,若是,则基于自身保存的认证令牌token对目标公开标识uid、第二时间戳t4及第三加密结果e
r3
(uidsk)进行哈希计算,得到第四哈希值;判断第四哈希值与第二哈希值hmac
token
是否一致,若一致,则基于第二时间戳t4判断是否重放攻击;若未重放攻击,则基于第一随机数r3对第三加密结果e
r3
(uidsk)进行解密,得到目标应答数据uidsk。
147.请参阅图4,图4为根据一示例性实施例示出的一种信息传输方法的第三流程图。
148.本公开涉及的一种信息传输方法,客户端在生成与信息获取请求对应的第一请求数据之前,还可以与服务器进行交互来生成认证令牌、加密密钥及完整性密钥。其过程可以包括以下步骤:
149.生成与认证请求对应的第三请求数据;
150.发送第三请求数据至认证系统,以使认证系统通过第三请求数据的认证后生成第四请求数据、并传输至处理系统;
151.接收认证系统传输的第四应答数据,第四应答数据包括认证系统在通过第三应答数据的认证后生成的数据,第三应答数据包括处理系统在通过第四请求数据的认证后、生成的与认证请求的对应的数据;
152.对第四应答数据进行认证,并在通过认证后从第四应答数据中获取认证令牌;其中,第三应答数据包括认证令牌。
153.可以理解的是,客户端在生成与认证请求对应的第三请求数据的过程中,可以生成与认证请求对应的第四随机数r1及第三时间戳t1;基于处理公钥pkgpk对客户端的目标私有标识sid进行加密,得到加密标识信息a
pkgpk
(sid),其中,目标私钥标识及目标公有标识可以由服务器为客户端生成并分配等;基于认证公钥rapk对目标公开标识uid、标识号raid、第四随机数r1及第三时间戳t1进行加密,得到第六加密结果a
rapk
(uid||raid||t1||r1);将加密标识信息apkgpk(
sid
)、第六加密结果a
rapk
(uid||raid||t1||r1)作为第三请求数据a
pkgpk
(sid)||a
rapk
(uid||raid||t1||r1)。
154.相应的,认证系统通过第三请求数据的认证后生成第四请求数据、并传输至处理系统的过程中,可以基于认证私钥rask对第六加密结果a
rapk
(uid||raid||t1||r1)进行解密,得到目标公开标识uid、标识号raid、第四随机数r1及第三时间戳t1;判断标识号raid是否为自身的标识号,若是,则基于第三时间戳t1判断是否重放攻击;若未重放攻击,则基于认证私钥rask对加密标识信息a
pkgpk
(sid)进行签名,得到第三签名结果sign1=sing
rask
(a
pkgpk
(sid));将标识号raid、加密标识信息a
pkgpk
(sid)及第三签名结果sign1作为第四请求数据raid||a
pkgpk
(sid)||sign1发送至处理系统。
155.相应的,处理系统在通过第四请求数据的认证后、生成包含与认证请求的对应的认证令牌的第三应答数据的过程中,可以基于认证公钥rapk对第三签名结果sign1进行验签;若验签通过,则基于处理私钥pkgsk对加密标识信息apkgpk(sid)进行解密,得到目标私有标识sid;判断能否在服务器中找到与目标私有标识sid对应的第一公开标识uid’,若能找到,则生成认证令牌token;基于认证公钥rapk对第一公开标识uid’、认证令牌token进行加密,得到第六加密结果a
rapk
(uid’||token);基于处理私钥pkgsk对第六加密结果a
rapk
(uid’||token)进行签名,得到第四签名结果sign2=sing
pkgsk
(a
rapk
(uid’||token));将第六加密结果a
rapk
(uid’||token)及第四签名结果sign2作为第三应答数据a
rapk
(uid’||token)||sign2。
156.相应的,认证系统在通过第三应答数据的认证后生成第四应答数据的过程中,可以基于处理公钥pkgpk对第四签名结果sign2进行验签,若验签通过,则基于认证私钥rask对第六加密结果a
rapk
(uid’||token)进行解密,得到第一公开标识uid’及认证令牌token;判断第一公开标识uid’与自身保存的客户端的公开标识uid是否一致,若一致,则生成第五随机数r2;基于第四随机数r1对第一公开标识uid’、认证令牌token及第五随机数r2进行加密,得到第七加密结果e r1
(uid’||token||r2);将第七加密结果e
r1
(uid’||token||r2)作为第四应答数据。
157.相应的,客户端对第四应答数据进行认证,并在通过认证后从第四应答数据中获
取认证令牌的过程中,可以基于第四随机数r1对第七加密结果e
r1
(uid’||token||r2)进行解密,得到第一公开标识uid’、认证令牌token及第五随机数r2;
158.判断第一公开标识uid’与目标公开标识uid是否一致,若一致,则保存认证令牌token。
159.相应的,认证系统生成第五随机数之后,还可以基于第四随机数及第五随机数生成加密密钥及完整性密钥、并保存至服务器中;客户端在保存认证令牌之后,还可以基于第四随机数及第五随机数生成加密密钥及完整性密钥并保存。比如基于密钥生成函数来基于第四随机数及第五随机数生成加密密钥及完整性密钥等,
160.可以理解的是,信息获取请求可以包括私钥获取请求,目标应答数据包括基于目标公开标识生成的用户私钥,此时,服务器便可以在线安全的为客户端分发私钥,比如分发sm9算法中的用户私钥等。
161.可以理解的是,信息获取请求可以包括携带用户资料的注册请求,目标应答数据包括注册信息。实际应用中,客户端可以在通过服务器的认证后便进行注册,此时,客户端可以生成第四时间戳t2;基于加密密钥ck对目标公开标识uid、第四时间戳t2及用户资料进行加密,得到资料加密结果e
ck
(uid||t2||用户资料);基于完整性密钥ik对资料加密结果e
ck
(uid||t2||用户资料)进行完整性保护,得到第五哈希值hmac
ik2
;将目标公开标识uid、资料加密结果e
ck
(uid||t2||用户资料)及第五哈希值作为注册请求数据uid||e
ck
(uid||t2||用户资料)||hmac
i2k
发送给认证系统。相应的,认证系统将目标公开标识uid与自身保存的客户端的公开标识进行对比,若一致,则通过目标公开标识查找对应的加密密钥ck及完整性密钥ik;基于完整性密钥ik对资料加密结果e
ck
(uid||t2||用户资料)进行哈希计算,得到第六哈希值,比对第六哈希值与第五哈希值hmac
ik2
是否一致,若一致,则基于加密密钥ck对资料加密结果e
ck
(uid||t2||用户资料)进行解密,得到目标公开标识uid和第四时间戳t2;基于第四时间戳t2判断是否重放攻击,若未重放攻击,则保存用户资料至服务器的注册表中;返回注册成功的信息至客户端。
162.请参阅图5,图5为根据一示例性实施例示出的一种信息传输装置的结构示意图。
163.本公开涉及的一种信息传输装置500,应用于客户端,可以包括:
164.第一生成模块510,用于生成与信息获取请求对应的第一请求数据;
165.第一发送模块520,用于发送第一请求数据至服务器中的认证系统,以使认证系统通过第一请求数据的认证后生成第二请求数据、并传输至服务器中的处理系统;
166.第一接收模块530,用于接收认证系统传输的第二应答数据,第二应答数据包括认证系统在通过第一应答数据的认证后生成的数据,第一应答数据包括处理系统在通过第二请求数据的认证后、生成的与信息获取请求对应的数据;
167.第一认证模块540,用于对第二应答数据进行认证,并在通过认证后从第二应答数据中获取与信息获取请求对应的目标应答数据。
168.本公开涉及的一种信息传输装置中相应模块的描述可以参阅上述实施例,在此不再赘述。
169.图6为根据一示例性实施例示出的一种电子设备900的框图。如图6所示,该电子设备900可以包括:处理器901,存储器902。该电子设备900还可以包括多媒体组件903,输入/输出(i/o)接口904,以及通信组件905中的一者或多者。
170.其中,处理器901用于控制该电子设备900的整体操作,以完成上述的信息传输方法中的全部或部分步骤。存储器902用于存储各种类型的数据以支持在该电子设备900的操作,这些数据例如可以包括用于在该电子设备900上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器902可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(static randomaccess memory,简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory,简称eeprom),可擦除可编程只读存储器(erasable programmable read-only memory,简称eprom),可编程只读存储器(programmable read-only memory,简称prom),只读存储器(read-only memory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件903可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器902或通过通信组件905发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口904为处理器901和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件905用于该电子设备900与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(near field communication,简称nfc),2g、3g或4g,或它们中的一种或几种的组合,因此相应的该通信组件905可以包括:wi-fi模块,蓝牙模块,nfc模块。
171.在一示例性实施例中,电子设备900可以被一个或多个应用专用集成电路(application specific integrated circuit,简称asic)、数字信号处理器(digital signal processor,简称dsp)、数字信号处理设备(digital signal processing device,简称dspd)、可编程逻辑器件(programmable logic device,简称pld)、现场可编程门阵列(field programmable gate array,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的信息传输方法。
172.在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的信息传输方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器902,上述程序指令可由电子设备900的处理器901执行以完成上述的信息传输方法。
173.本公开实施例提供的信息传输装置、电子设备及计算机可读存储介质中相关部分的说明请参见本公开实施例提供的信息传输方法中对应部分的详细说明,在此不再赘述。另外,本公开实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
174.还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
175.对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本公开。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献