一种基于浏览器的终端动态锁定标记方法与流程

文档序号:12493752阅读:247来源:国知局

本发明涉及信息安全技术领域,具体地,涉及一种基于浏览器的终端动态锁定标记方法。



背景技术:

目前所有的B/S系统基本上都在使用HTTP/HTTPS协议作为客户终端浏览器与服务端之间的通信协议,该协议具有无状态、无连接、简单、方便的特点,导致了服务端侧并不知道客户终端的位置以及客户终端的身份,由此为黑客的中间人攻击、冒用用户身份提供了便利和可能。

在客户终端浏览器与服务端之间的通信过程中,客户终端浏览器向服务端发一次请求,服务端响应之后,本次连接即断开了(即短连接方式);服务端不知道客户终端位置和身份,也不知道是否该提供客户终端所要求的服务。下次请求时再重新建立连接,标志请求归属的手段是会话标识session和本地cookies文本(cookies中文名称为小型文本文件,指某些网站为了辨别用户身份而储存在用户本地终端上的数据或加密数据,定义于RFC2109),这两个临时值都很容易被黑客截获利用,从而达到冒充用户的目的,用户登录流程安全及用户个人信息安全受到极大的威胁。



技术实现要素:

针对前述现有技术的问题,本发明提供了一种基于浏览器的终端动态锁定标记方法,其在建立客户终端与服务端的长连接之前,根据浏览器信息、登录请求时间戳以及待建立长连接的连接标记符,对客户终端浏览器进行临时的锁定标记,如此可使服务端在长连接通信过程中,对客户终端的浏览器进行识别,并安全响应对应的业务数据,进而可规避黑客的中间人攻击,极大的提升了互联网身份认入门的安全性和认证数据传输的安全性,便于实际推广和应用。

本发明采用的技术方案,提供了一种基于浏览器的终端动态锁定标记方法,包括如下步骤:S101.客户终端向服务端长连接服务器发送包含浏览器标记符的登录请求消息,所述浏览器标记符为使用登录请求时间戳对该客户终端浏览器的浏览器信息进行混编而得到的字符串;S102.服务端长连接服务器在接收到所述登录请求消息后,从服务器本地的连接资源池中为该客户终端分配可用的长连接账户,并使用所述浏览器标记符对所述长连接账户进行混编,得到连接标记符;S103.服务端长连接服务器在连接资源池中保存所述浏览器标记符和所述连接标记符及它们与所述长连接账户的对应关系;S104.服务端长连接服务器向客户终端发送包含所述长连接账户和连接标记密文的登录请求响应消息,所述连接标记密文为使用所述浏览器标记符对所述连接标记符进行数字签名而得到的字符串;S105.客户终端在接收到所述登录请求响应消息后,保存所述长连接账户和所述连接标记密文,然后使用所述长连接账户建立客户终端与服务端之间的长连接,完成对客户终端的动态锁定标记。

优化的,在所述步骤S101之前,还包括如下步骤:S100.客户终端使用浏览器客户端脚本语言读取该客户终端浏览器的浏览器信息。

优化的,在所述步骤S101中,所述混编方式为杂凑算法。

优化的,所述浏览器信息包含浏览器类型和浏览器版本号。

优化的,所述登录请求时间戳为预定发送所述登录请求消息的毫秒级时间戳。

优化的,在所述步骤S102中,从服务器本地的连接资源池中为该客户终端分配可用的长连接账户的步骤包括如下:若所述连接资源池存在未分配的长连接账户,则直接从未分配的长连接账户中随机选择一个长连接账户分配给该客户终端;若所述连接资源池不存在未分配的长连接账户且该连接资源池中的数据未满,则在该连接资源池中新建一个长连接账户,然后将新建的长连接账户分配给该客户终端;若所述连接资源池不存在未分配的长连接账户且该连接资源池中的数据已满,则中止为该客户终端分配可用的长连接账户。

优化的,所述长连接账户为Socket长连接账户。

优化的,在所述步骤S105之后,还包括如下步骤:在客户终端与服务端之间的长连接通信中,将所述连接标记密文添加到交互消息的Http请求头中。

综上,采用本发明所提供的一种基于浏览器的终端动态锁定标记方法,具有如下有益效果:(1)该方法在建立客户终端与服务端的长连接之前,根据浏览器信息、登录请求时间戳以及待建立长连接的连接标记符,对客户终端浏览器进行临时的锁定标记,如此可使服务端在长连接通信过程中,对客户终端的浏览器进行识别,并安全响应对应的业务数据,进而可规避黑客的中间人攻击;(2)可规避目前互联网服务登录流程中入口的安全问题,即服务端与浏览器的互不信任问题和服务端不知道客户终端身份的问题,极大的提高了互联网身份认证入门的安全性;(3)在一次认证发起到结束期间,通过在服务端与客户终端之间建立了不可打断的长连接,可规避黑客进行网络截获并中间人攻击的可能性,极大的提升了认证数据传输的安全性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的基于浏览器的终端动态锁定标记方法流程图。

具体实施方式

以下将参照附图,通过实施例方式详细地描述本发明提供的基于浏览器的终端动态锁定标记方法。在此需要说明的是,对于这些实施例方式的说明用于帮助理解本发明,但并不构成对本发明的限定。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,单独存在B,同时存在A和B三种情况,本文中术语“/和”是描述另一种关联对象关系,表示可以存在两种关系,例如,A/和B,可以表示:单独存在A,单独存在A和B两种情况,另外,本文中字符“/”,一般表示前后关联对象是一种“或”关系。

