一种双全工通信方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:28143123 阅读:16 留言:0更新日期:2021-04-21 19:23
本发明专利技术实施例提供了一种双全工通信方法、装置、计算机设备和存储介质,该方法包括:针对客户端的身份信息生成安全令牌,与客户端建立网络嵌套字WebSocket连接时,与客户端交换参考数据,与客户端基于安全令牌通信之前,根据参考数据校验客户端相对于网络嵌套字WebSocket连接的合法性,若客户端相对于网络嵌套字WebSocket连接合法,则维持网络嵌套字WebSocket连接,通过网络嵌套字WebSocket连接使用安全令牌与客户端进行通信,阻止不法分子脱离合法的客户端自行建立网络嵌套字WebSocket连接与服务端进行通信,防范客户端脱机,提高了服务端及用户数据的安全性。提高了服务端及用户数据的安全性。提高了服务端及用户数据的安全性。

【技术实现步骤摘要】
一种双全工通信方法、装置、计算机设备和存储介质


[0001]本专利技术实施例涉及通信的
,尤其涉及一种双全工通信方法、装置、计算机设备和存储介质。

技术介绍

[0002]在先很多网站采用轮询技术实现即时通讯,即间隔特定的时间,客户端对服务器发出HTTP(HyperText Transfer Protocol,超文本传输协议)请求,服务端返回最新的数据给客户端。由于客户端不断地向服务端发出HTTP请求,而HTTP请求的报文头是比较长的,但报文头包含的数据可能只是一个很小的值,这样会占用较多的带宽,但带宽的利用率较低。
[0003]针对上述问题,目前实现了客户端与服务端全双工通信(full

duplex),HTML5(HyperText Markup Language 5,第5版超文本标记语言)中采用网络嵌套字WebSocket协议,网络嵌套字WebSocket协议约定客户端和服务端之间形成一条快速通道,两者之间就可以实现数据互相实时传送。
[0004]目前,互联网应用多种多样,其中一大部分应用具有响应迅速、交互频繁和推送响应等特点,比如游戏和聊天应用等,这些应用适用网络嵌套字WebSocket协议,但网络嵌套字WebSocket协议本身没有身份认证机制,当服务端对客户端进行身份认证时,需要额外使用其他身份认证方案来确保安全性。
[0005]在身份认证时通常会生成认证信息,如果这个认证信息被泄漏,不法分子则可以绕过客户端自行基于网络嵌套字WebSocket与服务端进行通信,风险性较高。

技术实现思路

