通信方法、通信装置、电子设备及计算机存储介质制造方法及图纸

技术编号:39036836 阅读:11 留言:0更新日期:2023-10-10 11:49
本公开提供了一种通信方法、通信装置、电子设备及计算机存储介质,涉及通信技术领域,尤其涉及数据加密技术领域。具体实现方案为:响应于已创建与客户端的通信线路,将代理引擎配置为虚拟代理引擎;响应于经由通信线路接收到来自客户端的客户端握手数据,基于客户端握手数据,确定加密通信协议的版本信息,客户端握手数据为用于加密通信的数据;将虚拟代理引擎更新为与版本信息相匹配的目标代理引擎;基于客户端握手数据,利用目标代理引擎,生成服务端握手数据;以及将服务端握手数据发送至客户端。户端。户端。

【技术实现步骤摘要】
通信方法、通信装置、电子设备及计算机存储介质


[0001]本公开涉及通信
,尤其涉及数据加密
具体地,涉及一种通信方法、通信装置、电子设备、计算机存储介质以及程序产品。

技术介绍

[0002]随着计算机技术的不断发展,对通信过程的安全需求也越来越高。例如,在适配多种加密通信协议的情况下完成通信操作。

技术实现思路

[0003]本公开提供了一种通信方法、通信装置、电子设备、计算机存储介质、计算机程序产品。
[0004]根据本公开的一方面,提供了一种通信方法,包括:响应于已创建与客户端的通信线路,将代理引擎配置为虚拟代理引擎;响应于经由通信线路接收到来自客户端的客户端握手数据,基于客户端握手数据,确定加密通信协议的版本信息,其中,客户端握手数据为用于加密通信的数据;将虚拟代理引擎更新为与版本信息相匹配的目标代理引擎;基于客户端握手数据,利用目标代理引擎,生成服务端握手数据;以及将服务端握手数据发送至客户端。
[0005]根据本公开的另一方面,提供了一种通信装置,包括:配置模块,用于响应于已创建与客户端的通信线路,将代理引擎配置为虚拟代理引擎;版本信息确定模块,用于响应于经由通信线路接收到来自客户端的客户端握手数据,基于客户端握手数据,确定加密通信协议的版本信息,其中,客户端握手数据为用于加密通信的数据;引擎更新模块,用于将虚拟代理引擎更新为与版本信息相匹配的目标代理引擎;第一生成模块,用于基于客户端握手数据,利用目标代理引擎,生成服务端握手数据;以及第一发送模块,用于将服务端握手数据发送至客户端。
[0006]根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如本公开的方法。
[0007]根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行如本公开的方法。
[0008]根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现如本公开的方法。
[0009]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0010]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0011]图1示意性示出了根据本公开实施例的可以应用通信方法及装置的示例性系统架构;
[0012]图2示意性示出了根据本公开实施例的通信方法的流程图;
[0013]图3示意性示出了根据本公开实施例的加密通信连接的信令图;
[0014]图4示意性示出了根据本公开实施例的生成服务端握手数据的流程图;
[0015]图5示意性示出了根据本公开另一实施例的生成服务端握手数据的流程图;
[0016]图6示意性示出了根据本公开实施例的通信装置的框图;以及
[0017]图7示意性示出了根据本公开实施例的适于实现通信方法的电子设备的框图。
具体实施方式
[0018]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0019]针对两个或两个以上终端之间的通信操作,可以利用多种加密通信协议实现通信。通过加密通信协议进行加密通信,能够解决很多网络安全问题。例如,数据保密,所有信息都加密传输,使得第三方无法嗅探;数据完整性检查,通过MAC(Message Authentication Code)校验机制,一旦被篡改,通信双方会立刻发现;身份认证,通信双方都可以配备证书,防止身份被冒充。
[0020]根据本公开的实施例,加密通信协议可以包括以下至少其中之一:安全套接层(Secure Sockets Layer,SSL)协议、SSL协议升级后的安全传输层(Transport Layer Security,TLS)协议、利用国密算法加强SSL协议后的国密SSL协议等。SSL协议和TLS协议可以理解为标准SSL协议。
[0021]国密算法包括了对称加密算法、椭圆曲线非对称加密算法、杂凑算法等。国密SSL协议在传输层安全协议的基础上做了升级和安全加强。国密SSL采用了双证书机制,服务端密钥为非对称密码算法的密钥对,包括签名密钥对和加密密钥对。签名密钥对由VPN(Virtual Private Network,虚拟专用网络)自身密码模块产生,加密密钥对通过CA(Certificate Authority,认证中心)向KMC(Key Management Center,密钥管理中心)申请,用于握手过程中服务端身份鉴别和预主密钥的协商。
[0022]虽然,国密SSL协议参考了标准SSL协议,但是,在两个或两个以上终端之间进行握手时,国密SSL协议的加密算法与标准SSL协议的加密算法不同。国密SSL在证书管理方面也由单证书升级为双证书。因此标准SSL与国密SSL不能无缝替换。
[0023]在物联网场景中,大量设备需要通过加密方式连接到服务端,有些设备支持标准SSL协议的通信,有些设备支持国密SSL协议或其他加密通信协议的通信。针对通过多个服务端口适配多个加密通信协议的方案,专利技术人发现,由于物联网中存在种类复杂、来源广泛、数量庞大的客户端,利用多个服务端口适配多个加密通信协议会导致适配操作复杂易错、端口配置成本高、人工维护成本高的技术问题。
[0024]为了至少部分地解决上述技术问题,本公开提出了一种通信方法,包括:响应于已创建与客户端的通信线路,将代理引擎配置为虚拟代理引擎;响应于经由通信线路接收到
来自客户端的客户端握手数据,基于客户端握手数据,确定加密通信协议的版本信息,其中,客户端握手数据为用于加密通信的数据;将虚拟代理引擎更新为与版本信息相匹配的目标代理引擎;基于客户端握手数据,利用目标代理引擎,生成服务端握手数据;以及将服务端握手数据发送至客户端。
[0025]在本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
[0026]在本公开的技术方案中,在获取或采集用户个人信息之前,均获取了用户的授权或同意。
[0027]图1示意性示出了根据本公开实施例的可以应用通信方法及装置的示例性系统架构。
[0028]需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的
技术实现思路
,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。例如,在本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种通信方法,包括:响应于已创建与客户端的通信线路,将代理引擎配置为虚拟代理引擎;响应于经由所述通信线路接收到来自所述客户端的客户端握手数据,基于所述客户端握手数据,确定加密通信协议的版本信息,其中,所述客户端握手数据为用于加密通信的数据;将所述虚拟代理引擎更新为与所述版本信息相匹配的目标代理引擎;基于所述客户端握手数据,利用所述目标代理引擎,生成服务端握手数据;以及将所述服务端握手数据发送至所述客户端。2.根据权利要求1所述的方法,其中,所述基于所述客户端握手数据,确定加密通信协议的版本信息,包括:对所述客户端握手数据进行解码,得到第一解码数据;从所述第一解码数据中确定预定字段的字段内容;以及基于所述字段内容,确定所述版本信息。3.根据权利要求2所述的方法,其中,所述字段内容包括第一字段内容和第二字段内容,所述基于所述字段内容,确定所述版本信息,包括:基于所述第一字段内容,确定所述数据类型识别结果;以及在确定所述数据类型识别结果用于表征所述客户端握手数据为握手数据类型的情况下,基于所述第二字段内容,确定所述版本信息。4.根据权利要求1至3中任一项所述的方法,还包括:响应于已配置所述虚拟代理引擎,生成引擎标识,其中,所述引擎标识用于表征代理引擎是否为虚拟的。5.根据权利要求4所述的方法,还包括:响应于已将所述虚拟代理引擎更新为所述目标代理引擎,更新所述引擎标识。6.根据权利要求4或5所述的方法,还包括:响应于接收到所述客户端握手数据,确定所述引擎标识;以及在确定所述引擎标识用于表征所述代理引擎为所述目标代理引擎的情况下,基于所述客户端握手数据,利用所述目标代理引擎,生成所述服务端握手数据。7.根据权利要求1至6中任一项所述的方法,其中,所述基于所述客户端握手数据,利用所述目标代理引擎,生成服务端握手数据,包括:利用所述目标代理引擎,对所述客户端握手数据进行解码,得到第二解码数据;从所述第二解码数据中确定客户端加密协议数据;利用所述目标代理引擎,获取与所述客户端加密协议数据相匹配的服务端加密协议数据;以及基于所述服务端加密协议数据,生成所述服务端握手数据。8.根据权利要求1至7中任一项所述的方法,还包括:响应于接收到客户端通信数据,利用所述目标代理引擎,基于所述客户端通信数据,生成服务端通信数据;以及将所述服务端通信数据发送至所述客户端。
9.一种通信装置,包括:配置模块,用于响应于已创建与客户端的通信线路,将代理引擎配置为虚拟代理引擎;版本信息确定模块,用于响应于经由所述通信线路接收到来自所述客户端的客户端握手数据,基于所述客户端握手数据,确定加密通信协议的版本信息,其中,所述客户端握手数据为用于加密通信的数据;引擎更新模块,用于将所述虚拟代理引擎更新为与所述版本信息相匹配的目标代理引擎;第一生成模块,用于基于所述客户端握手数据,利...

【专利技术属性】
技术研发人员:李先懿戴宣
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:

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

1