一种基于SSL/TLS协议的安全参数协商方法和系统技术方案

技术编号:19011624 阅读:62 留言:0更新日期:2018-09-22 11:01
本发明专利技术公开了一种基于SSL/TLS协议的安全参数协商方法,包括:客户端接收用户发送的网络协议数据包,并根据网络协议数据包中的关键字段确定用户所处应用场景的安全级别,客户端扫描服务端提供SSL/TLS服务的地址和端口,以获取服务端支持的所有参数信息,客户端根据确定的用户所处应用场景的安全级别从参数信息中选择对应的值,并将该值填入SSL/TLS协议的ClientHello字段中。本发明专利技术能够根据不同的应用场景,使用不同强度的安全参数,提高了用户数据的安全性和传输效率。可以避免因安全参数不支持而产生错误,能够提高通信的效率,并且可以快速定位问题,提高解决问题的效率。

【技术实现步骤摘要】
一种基于SSL/TLS协议的安全参数协商方法和系统
本专利技术属于信息安全
和互联网通信领域,更具体地,涉及一种基于SSL/TLS协议的安全参数协商方法和系统。
技术介绍
随着信息化程度的不断提高,各政府部门或企事业单位都已经在互联网上部署了大量的业务系统,并通过互联网与其他各地的分支机构或者合作伙伴进行业务数据往来,这些业务数据是政府部门或企事业单位的重要数字资产,信息化建设过程中需要保证其机密性、真实性、完整性和不可否认性。在这些业务数据的传输过程中,出于安全上的考虑,往往不能将这些业务数据直接发送给远程服务器,而需要与远程服务端建立SSL/TLS连接,以接收、处理和响应这些业务数据。在SSL/TLS连接的握手过程中,SSL/TLS客户端需要将其所支持的所有安全参数发送给SSL/TLS服务端,SSL/TLS服务端从SSL/TLS客户端的安全参数信息中选择一种协商算法,约定为双方在后续通讯过程中所使用。然而,现有的SSL/TLS安全参数协商机制存在如下几个方面的技术问题:第一、SSL/TLS客户端被动的接受SSL/TLS服务器选择的安全参数,当SSL/TLS客户端处在低安全级别的应用环境中,SSL/TLS服务端可能会选择高强度的安全参数,从而导致传输效率低下,而当SSL/TLS客户端处在高安全级别的应用环境中,SSL/TLS服务端可能会选择低强度的安全参数,导致用户数据得不到高强度的加密保护;第二、如果SSL/TLS服务端不支持SSL/TLS客户端发送的安全参数时,会导致SSL/TLS握手失败,从而降低了SSL/TLS通信的效率,此外,如果要确定SSL/TLS握手失败的原因,则需要在SSL/TLS服务端查看配置文件或者日志文件,并且通过将该文件与和SSL/TLS服务端通信的每个SSL/TLS客户端进行比对,这样会产生浪费运维人员的大量时间,费时费力,效率低下,不利于快速排查的技术问题。
技术实现思路
针对现有技术的以上缺陷或改进需求,本专利技术提供了一种基于SSL/TLS协议的安全参数协商方法和系统,其目的在于,根据用户所处的不同应用场景,使用不同强度的安全参数,从而提高客户端接收到的用户数据的安全性和传输效率,此外,本专利技术还能够避免因安全参数不被服务端支持而产生握手错误,从而提高通信的效率。为实现上述目的,按照本专利技术的一个方面,提供了一种基于SSL/TLS协议的安全参数协商方法,包括以下步骤:(1)客户端接收用户发送的网络协议数据包,并根据网络协议数据包中的关键字段确定用户所处应用场景的安全级别;(2)客户端发送第一握手协议数据包到服务端;(3)服务端判断来自客户端的第一握手协议数据包是否是用于安全参数协商的握手协议数据包,如果是则转入步骤(4),否则丢弃该第一握手协议数据包,过程结束;(4)服务端生成第二握手协议数据包,在该第二握手协议数据包的安全参数字段中填入该服务端对应的安全参数,并将该第二握手数据包发送到客户端;(5)客户端根据其自身支持的安全参数和步骤(1)确定的用户所处应用场景的安全级别从第二握手协议数据包中的安全参数字段中选择对应的值,并将该值填入SSL/TLS协议的ClientHello字段中。优选地,第一握手协议数据包和第二握手协议数据包中均包括至少一个安全参数字段,第一握手协议数据包的安全参数字段是客户端支持的密码套件列表字段、第二握手协议数据包的安全参数字段是服务端支持的密码套件列表字段。优选地,第一握手协议数据包的安全参数字段进一步包括客户端SSL/TLS协议版本字段、以及客户端支持的压缩算法列表字段;第二握手协议数据包的安全参数字段进一步包括服务端SSL/TLS协议版本字段、以及服务端支持的压缩算法列表字段。优选地,步骤(3)具体为,首先判断握手协议数据包中的握手类型字段的值是否等于客户端与服务端预先协商的值,如果等于,则表示该握手协议数据包就是用于安全参数协商的握手协议数据包,否则则表示其不是用于安全参数协商的握手协议数据包。优选地,在第二握手协议数据包的密码套件列表字段中,所有加密套件被按照加密强度从高到低进行了排序,其中最前面的一部分加密套件用作高加密强度的加密套件,对应于高安全级别,中间的一部分加密套件用于中加密强度的加密套件,对应于中安全级别,剩余的加密套件用于低加密强度的加密套件,对应于低安全级别。按照本专利技术的另一方面,提供了一种基于SSL/TLS协议的安全参数协商系统,包括:第一模块,其设置于客户端中,用于接收用户发送的网络协议数据包,并根据网络协议数据包中的关键字段确定用户所处应用场景的安全级别;第二模块,其设置在客户端中,用于发送第一握手协议数据包到服务端;第三模块,其设置于服务端中,用于判断来自客户端的第一握手协议数据包是否是用于安全参数协商的握手协议数据包,如果是则转入第四模块,否则丢弃该第一握手协议数据包,过程结束;第四模块,其设置于服务端中,用于生成第二握手协议数据包,在该第二握手协议数据包的安全参数字段中填入该服务端对应的安全参数,并将该第二握手数据包发送到客户端;第五模块,其设置于客户端中,用于根据其自身支持的安全参数和第一模块确定的用户所处应用场景的安全级别从第二握手协议数据包中的安全参数字段中选择对应的值,并将该值填入SSL/TLS协议的ClientHello字段中。总体而言,通过本专利技术所构思的以上技术方案与现有技术相比,上述方法和系统具有以下的有益效果:(1)本专利技术通过针对用户所处的不同用户场景,使用不同强度的安全参数字段,从而提高了客户端接收到的用户数据的安全性和传输效率;(2)本专利技术的客户端能够从服务端发送的加密套件列表字段中选择其自身支持的一个或多个加密套件,从而能够避免因安全参数不被服务端支持而产生握手错误,并进而提高通信的效率。按照本专利技术的另一方面,提供了一种基于SSL/TLS协议的安全参数协商方法,包括以下步骤:(1)客户端接收用户发送的网络协议数据包,并根据网络协议数据包中的关键字段确定用户所处应用场景的安全级别。(2)客户端扫描服务端提供SSL/TLS服务的地址和端口,以获取服务端支持的所有参数信息;(3)客户端根据其自身支持的参数信息和步骤(1)确定的用户所处应用场景的安全级别从安全参数规划库中选择对应的值,并将该值填入SSL/TLS协议的ClientHello字段中。优选地,步骤(2)具体为:首先客户端通过应用程序或者工具与服务端建立一次成功完整的SSL/TLS连接,以获取到一组服务端支持的参数信息。然后客户端将该参数信息录入安全参数规则库,其后客户端删除该参数信息,并再次与服务端建立成功完整的SSL/TLS连接,以获得下一组服务端支持的参数信息,依次类推,直到获取到服务端支持的所有参数信息并将其录入客户端的安全参数数据库为止。优选地,参数信息是服务端支持的加密套件列表。按照本专利技术的另一方面,提供了一种基于SSL/TLS协议的安全参数协商系统,其设置于客户端中,包括:第一模块,用于接收用户发送的网络协议数据包,并根据网络协议数据包中的关键字段确定用户所处应用场景的安全级别。第二模块,用于扫描服务端提供SSL/TLS服务的地址和端口,以获取服务端支持的所有参数信息;第三模块,用于根据客户端自身支持的参数信息和步本文档来自技高网
...
一种基于SSL/TLS协议的安全参数协商方法和系统