实施例一

图1示出了本发明提供的基于浏览器的终端动态锁定标记方法流程图。本实施例提供的所述基于浏览器的终端动态锁定标记方法,包括如下步骤。

S101.客户终端向服务端长连接服务器发送包含浏览器标记符的登录请求消息,所述浏览器标记符为使用登录请求时间戳对该客户终端浏览器的浏览器信息进行混编而得到的字符串。

在所述步骤S101中,所述浏览器信息可以但不限于包含浏览器类型(例如IE浏览器、火狐浏览器、UC浏览器和360浏览器等)和浏览器版本号等信息。所述登录请求时间戳为预定发送所述登录请求消息的时间戳,其可以但不限于为精确到毫秒级的时间戳。在所述步骤S101之前,必须在客户终端获取客户终端浏览器的浏览器信息,因此在所述步骤S101之前,还包括如下步骤:S100.客户终端使用浏览器客户端脚本语言读取该客户终端浏览器的浏览器信息。所述浏览器客户端脚本语言可以但不限于为JS-JavaScrip语言(一种直译式脚本语言,即是一种动态类型、弱类型、基于原型的语言,内置支持类型,它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户终端的脚本语言,常用于给HTML网页增加动态功能)。此外,在所述步骤S101中,所述混编方式可以但不限于为杂凑算法。所述杂凑算法又称Hash函数(一种把任意长的输入消息串变化成固定长的输出串的一种函数),如此可以获得字长固定的客户终端浏览器标记符,以便后续进行数字签名。

S102.服务端长连接服务器在接收到所述登录请求消息后,从服务器本地的连接资源池中为该客户终端分配可用的长连接账户,并使用所述浏览器标记符对所述长连接账户进行混编,得到连接标记符。

在所述步骤S102中,所述连接资源池为在客户终端长连接服务端时所需要的长连接账户(包含账号及对应密码)集合。所述长连接是本领域的常用术语,指在一个通讯连接上可以连续发送多个数据包,并在连接保持期间,若没有数据包发送,则需要双方互发链路检测包或心跳检测包。在本实施例中,所述长连接为客户终端通过账号/密码与服务端保持长时间连接的通信方式。优化的,在所述步骤S102中,从服务器本地的连接资源池中为该客户终端分配可用的长连接账户的步骤包括如下:若所述连接资源池存在未分配的长连接账户,则直接从未分配的长连接账户中随机选择一个长连接账户分配给该客户终端;若所述连接资源池不存在未分配的长连接账户且该连接资源池中的数据未满,则在该连接资源池中新建一个长连接账户,然后将新建的长连接账户分配给该客户终端;若所述连接资源池不存在未分配的长连接账户且该连接资源池中的数据已满,则中止为该客户终端分配可用的长连接账户。此外,所述长连接账户为Socket长连接账户。由于所述Socket长连接具有不可打断性,可以高效地保障客户终端与服务端之间的通信安全。

S103.服务端长连接服务器在连接资源池中保存所述浏览器标记符和所述连接标记符及它们与所述长连接账户的对应关系。

S104.服务端长连接服务器向客户终端发送包含所述长连接账户和连接标记密文的登录请求响应消息,所述连接标记密文为使用所述浏览器标记符对所述连接标记符进行数字签名而得到的字符串。

S105.客户终端在接收到所述登录请求响应消息后,保存所述长连接账户和所述连接标记密文,然后使用所述长连接账户建立客户终端与服务端之间的长连接,完成对客户终端的动态锁定标记。

在所述步骤S105之后,还包括如下步骤:在客户终端与服务端之间的长连接通信中,将所述连接标记密文添加到交互消息的Http请求头中。如此服务端可根据对Http请求头中的所述连接标记密文进行校验的结果,安全响应对应的业务数据。如此可使服务端在长连接通信过程中,对客户终端的浏览器进行识别,规避黑客的中间人攻击,极大的提升了互联网身份认入门的安全性和认证数据传输的安全性,便于实际推广和应用。

综上,本实施例所提供的基于浏览器的终端动态锁定标记方法,具有如下有益效果:(1)该方法在建立客户终端与服务端的长连接之前,根据浏览器信息、登录请求时间戳以及待建立长连接的连接标记符,对客户终端浏览器进行临时的锁定标记,如此可使服务端在长连接通信过程中,对客户终端的浏览器进行识别,并安全响应对应的业务数据,进而可规避黑客的中间人攻击;(2)可规避目前互联网服务登录流程中入口的安全问题,即服务端与浏览器的互不信任问题和服务端不知道客户终端身份的问题,极大的提高了互联网身份认证入门的安全性;(3)在一次认证发起到结束期间,通过在服务端与客户终端之间建立了不可打断的长连接,可规避黑客进行网络截获并中间人攻击的可能性,极大的提升了认证数据传输的安全性。

如上所述,可较好地实现本发明。对于本领域的技术人员而言,根据本发明的教导,设计出不同形式的基于浏览器的终端动态锁定标记方法并不需要创造性的劳动。在不脱离本发明的原理和精神的情况下对这些实施例进行变化、修改、替换、整合和变型仍落入本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1