[0006]本专利技术实施例提出了一种双全工通信方法、装置、计算机设备和存储介质,以解决基于WebSocket协议进行验证的风险性较高的问题。
[0007]第一方面,本专利技术实施例提供了一种双全工通信方法,包括:
[0008]针对客户端的身份信息生成安全令牌;
[0009]与所述客户端建立网络嵌套字WebSocket连接时,与所述客户端交换参考数据;
[0010]使用所述安全令牌与所述客户端通信之前,根据所述参考数据校验所述客户端相对于所述网络嵌套字WebSocket连接的合法性;
[0011]若所述客户端相对于所述网络嵌套字WebSocket连接合法,则维持所述网络嵌套字WebSocket连接;
[0012]通过所述网络嵌套字WebSocket连接使用所述安全令牌与所述客户端进行通信。
[0013]可选地,还包括:
[0014]若所述客户端相对于所述网络嵌套字WebSocket连接非法,则断开所述网络嵌套字WebSocket连接。
[0015]可选地,所述参考数据包括服务端参考数据;
[0016]所述与所述客户端建立网络嵌套字WebSocket连接时,与所述客户端交换参考数
据,包括:
[0017]接收所述客户端基于网络嵌套字WebSocket协议发送的握手请求;
[0018]随机生成字符串,作为服务端参考数据;
[0019]基于所述网络嵌套字WebSocket协议针对所述握手请求生成握手响应;
[0020]将所述服务端参考数据封装至所述握手响应中;
[0021]若封装完成,则将所述握手响应发送至所述客户端,以与所述客户端建立网络嵌套字WebSocket连接。
[0022]可选地,所述将所述服务端参考数据封装至所述握手响应中,包括:
[0023]在所述握手响应的报头中生成自定义的字段,作为服务端字段;
[0024]将所述服务端参考数据写入所述服务端字段中。
[0025]可选地,所述参考数据还包括客户端参考数据;
[0026]所述与所述客户端建立网络嵌套字WebSocket连接时,与所述客户端交换参考数据,还包括:
[0027]从所述握手请求中提取指定的字符串,作为客户端参考数据。
[0028]可选地,所述从所述握手请求中提取指定的字符串,作为客户端参考数据,包括:
[0029]在所述握手请求的报头中查找自定义的字段,作为客户端字段;
[0030]读取所述客户端字段中的字符串,作为客户端参考数据。
[0031]可选地,所述根据所述参考数据校验所述客户端相对于所述网络嵌套字WebSocket连接的合法性,包括:
[0032]通过所述网络嵌套字WebSocket连接接收所述客户端发送的第一目标数据;
[0033]基于所述参考数据生成第二目标数据;
[0034]若所述第一目标数据与所述第二目标数据相同,则确定所述客户端相对于所述网络嵌套字WebSocket连接合法;
[0035]若所述第一目标数据与所述第二目标数据不同,则确定所述客户端相对于所述网络嵌套字WebSocket连接非法。
[0036]可选地,所述参考数据包括服务端参考数据、客户端参考数据;所述基于所述参考数据生成第二目标数据,包括:
[0037]对所述服务端参考数据进行加密,获得第二目标数据;
[0038]或者,
[0039]基于所述服务端参考数据与所述客户端参考数据生成综合参考数据;
[0040]对所述综合参考数据进行加密,获得第二目标数据。
[0041]可选地,所述针对客户端的身份信息生成安全令牌,包括:
[0042]基于超文本传输安全协议HTTPS接收客户端发送的身份信息;
[0043]对所述身份信息进行验证;
[0044]若验证成功,则对所述身份信息生成安全令牌;
[0045]基于所述超文本传输安全协议HTTPS将所述安全令牌发送至所述客户端。
[0046]可选地,所述通过所述网络嵌套字WebSocket连接使用所述安全令牌与所述客户端进行通信,包括:
[0047]通过所述网络嵌套字WebSocket连接接收所述客户端发送的通信请求,所述通信
请求中携带所述安全令牌;
[0048]对所述安全令牌进行验证;
[0049]若验证成功,则通过所述网络嵌套字WebSocket连接将通信响应发送至所述客户端。
[0050]第二方面,本专利技术实施例还提供了一种双全工通信装置,包括:
[0051]安全令牌生成模块,用于针对客户端的身份信息生成安全令牌;
[0052]参考数据交换模块,用于与所述客户端建立网络嵌套字WebSocket连接时,与所述客户端交换参考数据;
[0053]合法性校验模块,用于使用所述安全令牌与所述客户端通信之前,根据所述参考数据校验所述客户端相对于所述网络嵌套字WebSocket连接的合法性;
[0054]通信连接维持模块,用于若所述客户端相对于所述网络嵌套字WebSocket连接合法,则维持所述网络嵌套字WebSocket连接;
[0055]认证通信模块,用于通过所述网络嵌套字WebSocket连接使用所述安全令牌与所述客户端进本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种双全工通信方法,其特征在于,包括:针对客户端的身份信息生成安全令牌;与所述客户端建立网络嵌套字WebSocket连接时,与所述客户端交换参考数据;使用所述安全令牌与所述客户端通信之前,根据所述参考数据校验所述客户端相对于所述网络嵌套字WebSocket连接的合法性;若所述客户端相对于所述网络嵌套字WebSocket连接合法,则维持所述网络嵌套字WebSocket连接;通过所述网络嵌套字WebSocket连接使用所述安全令牌与所述客户端进行通信。2.根据权利要求1所述的方法,其特征在于,还包括:若所述客户端相对于所述网络嵌套字WebSocket连接非法,则断开所述网络嵌套字WebSocket连接。3.根据权利要求1所述的方法,其特征在于,所述参考数据包括服务端参考数据;所述与所述客户端建立网络嵌套字WebSocket连接时,与所述客户端交换参考数据,包括:接收所述客户端基于网络嵌套字WebSocket协议发送的握手请求;随机生成字符串,作为服务端参考数据;基于所述网络嵌套字WebSocket协议针对所述握手请求生成握手响应;将所述服务端参考数据封装至所述握手响应中;若封装完成,则将所述握手响应发送至所述客户端,以与所述客户端建立网络嵌套字WebSocket连接。4.根据权利要求3所述的方法,其特征在于,所述将所述服务端参考数据封装至所述握手响应中,包括:在所述握手响应的报头中生成自定义的字段,作为服务端字段;将所述服务端参考数据写入所述服务端字段中。5.根据权利要求3所述的方法,其特征在于,所述参考数据还包括客户端参考数据;所述与所述客户端建立网络嵌套字WebSocket连接时,与所述客户端交换参考数据,还包括:从所述握手请求中提取指定的字符串,作为客户端参考数据。6.根据权利要求5所述的方法,其特征在于,所述从所述握手请求中提取指定的字符串,作为客户端参考数据,包括:在所述握手请求的报头中查找自定义的字段,作为客户端字段;读取所述客户端字段中的字符串,作为客户端参考数据。7.根据权利要求1

6任一项所述的方法,其特征在于,所述根据所述参考数据校验所述客户端相对于所述网络嵌套字WebSocket连接的合法性,包括:通过所述网络嵌套字WebSocket连接接收所述客户端发送的第一目标数据;基于所述参考数据生成第二目标数据;若所述第一目标数据与所述第二目标数据相同,则确定所述客户端相对于所述网络嵌套字WebSocket连接合法;若所述第一目标数...

【专利技术属性】
技术研发人员:尹建华李岩区润强
申请(专利权)人:百果园技术新加坡有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1