【技术保护点】
1.一种基于SSL/TLS协议的安全参数协商方法,其特征在于,包括以下步骤:(1)客户端接收用户发送的网络协议数据包,并根据网络协议数据包中的关键字段确定用户所处应用场景的安全级别;(2)客户端发送第一握手协议数据包到服务端;(3)服务端判断来自客户端的第一握手协议数据包是否是用于安全参数协商的握手协议数据包,如果是则转入步骤(4),否则丢弃该第一握手协议数据包,过程结束;(4)服务端生成第二握手协议数据包,在该第二握手协议数据包的安全参数字段中填入该服务端对应的安全参数,并将该第二握手数据包发送到客户端;(5)客户端根据其自身支持的安全参数和步骤(1)确定的用户所处应用场景的安全级别从第二握手协议数据包中的安全参数字段中选择对应的值,并将该值填入SSL/TLS协议的ClientHello字段中。

【技术特征摘要】
1.一种基于SSL/TLS协议的安全参数协商方法,其特征在于,包括以下步骤:(1)客户端接收用户发送的网络协议数据包,并根据网络协议数据包中的关键字段确定用户所处应用场景的安全级别;(2)客户端发送第一握手协议数据包到服务端;(3)服务端判断来自客户端的第一握手协议数据包是否是用于安全参数协商的握手协议数据包,如果是则转入步骤(4),否则丢弃该第一握手协议数据包,过程结束;(4)服务端生成第二握手协议数据包,在该第二握手协议数据包的安全参数字段中填入该服务端对应的安全参数,并将该第二握手数据包发送到客户端;(5)客户端根据其自身支持的安全参数和步骤(1)确定的用户所处应用场景的安全级别从第二握手协议数据包中的安全参数字段中选择对应的值,并将该值填入SSL/TLS协议的ClientHello字段中。2.根据权利要求1所述的安全参数协商方法,其特征在于,第一握手协议数据包和第二握手协议数据包中均包括至少一个安全参数字段;第一握手协议数据包的安全参数字段是客户端支持的密码套件列表字段,第二握手协议数据包的安全参数字段是服务端支持的密码套件列表字段。3.根据权利要求2所述的安全参数协商方法,其特征在于,第一握手协议数据包的安全参数字段进一步包括客户端SSL/TLS协议版本字段、以及客户端支持的压缩算法列表字段;第二握手协议数据包的安全参数字段进一步包括服务端SSL/TLS协议版本字段、以及服务端支持的压缩算法列表字段。4.根据权利要求1所述的安全参数协商方法,其特征在于,步骤(3)具体为,首先判断握手协议数据包中的握手类型字段的值是否等于客户端与服务端预先协商的值,如果等于,则表示该握手协议数据包就是用于安全参数协商的握手协议数据包,否则则表示其不是用于安全参数协商的握手协议数据包。5.根据权利要求1所述的安全参数协商方法,其特征在于,在第二握手协议数据包的密码套件列表字段中,所有加密套件被按照加密强度从高到低进行了排序,其中最前面的一部分加密套件用作高加密强度的加密套件,对应于高安全级别,中间的一部分加密套件用于中加密强度的加密套件,对应于中安全级别,剩余的加密套件用于低加密强度的加密套件,对应于低安全级别。6.一种基于SSL/TLS协议的安全参数协商系统,其特征在于,包括:第一模块,其设置于客户端中,用于接收用户发送的网络协议数据包,并根据网络协议数据包中的关键字段确定用户所处应用场景的安...

【专利技术属性】
技术研发人员:乔海权胡进张庆勇
申请(专利权)人:武汉信安珞珈科技有限公司
类型:发明
国别省市:湖北,42

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

1