防止会话劫持的方法、服务器以及终端与流程

文档序号:16545021发布日期:2019-01-08 20:47阅读:336来源:国知局
防止会话劫持的方法、服务器以及终端与流程

本申请涉及通信技术领域,尤其涉及防止会话劫持的方法、服务器以及终端。



背景技术:

会话劫持是一种攻击者作为第三方通过获取终端的会话标识(sessionid)后,使用该合法的会话标识登录目标终端的用户帐号,伪装成合法用户,劫持终端和服务器之间的会话的攻击方法。而心跳机制是终端定时发送一个自定义的心跳包,让服务器知道终端还处于活动状态,以确保终端和服务器之间连接的有效性的机制。在终端和服务器之间需要进行会话之前,终端首先需要登录服务器以及进行与服务器之间的心跳包检测,在终端登录并获知终端和服务器之间正常连接后,终端向服务器发送业务信息。目前终端和服务器之间的会话机制,通常使用会话标识进行二者之间信息的交互。而会话机制中的会话标识通常保存在cookie中,cookie是指某些网站为了辨别用户身份、进行会话跟踪而储存在用户本地终端上的数据,这些数据通常都已经加密。

当终端需要和服务器进行信息交互时,首先,终端需要登录服务器,通过登录请求信息将终端的用户帐号以及密码发送给服务器,服务器在接收到登录请求信息后,就会在服务器中自动创建会话标识,并建立终端的用户信息与该会话标识之间的用户身份识别映射关系,然后将该会话标识发送给终端,终端用该会话标识发送请求心跳包消息给服务器,当服务器通过用户身份识别映射关系以及该会话标识对终端认证成功后,服务器就会将心跳包通过心跳包响应消息发送给终端,最后终端还是使用会话标识将业务请求消息发送给服务器,服务器通过会话标识将第一业务消息通过业务响应消息发送给终端。

然而,由于目前的技术中,会话标识始终是在终端和服务器之间作为可以进行该会话(信息交互)的身份凭证,而即使会话标识保存在cookie中,并且已进行了加密,但是攻击方还是能够找到一些计算机安全漏洞恶意获取该会话标识,伪装成合法终端,攻击终端和服务器之间的会话,严重影响了终端和服务器之间的会话信息安全,二者之间的会话信息安全等级有待提高。



技术实现要素:

本申请实施例提供了防止会话劫持的方法、服务器以及终端,能够防止攻击方恶意获取终端和服务器之间的身份认证信息,提高了终端和服务器之间的会话信息安全等级。

本申请实施例提供了一种防止会话劫持的方法,包括:

服务器验证终端发送的用户帐号以及密码;

所述服务器创建与所述用户帐号对应的会话标识;

所述服务器创建与所述会话标识对应的第一令牌;

所述服务器建立所述用户信息与所述会话标识的用户身份识别映射关系,所述用户信息包括用户名在内的用户与所述服务器之间的会话信息;

所述服务器通过加密方式向所述终端发送登录响应消息,所述登录响应消息携带所述第一令牌;

所述服务器通过所述加密方式接收所述终端发送的心跳包请求消息,所述心跳包请求消息携带所述第一令牌;

当所述服务器通过用户身份识别映射关系确定所述用户信息的认证成功时,所述服务器创建与所述会话标识对应的所述第二令牌;

所述服务器通过所述加密方式向所述终端发送心跳包响应消息,所述心跳包响应消息携带所述第二令牌;

所述服务器接收所述终端通过所述加密方式发送的第一业务请求消息,所述第一业务请求消息携带所述第二令牌;

所述服务器通过所述加密方式向所述终端发送第一业务响应消息,所述第一业务响应消息中携带第一业务消息以及所述第二令牌。

可选地,在所述服务器创建与所述会话标识对应的所述第二令牌之后,在所述服务器通过加密方式向所述终端发送心跳包响应消息之前,所述方法还包括:

所述服务器重置所述会话标识的超时定时器;

在所述服务器通过加密方式向所述终端发送第一业务响应消息之后,所述方法还包括:

所述服务器接收所述终端通过加密方式发送的第二业务请求消息,所述第二业务请求消息携带所述第二令牌;

当所述服务器确定所述超时定时器的时长达到预设时长阈值时,所述服务器创建与所述会话标识对应的第三令牌;

所述服务器通过加密方式向所述终端发送登录响应消息,所述登录响应消息携带所述第三令牌。

可选地,所述加密方式为加密协议。

可选地,所述服务器通过加密方式向所述终端发送登录响应消息包括:

所述服务器用所述用户帐号作为初始加密密钥,通过加密算法对登录响应数据包进行加密,所述登录响应数据包中包含有所述第一令牌;

所述服务器向所述终端发送所述登录响应消息,所述登录响应消息携带用所述初始加密密钥加密的登录响应数据包,所述登录响应数据包中包含有所述第一令牌;

所述服务器通过所述加密方式接收所述终端发送的心跳包请求消息包括:

所述服务器接收所述终端发送的所述心跳包请求消息,所述心跳包请求消息携带用所述第一令牌加密的心跳包请求数据包;

所述服务器使用所述第一令牌对所述心跳包请求数据包进行解密;

所述服务器通过所述加密方式向所述终端发送心跳包响应消息包括:

所述服务器用所述第一令牌作为加密密钥,通过所述加密算法对心跳包响应数据包进行加密,所述心跳包响应数据包中包含有所述第二令牌;

所述服务器向所述终端发送所述心跳包响应消息,所述心跳包响应消息携带用所述第一令牌加密的所述心跳包响应数据包;

所述服务器接收所述终端通过所述加密方式发送的第一业务请求消息包括:

所述服务器接收所述终端发送的所述第一业务请求消息,所述第一业务请求消息携带用所述第二令牌加密的业务请求数据包;

所述服务器使用所述第二令牌对所述第一业务请求数据包进行解密;

所述服务器通过所述加密方式向所述终端发送第一业务响应消息包括:

所述服务器用所述第二令牌作为所述加密密钥,通过所述加密算法对所述第一业务响应数据包进行加密;

所述服务器向所述终端发送所述第一业务响应消息,所述第一业务响应消息携带用所述第二令牌加密的所述第一业务响应数据包,所述第一业务响应数据包中包含有第一业务消息。

可选地,在所述服务器创建与所述会话标识对应的所述第二令牌之后,在所述服务器用所述第一令牌作为加密密钥,通过所述加密算法对心跳包响应数据包进行加密之前,所述方法还包括:

所述服务器重置所述会话标识的超时定时器;

在所述服务器向所述终端发送所述第一业务响应消息之后,所述方法还包括:

所述服务器接收所述终端发送的第二业务请求消息,所述第二业务请求消息携带用所述第二令牌加密的业务请求数据包;

当所述服务器确定所述超时定时器的时长达到预设时长阈值时,所述服务器创建新的会话标识以及第三令牌,所述新的会话标识与所述第三令牌相对应;

所述服务器用所述第三令牌作为所述加密密钥,通过所述加密算法对所述登录响应数据包再次进行加密,所述登录响应数据包中包含有所述第三令牌;

所述服务器向所述终端再次发送登录响应消息,所述登录响应消息携带用所述第三令牌加密的登录响应数据包,所述登录响应数据包中包含有所述第三令牌。

可选地,所述心跳包响应消息还携带系统控制载荷,所述系统控制载荷为所述服务器进行控制操作的消息以及指令信息。

可选地,所述加密协议包括基于安全套接字层的超文本传输协议(hypertexttransferprotocoloversecuresocketlayer,https协议)、安全套接层协议(securesocketslayer,ssl协议)或安全传输层协议(transportlayersecurity,tls协议)。

可选地,所述加密算法包括:

对称加密算法、异或加密算法或数据加密算法。

本申请实施例提供了另一种防止会话劫持的方法,包括:

终端向服务器发送登录请求消息,所述登录请求消息携带用户信息;

所述终端通过加密方式接收所述服务器发送的登录响应消息,所述登录响应消息携带与会话标识对应的第一令牌,所述会话标识与所述用户信息相对应;

所述终端通过加密方式向所述服务器发送心跳包请求消息,所述心跳包请求消息携带所述第一令牌;

所述终端通过所述加密方式接收所述服务器发送的心跳包响应消息,所述心跳包响应消息携带与所述会话标识对应的第二令牌;

所述终端通过所述加密方式向所述服务器发送第一业务请求消息,所述第一业务请求消息携带所述第二令牌;

所述终端通过所述加密方式接收所述服务器发送的第一业务响应消息,所述第一业务响应消息中携带第一业务消息以及所述第二令牌。

本申请实施例提供了一种服务器,所述服务器包括:

第一接收单元,用于接收终端发送的登录请求消息,所述登录请求消息携带所述终端的用户帐号以及密码;

验证单元,用于验证终端所述用户帐号以及所述密码是否有效;

第一创建单元,用于当确认所述用户帐号以及所述密码有效时,自动创建会话标识;

第二创建单元,用于创建随机的作为唯一标识符的第一令牌;

第一建立单元,用于建立所述第一令牌与所述会话标识的第一映射关系;

第二建立单元,用于建立所述终端的用户信息与所述会话标识的用户身份识别映射关系;

第一发送单元,用于通过加密方式向所述终端发送登录响应消息,所述登录响应消息携带登录响应数据包,所述登录响应数据包中包含有所述第一令牌;

第二接收单元,用于通过所述加密方式接收所述终端发送的心跳包请求消息,所述心跳包请求消息携带心跳包请求数据包,所述心跳包请求数据包中包含有所述第一令牌;

第一查找单元,用于用所述第一令牌查找所述第一映射关系,得到所述会话标识;

判断单元,用于判断用所述会话标识查找是否存在所述用户身份识别映射关系;

确定单元,用于当确定用所述会话标识查找到存在所述用户身份识别映射关系,则确定对所述终端的所述用户信息认证成功;

第三创建单元,用于创建所述第二令牌;

第三建立单元,用于建立所述第二令牌与所述会话标识的第二映射关系;

第二发送单元,用于通过所述加密方式向所述终端发送心跳包响应消息,所述心跳包响应消息携带心跳包响应数据包,所述心跳包响应数据包中包含有所述第二令牌;

第三接收单元,用于接收所述终端通过所述加密方式发送的第一业务请求消息,所述第一业务请求消息中携带所述第二令牌;

第三发送单元,用于通过所述加密方式向所述终端发送第一业务响应消息,所述第一业务响应消息中携带第一业务响应数据包,所述第一业务响应数据包中包含有第一业务消息。

可选地,所述服务器还包括:

重置单元,用于重置所述会话标识的超时定时器;

第四接收单元,用于接收所述终端通过加密方式发送的第二业务请求消息,所述第二业务请求消息携带所述第二令牌;

第四创建单元,用于当确定所述超时定时器的时长达到预设时长阈值时,创建新的会话标识以及第三令牌,所述新的会话标识与所述第三令牌相对应;

第四发送单元,用于通过加密方式向所述终端发送登录响应消息,所述登录响应消息携带所述第三令牌。

可选地,所述服务器通过加密方式向所述终端发送登录响应消息包括:

第一发送单元具体用于用所述用户帐号作为初始加密密钥,通过加密算法对登录响应数据包进行加密,所述登录响应数据包中包含有所述第一令牌;向所述终端发送所述登录响应消息,所述登录响应消息携带用所述初始加密密钥加密的登录响应数据包,所述登录响应数据包中包含有所述第一令牌;

第二接收单元具体用于接收所述终端发送的所述心跳包请求消息,所述心跳包请求消息携带用所述第一令牌加密的心跳包请求数据包;使用所述第一令牌对所述心跳包请求数据包进行解密;

第二发送单元具体用于用所述第一令牌作为加密密钥,通过所述加密算法对心跳包响应数据包进行加密,所述心跳包响应数据包中包含有所述第二令牌;向所述终端发送所述心跳包响应消息,所述心跳包响应消息携带用所述第一令牌加密的所述心跳包响应数据包;

第三接收单元具体用于接收所述终端发送的所述第一业务请求消息,所述第一业务请求消息携带用所述第二令牌加密的业务请求数据包;使用所述第二令牌对所述第一业务请求数据包进行解密;

第三发送单元具体用于用所述第二令牌作为所述加密密钥,通过所述加密算法对所述第一业务响应数据包进行加密;向所述终端发送所述第一业务响应消息,所述第一业务响应消息携带用所述第二令牌加密的所述第一业务响应数据包,所述第一业务响应数据包中包含有第一业务消息以及所述第二令牌。

可选地,所述服务器还包括:

重置单元,用于重置所述会话标识的超时定时器;

所述第四接收单元还具体用于接收所述终端发送的第二业务请求消息,所述第二业务请求消息携带用所述第二令牌加密的业务请求数据包;

所述第四创建单元还具体用于当确定所述超时定时器的时长达到预设时长阈值时,创建与所述会话标识对应的第三令牌;

所述第四发送单元还具体用于用所述第三令牌作为所述加密密钥,通过所述加密算法对所述登录响应数据包再次进行加密,所述登录响应数据包中包含有所述第三令牌;向所述终端再次发送登录响应消息,所述登录响应消息携带用所述第三令牌加密的登录响应数据包,所述登录响应数据包中包含有所述第三令牌。

本申请实施例还提供了另一种服务器,该服务器具有实现上述防止会话劫持的方法中服务器行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。

本申请实施例提供了一种计算机存储介质,该计算机存储介质用于储存上述服务器所用的计算机软件指令,其包括用于执行为服务器所设计的程序。

本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机软件指令,该计算机软件指令可通过处理器进行加载来实现上述防止会话劫持的方法的流程。

本申请实施例提供一种终端,包括:

第一发送单元,用于向服务器发送登录请求消息,所述登录请求消息携带登录请求数据包,所述登录请求数据包中包含有所述终端的用户帐号以及密码;

第一接收单元,用于通过加密方式接收所述服务器发送的登录响应消息,所述登录响应消息携带登录响应数据包,所述登录响应数据包中包含有与会话标识对应的第一令牌,所述会话标识与所述用户信息相对应;

第二发送单元,用于通过所述加密方式向所述服务器发送心跳包请求消息,所述心跳包请求消息携带心跳包请求数据包,所述心跳包请求数据包中包含有所述第一令牌;

第二接收单元,用于通过所述加密方式接收所述服务器发送的心跳包响应消息,所述心跳包响应消息携带心跳包响应数据包,所述心跳包响应数据包中包含有与所述会话标识对应的第二令牌;

第三发送单元,用于通过所述加密方式向所述服务器发送第一业务请求消息,所述第一业务请求消息中携带所述第二令牌;

第三接收单元,用于通过所述加密方式接收所述服务器发送的第一业务响应消息,所述第一业务响应消息中携带业务响应数据包,所述第一业务响应数据包中包含有第一业务消息以及所述第二令牌。

本申请实施例还提供了另一种终端,该终端具有实现上述防止会话劫持的方法中终端行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。

本申请实施例提供了一种计算机存储介质,该计算机存储介质用于储存上述终端所用的计算机软件指令,其包括用于执行为终端所设计的程序。

本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机软件指令,该计算机软件指令可通过处理器进行加载来实现上述防止会话劫持的方法的流程。

从以上技术方案可以看出,本申请实施例具有以下优点:由于服务器在创建会话标识和第一令牌后,只将第一令牌通过加密方式发送给终端,而不将会话标识发送给终端,而且,在终端将包含有第一令牌的心跳包请求数据包通过加密方式发送给服务器之后,服务器又会创建第二令牌,并通过加密方式将包含有第二令牌的心跳包响应数据包发送给终端,接着终端就可以向服务器通过加密方式发送第一业务请求消息,该第一业务请求消息携带的第一业务请求数据包中包含有第二数值,而服务器在向终端通过加密方式发送第一业务响应消息时,该第一业务响应消息携带的第一业务响应数据包中包含有第一业务消息以及第二令牌,由此可知,本申请实施例是通过不断更换令牌的数值,从而不断更换服务器和终端之间用于识别对方身份的唯一识别码,并能够通过加密方式保护作为唯一识别码的令牌的动态数值,由此能够双重保护终端和服务器之间进行信息交互的信息安全,以防止恶意的攻击方轻易获取到不断更换的密钥而伪装成合法用户劫持服务器和终端之间的会话信息,提升了终端和服务器之间信息交互的安全性。

附图说明

图1为本申请实施例中防止会话劫持的方法的一个实施例示意图;

图2为本申请实施例中防止会话劫持的方法的另一个实施例示意图;

图3为本申请实施例中防止会话劫持的方法的另一个实施例示意图;

图4为本申请实施例中防止会话劫持的方法的一个信息交互示意图;

图5为本申请实施例中防止会话劫持的方法的另一个信息交互示意图;

图6为本申请实施例中防止会话劫持的方法的另一个信息交互示意图;

图7为本申请实施例中防止会话劫持的方法的另一个实施例示意图;

图8为本申请实施例中防止会话劫持的方法的另一个信息交互示意图;

图9为本申请实施例中防止会话劫持的方法的另一个信息交互示意图;

图10为本申请实施例中防止会话劫持的方法的另一个信息交互示意图;

图11为本申请实施例中服务器的一个实施例示意图;

图12为本申请实施例中服务器的另一个实施例示意图;

图13为本申请实施例中终端的一个实施例示意图;

图14为本申请实施例中终端的另一个实施例示意图。

具体实施方式

本申请实施例提供了防止会话劫持的方法、服务器以及终端,用于防止攻击方恶意获取终端和服务器之间的身份认证信息,提高了终端和服务器之间的会话信息安全等级。

参阅图1,图1为本申请实施例中防止会话劫持的方法的一个实施例。本申请实施例中防止会话劫持的方法的一个实施例包括:

101、服务器接收终端发送的登录请求信息;

本实施例中,终端在向服务器请求业务信息以及请求心跳包之前,首先可以向服务器发送登录请求信息登录服务器,该登录请求信息携带终端的用户账号和密码。

102、服务器验证用户账号以及密码是否有效;

服务器在接收到登录请求信息之后,可以验证登录请求信息中携带的用户账号和密码是否有效。若有效,则执行步骤103。

103、服务器自动创建会话标识;

当服务器确定终端的用户账号以及密码有效时,服务器就可以自动创建终端和服务器之间进行信息交互的会话标识。

104、服务器创建随机的作为唯一标识符的第一令牌;

在服务器创建会话标识之后,服务器接着可以创建随机的令牌的数值,本申请实施例中,将服务器创建的第一个令牌的数值称为第一令牌,令牌的数值是服务器和终端之间进行信息交互时,为了识别对方时的唯一标识符。

105、服务器建立第一令牌与会话标识的第一映射关系;

服务器在创建了会话标识和第一令牌之后,可以建立第一令牌和会话标识之间的第一映射关系,并将该第一映射关系设置在服务器中有关会话标识和令牌的数值的映射表中。

106、服务器建立用户信息与会话标识的用户身份识别映射关系;

服务器还可以建立终端的用户信息与会话标识的用户身份识别映射关系。需要说明的是,为区分前述会话标识和令牌的映射关系,本申请实施例中用用户身份识别映射关系表示终端的用户信息与会话标识的映射关系。终端的用户信息包括终端的用户名等与会话有关的信息。

107、服务器通过加密方式向终端发送登录响应消息;

服务器在建立好令牌与会话标识之间的映射关系、终端的用户信息与会话标识的映射关系之后,可以通过加密方式向终端发送登录响应消息,该登录响应消息携带登录响应数据包,而第一令牌就包含在该登录响应数据包中。

需要说明的是,该加密方式可以是通过加密通道,即加密协议实现,用加密协议传输的数据是明文数据,加密方式也可以通过加密算法,即通过密文传输数据的方式实现,具体此处不做限定。

108、服务器通过加密方式接收终端发送的心跳包请求消息;

本实施例中,服务器在将登录响应消息发送给终端之后,终端可以通过加密方式向服务器发送心跳包请求消息,该心跳包请求消息携带心跳包请求数据包,该心跳包请求数据包中包含有第一令牌。也就是说,终端在接收到服务器发送的第一令牌后,还会将该第一令牌打包放在心跳包请求数据包中,通过心跳包请求消息发送给服务器,通过这种方式以使服务器能够识别发送了第一令牌的终端就是之前已通过验证、可以进行会话的终端。

109、服务器用第一令牌查找第一映射关系,得到会话标识;

服务器在接收到心跳包请求数据包之后,可以用心跳包请求数据包中的第一数值通过令牌和会话标识之间的映射表查找与第一令牌对应的第一映射关系,从而得到会话标识。

110、服务器判断用会话标识查找是否存在用户身份识别映射关系;

服务器在查找到会话标识之后,可以判断用该会话标识是否能够在会话标识和终端的用户信息的映射表中查找到用户身份识别映射关系,若是,则执行步骤111。

111、服务器确定对终端的用户信息认证成功;

当服务器在会话标识和终端的用户信息的映射表中用会话标识查找到用户身份识别映射关系之后,就可以确定与该会话标识对应的终端的用户信息,也就是说,服务器对终端的用户信息认证成功。

112、服务器创建第二令牌;

服务器对终端的用户信息认证成功之后,可以创建第二令牌,随后第一令牌失效。

113、服务器建立第二令牌与会话标识的第二映射关系;

服务器在建立第二令牌之后,可以在令牌与会话标识的映射表中建立第二令牌与会话标识的第二映射关系,每个不同的令牌与会话标识所对应的映射关系都不一样。

114、服务器通过加密方式向终端发送心跳包响应消息;

服务器在重置会话标识的超时定时器之后,可以通过加密方式向终端发送心跳包响应消息,该心跳包响应消息携带心跳包响应数据包,该心跳包响应数据包中包含有第二令牌。

此外,心跳包响应数据包中还可以包含有系统控制载荷,该系统控制载荷是服务器进行控制操作的消息以及指令信息。

115、服务器接收终端通过加密方式发送的第一业务请求消息;

终端在接收到服务器发送的心跳包响应数据包之后,就能够确定终端和服务器之间是相互连接着的,接着终端就可以通过加密方式向服务器发送第一业务请求消息,该第一业务请求消息中携带第一业务请求数据包,该第一业务请求数据包中携带第二令牌。

116、服务器通过加密方式向终端发送第一业务响应消息;

服务器在接收到第一业务请求数据包中的第二令牌之后,就可以通过加密方式向终端发送第一业务响应数据消息,该第一业务响应数据消息中携带第一业务响应数据包,该第一业务响应数据包中包含有第一业务消息。这样,终端就可以开始处理第一业务消息。

在本申请实施例中,由于服务器在创建会话标识和第一令牌后,只会将第一令牌通过加密方式发送给终端,而不会将会话标识发送给终端,而且,在终端将包含有第一令牌的心跳包请求数据包通过加密方式发送给服务器之后,服务器又会创建第二令牌,并通过加密方式将包含有第二令牌的心跳包响应数据包发送给终端,接着终端就可以向服务器通过加密方式发送第一业务请求消息,该第一业务请求消息携带的第一业务请求数据包中包含有第二令牌,而服务器在向终端通过加密方式发送第一业务响应消息时,该第一业务响应消息携带的第一业务响应数据包中包含有第一业务消息,由此可知,本申请实施例是服务器通过不断更换令牌的数值,从而不断更换服务器和终端之间用于识别对方身份的唯一识别码,并能够通过加密方式保护作为唯一识别码的令牌的动态数值,由此能够双重保护终端和服务器之间进行信息交互的信息安全,以防止恶意的攻击方轻易获取到不断更换的密钥而伪装成合法用户劫持服务器和终端之间的会话信息,提升了终端和服务器之间信息交互的安全性。

进一步地,基于上述图1所示的实施例,在图2所示的实施例中加入了服务器可以重置会话标识的超时定时器的步骤。本申请实施例中防止会话劫持的方法的另一个实施例包括:

201、服务器接收终端发送的登录请求消息;

202、服务器验证用户帐号以及密码是否有效;

203、服务器自动创建会话标识;

204、服务器创建随机的作为唯一标识符的第一令牌;

205、服务器建立第一令牌与会话标识的第一映射关系;

206、服务器建立用户信息与会话标识的用户身份识别映射关系;

207、服务器通过加密方式向终端发送登录响应消息;

208、服务器通过加密方式接收终端发送的心跳请求消息

209、服务器用第一令牌查找第一映射关系,得到会话标识;

210、服务器判断用会话标识查找是否存在用户身份识别映射关系;

211、服务器确定对终端的用户信息认证成功;

212、服务器创建第二令牌;

213、服务器建立第二令牌与会话标识的第二映射关系;

本实施例中,步骤201至步骤213与前述图1所示的实施例中的步骤101至步骤113类似,具体此处不再赘述。

214、服务器重置会话标识的超时定时器;

服务器在建立好第二令牌与会话标识的第二映射关系之后,为了准备开始执行服务器和终端之间随后的业务信息的交互的计时,可以重置会话标识的超时定时器。

215、服务器通过加密方式向终端发送心跳包响应消息;

本实施例中,服务器在重置会话标识的超时定时器之后,在通过加密方式向终端发送心跳包响应消息的同时,会话标识的超时定时器可以开始计时,当计时的时长达到超时定时器的时长阈值时,则本次会话就会被中断。如果终端需要继续与服务器进行信息交互,则终端需要再次发送登录请求消息给服务器。

216、服务器接收终端通过加密方式发送的第一业务请求消息;

217、服务器通过加密方式向终端发送第一业务响应消息;

本实施例中,步骤216至步骤217与前述图1所示的实施例中的步骤115至步骤116类似,具体此处不再赘述。

218、服务器接收终端通过加密方式发送的第二业务请求消息;

终端在根据第一业务消息执行完第一业务后,还可以继续通过加密方式向服务器发送第二业务请求消息,请求执行第二业务。

需要说明的是,此时终端可以通过第二业务请求消息向服务器发送第二业务请求数据包,该第二业务请求数据包中仍然包含有第二令牌。

219、服务器判断超时定时器的时长是否达到预设时长阈值;

本实施例中,服务器判断重置后的超时定时器的时长是否达到超时定时器的预设时长阈值,若是,则执行220,若否,则执行221;

220、服务器创建新的会话标识以及第三令牌;

当服务器确定超时定时器重置后的时长达到超时定时器的预设时长阈值时,则服务器就无法发送包含有第二业务消息的第二业务响应数据包给终端,此种情况下,如果终端就需要重新发送登录请求消息给服务器,服务器再次创建新的会话标识(例如,第二会话标识)和令牌的数值(例如,第三令牌),用于终端和服务器之间的第二会话。而在第二会话中,终端和服务器之间不需要再次发送心跳包请求消息和心跳包响应消息,只需发送第二业务请求消息和第二业务响应消息即可。

221、服务器通过加密方式向终端发送第二业务响应消息。

当服务器确定超时定时器重置后的时长未达到超时定时器的预设时长阈值时,则服务器就可以将携带有第二业务响应数据包的第二业务响应消息通过加密方式发送给终端,该第二业务响应数据包中包含有第二业务消息以及第二数值,此种情况下,终端就可以开始根据第二业务响应数据包中包含的第二业务消息执行第二业务。

需要说明的是,本实施例中的加密方式可以是通过加密协议实现,也可以通过加密算法实现,具体此处不做限定。

在本申请实施例中,由于可以通过设置在服务器中的会话标识的超时定时器,在服务器向终端发送心跳包响应消息之时开始计时,当会话时长达到预设时长阈值时,服务器可以重新创建另一个会话标识以及新的令牌数值,并建立该另一个会话标识与新的令牌数值之间的映射关系,这样当终端的用户发送新的业务请求信息时,能够在终端和服务器之间使用新的会话标识和新的令牌数值,因此能够进一步防止攻击方攫取到更新的令牌数值,从而劫持双方的会话信息,进一步提升了终端和服务器之间会话信息的安全性。

由于前述图1和图2中的实施例中的加密方式可以通过加密协议和加密算法实现,以下就这两种具体的加密方式进行详细描述。

参见图3至图6,图3至图6为本申请实施例中防止会话劫持的方法的另一个实施例。需要说明的是,图3至图6所示的实施例中的加密方式使用了加密协议,因此在终端和服务器之间传输数据时可以直接用明文传输,而加密协议则是二者之间的加密通道,从而保护用明文传输的数据。

需要说明的是,加密协议可以是https协议、ssl协议或者tls协议,具体此处不做限定。

此外,本申请实施例中的步骤301至步骤306与前述图1的实施例中的步骤101至步骤106、前述图2的实施例中的步骤201至步骤206类似,步骤309至步骤313与前述图1的实施例中的步骤109至步骤113、前述图2的实施例中的步骤209至213类似,具体此处不做详述。而步骤307、308、315至317中的描述仅是将前述图1中的步骤107、108、114至116,以及前述图中的步骤207、208、214至216中的加密方式以下位概念的方式描述为加密协议,因此此处也不再赘述。

本申请实施例中防止会话劫持的方法的另一个实施例包括:

301、终端向服务器发送登录请求消息;

本实施例中,步骤301至步骤307参见图4,图4为本申请实施例中防止会话劫持的方法的另一个信息交互示意图。

302、服务器验证用户账号以及密码是否有效;

303、服务器自动创建会话标识;

本实施例中,假设服务器创建的会话标识为sid1。

304、服务器创建随机的作为唯一标识符的第一令牌;

本实施例中,假设服务器创建的令牌的数值为t0,该t0即为第一令牌。

305、服务器建立第一数值与会话标识的第一映射关系;

本实施例中,服务器建立t0与sid之间的映射关系。

306、服务器建立用户信息与会话标识的用户身份识别映射关系;

本实施例中,服务器建立终端的用户信息与sid1的映射关系。

307、服务器通过加密协议向终端发送登录响应消息;

本实施例中,登录响应数据包中包含有时间戳,需要说明的是,时间戳是一个精确记录当前时刻值的标记,用于标注数据包发送的时间,也可用于计算网络通信延迟以及判定数据包发送的先后顺序。例如,图3中的时间戳可以是“2018092715281234”,该数值的含义是2018年9月27日15点28分1秒2毫秒3微秒4纳秒。

308、终端通过加密协议向服务器发送心跳包请求消息;

本实施例中,步骤308至步骤315参见图5,图5为本申请实施例中防止会话劫持的方法的另一个信息交互示意图。

本实施例中,心跳包请求消息携带的心跳包请求数据包中包含有令牌数值t0。而在心跳包请求包中的时间戳,例如可以是“2018092715292345”,该数值的含义是2018年9月27日15点29分1秒3毫秒4微妙5纳秒,后述步骤中的有关时间戳的变化以及标示的含义与步骤207与步骤208中的有关时间戳的说明类似,后续将不再对时间戳一一赘述。

309、服务器用第一数值查找第一映射关系,得到会话标识;

本实施例中,第一映射关系即是会话标识sid1与令牌数值t0之间的映射关系。

310、服务器判断用会话标识查找是否存在用户身份识别映射关系;

本实施例中,用户身份识别映射关系即是会话标识sid1与终端的用户信息之间的映射关系。

311、服务器确定对终端的用户信息认证成功;

312、服务器创建第二令牌;

本实施例中,第二令牌为t1。

313、服务器建立第二令牌与会话标识的第二映射关系;

本实施例中,第二映射关系即是会话标识sid1与令牌t1之间的映射关系。

314、服务器重置会话标识的超时定时器;

315、服务器通过加密协议向终端发送心跳包响应消息;

本实施例中,心跳包响应消息携带的心跳包响应数据包中包含有令牌数值t1。

316、终端通过加密方式服务器发送第一业务请求消息;

本实施例中,步骤316和步骤317请参见图6,图6为本申请实施例中防止会话劫持的方法的另一个信息交互示意图。

本实施例中,第一业务请求消息携带的第一业务请求数据包中包含有令牌的数值t1。

317、服务器通过加密方式向终端发送第一业务响应消息。

本申请实施例中,服务器是通过不断更换令牌的数值,从而不断更换服务器和终端之间用于识别对方身份的唯一识别码,并能够通过加密协议保护作为唯一识别码的令牌的动态数值,由此能够双重保护终端和服务器之间进行信息交互的信息安全,以防止恶意的攻击方轻易获取到不断更换的密钥而伪装成合法用户劫持服务器和终端之间的会话信息,提升了终端和服务器之间信息交互的安全性。

以上对服务器和用户设备之间通过加密协议进行信息交互的实施例进行了描述,对服务器和用户设备之间通过加密算法进行信息交互的实施例进行描述。

需要说明的是,本实施例中的加密算法可以是对称加密算法,也可以是异或加密算法或数据加密算法,具体此处不做限定。

需要说明的是,本实施例中的步骤701至706与前述图1中的步骤101至106、前述图2中的步骤201至206、以及前述图3中的步骤301至306类似,步骤713至717与前述图1中的步骤109至113、前述图2中的步骤209至213、前述图3中的步骤309至313类似,步骤718至与前述图2中的步骤214至、前述图3中的步骤314至类似,此处不再赘述。

参见图7,图7为本申请实施例中防止会话劫持的方法的另一个实施例。本申请实施例中防止会话劫持的方法的另一个实施例包括:

701、终端向服务器发送登录请求信息;

本实施例中,步骤701至步骤709参见图8,图8为本申请实施例中防止会话劫持的方法的另一个信息交互示意图。

702、服务器验证用户账号以及密码是否有效;

703、服务器自动创建会话标识;

704、服务器创建随机的作为唯一标识符的第一令牌;

705、服务器建立第一数值与会话标识的第一映射关系;

706、服务器建立用户信息与会话标识的用户身份识别映射关系;

707、服务器用用户帐号作为初始加密密钥,通过加密算法对登录响应数据包进行加密;

本实施例中,终端和服务器首次连接时,二者之间并没有建立起可用作身份认证的令牌,由于首次登录时,终端知道自己的用户帐号以及密码,服务器验证用户帐号以及密码有效时,双方共同知道的有效信息即为用户帐号和密码,因此服务器以用户帐号作为首次加密数据的密钥。终端首次解密数据的密钥也同样是用户帐号。

708、服务器向终端发送加密后的登录响应消息;

本实施例中,该登录响应消息携带登录响应数据包,该登录响应数据包中包含有第一令牌,即t0。

709、终端用用户帐号作为初始解密密钥,对登录响应数据包进行解密;

本实施例中,该登录响应数据包中包含有令牌的数值t0。

710、终端用第一令牌作为加密密钥,通过加密算法对心跳包请求数据包进行加密;

本实施例中,步骤710至步骤721参见图9,图9为本申请实施例中防止会话劫持的方法的另一个信息交互示意图。

本实施例中,心跳包请求数据包中包含有第一令牌,即t0。

711、终端向服务器发送心跳包请求消息;

本实施例中,心跳包请求消息携带心跳包请求数据包。

712、服务器使用第一令牌对心跳包请求数据包进行解密;

本实施例中,服务器对接收到的心跳包请求数据包进行解密的解密密钥为第一令牌,即t0。

713、服务器用第一令牌查找第一映射关系,得到会话标识;

714、服务器判断用会话标识查找是否存在用户身份识别映射关系;

715、服务器确定对终端的用户信息认证成功;

716、服务器创建第二令牌;

本实施例中,可以假设第二令牌为t1。

717、服务器建立第二令牌与会话标识的第二映射关系;

718、服务器重置会话标识的超时定时器;

719、服务器用第一令牌作为加密密钥,通过加密算法对心跳包响应数据包进行加密;

本实施例中,心跳包响应数据包中包含有第二令牌,即t1。

720、服务器向终端发送心跳包响应消息;

本实施例中,心跳包响应消息携带由第一令牌t0加密后的心跳包响应数据包。

721、终端用第一令牌作为解密密钥,对心跳包响应消息进行解密;

722、终端用第二令牌作为加密密钥,通过加密算法对第一业务请求数据包进行加密;

本实施例中,步骤722至步骤725参见图10,图10为本申请实施例中防止会话劫持的方法的另一个信息交互示意图。

723、终端向服务器发送第一业务请求消息;

本实施例中,第一业务请求消息携带有令牌的第二数值(即第二令牌)t1加密的第一业务请求数据包。

724、服务器用第二令牌作为加密密钥,通过加密算法对第一业务响应数据包进行加密;

本实施例中,第一业务响应数据包中包含有第一业务数据。

725、服务器向终端发送第一业务响应消息。

本申请实施例中,由于服务器在创建会话标识和第一令牌后,只会将包含有第一令牌的登录响应消息通过初始加密密钥为用户帐号的加密算法发送给终端,而不会将会话标识发送给终端,而且,在终端用用户帐号作为初始解密密钥对登录响应消息解密,并将包含有第一令牌的心跳包请求数据包用第一令牌作为加密密钥发送给服务器之后,服务器又会创建第二令牌,并仍然用第一令牌作为加密密钥将包含有第二令牌的心跳包响应数据包发送给终端,接着终端用第一令牌作为解密密钥,对心跳包响应消息进行解密后,就可以向服务器用第二令牌作为新的加密密钥发送第一业务请求消息,该第一业务请求消息携带的第一业务请求数据包中包含有第二令牌,而服务器则用第二令牌作为加密密钥向终端发送第一业务响应消息,该第一业务响应消息携带的第一业务响应数据包中包含有第一业务数据,由此可知,本申请实施例是服务器通过不断更换令牌的数值,从而不断更换服务器和终端之间用于识别对方的唯一识别码,并能够通过加密算法将作为唯一识别码的令牌的动态数值作为终端和服务器之间进行信息交互的加密密钥和解密密钥,由此能够双重保护终端和服务器之间进行信息交互的信息安全,以防止恶意的攻击方轻易获取到不断更换的密钥而伪装成合法用户劫持服务器和终端之间的会话信息,提升了终端和服务器之间信息交互的安全性。

上面对本申请实施例中防止会话劫持的方法进行了详细描述,下面对本申请实施例中的服务器进行描述。请参阅图11,图11为本申请实施例中服务器的一个实施例。

本申请实施例中服务器的一个实施例包括:

第一接收单元1101,用于接收终端发送的登录请求消息,该登录请求消息携带终端的用户帐号以及密码;

验证单元1102,用于验证终端的用户帐号以及密码是否有效;

第一创建单元1103,用于当确认用户帐号以及密码有效时,自动创建会话标识;

第二创建单元1104,用于创建随机的作为唯一标识符的第一令牌;

第一建立单元1105,用于建立第一令牌与会话标识的第一映射关系;

第二建立单元1106,用于建立终端的用户信息与会话标识的用户身份识别映射关系;

第一发送单元1107,用于通过加密方式向所述终端发送登录响应消息,所述登录响应消息携带登录响应数据包,所述登录响应数据包中包含有所述第一令牌;

第二接收单元1108,用于通过加密方式接收终端发送的心跳包请求消息,该心跳包请求消息携带心跳包请求数据包,该心跳包请求数据包中包含有第一令牌;

第一查找单元1109,用于用第一令牌查找第一映射关系,得到会话标识;

判断单元1110,用于判断用会话标识查找是否存在用户身份识别映射关系;

确定单元1111,用于当确定用会话标识查找到存在用户身份识别映射关系,则确定对终端的用户信息认证成功;

第三创建单元1112,用于创建第二令牌;

第三建立单元1113,用于建立第二令牌与会话标识的第二映射关系;

第二发送单元1114,用于通过加密方式向终端发送心跳包响应消息,该心跳包响应消息携带心跳包响应数据包,该心跳包响应数据包中包含有第二令牌;

第三接收单元1115,用于接收终端通过加密方式发送的第一业务请求消息,该第一业务请求消息携带第一业务请求数据包,该第一业务请求数据包中包含有第二令牌;

第三发送单元1116,用于通过加密方式向终端发送第一业务响应消息,该第一业务响应消息中携带业务响应数据包,该第一业务响应数据包中包含有第一业务消息。

本实施例中,服务器还包括:

重置单元1117,用于重置会话标识的超时定时器;

第四接收单元1118,用于接收终端通过加密方式发送的第二业务请求消息,该第二业务请求消息携带第二令牌;

第四创建单元1119,用于当确定超时定时器的时长达到预设时长阈值时,创建新的会话标识以及第三令牌,该新的会话标识与该第三令牌相对应;

第四发送单元1120,用于通过加密方式向终端发送登录响应消息,该登录响应消息携带第三令牌。

需要说明的是,本实施例中,加密方式可以为加密协议,也可以为加密算法,具体此处不做限定。

本实施例中,第一发送单元1107具体用于用所述用户帐号作为初始加密密钥,通过加密算法对登录响应数据包进行加密,所述登录响应数据包中包含有所述第一令牌;向所述终端发送所述登录响应消息,所述登录响应消息携带用所述初始加密密钥加密的登录响应数据包,所述登录响应数据包中包含有所述第一令牌;

第二接收单元1108具体用于接收所述终端发送的所述心跳包请求消息,所述心跳包请求消息携带用所述第一令牌加密的心跳包请求数据包;使用所述第一令牌对所述心跳包请求数据包进行解密;

第二发送单元1114具体用于用所述第一令牌作为加密密钥,通过所述加密算法对心跳包响应数据包进行加密,所述心跳包响应数据包中包含有所述第二令牌;向所述终端发送所述心跳包响应消息,所述心跳包响应消息携带用所述第一令牌加密的所述心跳包响应数据包;

第三接收单元1115具体用于接收所述终端发送的所述第一业务请求消息,所述第一业务请求消息携带用所述第二令牌加密的业务请求数据包;使用所述第二令牌对所述第一业务请求数据包进行解密;

第三发送单元1116具体用于用所述第二令牌作为所述加密密钥,通过所述加密算法对所述第一业务响应数据包进行加密;向所述终端发送所述第一业务响应消息,所述第一业务响应消息携带用所述第二令牌加密的所述第一业务响应数据包,所述第一业务响应数据包中包含有第一业务消息以及所述第二令牌。

本申请实施例中,服务器通过不断更换令牌的数值,从而不断更换服务器和终端之间用于识别对方身份的唯一识别码,并能够通过加密方式保护作为唯一识别码的令牌的动态数值,由此能够双重保护终端和服务器之间进行信息交互的信息安全,以防止恶意的攻击方轻易获取到令牌的数值而伪装成合法用户劫持服务器和终端之间的会话信息,提升了终端和服务器之间信息交互的安全性。

请参阅图12,本申请实施例中服务器的另一个实施例包括:

该服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessingunits,cpu)1201(例如,一个或一个以上处理器)和存储器1205,该存储器1205中存储有一个或一个以上的应用程序或数据。

其中,存储器1205可以是易失性存储或持久存储。存储在存储器1205的程序可以包括一个或一个以上模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1201可以设置为与存储器1205通信,在服务器1200上执行存储器1205中的一系列指令操作。

服务器1200还可以包括一个或一个以上电源1202,一个或一个以上有线或无线网络接口1203,一个或一个以上输入输出接口1204,和/或,一个或一个以上操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等等。

本申请实施例中获取服务器1200中的中央处理器所执行的流程与前述图1至图10所示的实施例中描述的方法流程类似,此处不再赘述。

本申请实施例的有益效果是,服务器1200中的中央处理器1201通过不断更换令牌的数值,从而不断更换处理器和终端之间用于识别对方身份的唯一识别码,并能够通过加密方式保护作为唯一识别码的令牌的动态数值,由此能够双重保护终端和服务器1200之间进行信息交互的信息安全,以防止恶意的攻击方轻易获取到不断更换的密钥而伪装成合法用户劫持服务器和终端之间的会话信息,提升了终端和服务器之间信息交互的安全性。

上面对本申请实施例中服务器的实施例进行了描述,下面对本申请实施例中的终端进行描述。请参阅图13,图13为本申请实施例中终端的一个实施例。

本申请实施例中终端的一个实施例包括:

第一发送单元1301,用于向服务器发送登录请求消息,该登录请求消息携带登录请求数据包,该登录请求数据包中包含有终端的用户帐号以及密码;

第一接收单元1302,用于通过加密方式接收所述服务器发送的登录响应消息,该登录响应消息携带登录响应数据包,该登录响应数据包中包含有与会话标识对应的第一令牌,该会话标识与所述用户信息相对应;

第二发送单元1303,用于通过所述加密方式向服务器发送心跳包请求消息,该心跳包请求消息携带心跳包请求数据包,该心跳包请求数据包中包含有第一令牌;

第二接收单元1304,用于通过所述加密方式接收服务器发送的心跳包响应消息,该心跳包响应消息携带心跳包响应数据包,该心跳包响应数据包中包含有与会话标识对应的第二令牌;

第三发送单元1305,用于通过加密方式向服务器发送第一业务请求消息,该第一业务请求消息携带第一业务请求数据包,该第一业务请求数据包中包含有第二令牌;

第三接收单元1306,用于通过加密方式接收服务器发送的第一业务响应消息,该第一业务响应消息中携带业务响应数据包,该第一业务响应数据包中包含有第一业务消息以及第二令牌。

本实施例中,加密方式可以为加密协议,也可以为加密算法,具体此处不做限定。

本实施例中,第一接收单元1302还具体用于接收服务器发送的加密后的登录响应消息;用用户帐号作为初始解密密钥,对登录响应消息进行解密,该登录响应消息携带登录响应数据包,该登录响应数据包中包含有第一令牌;

第二发送单元1303还具体用于用第一令牌作为加密密钥,通过加密算法对心跳包请求数据包进行加密;向服务器发送心跳包请求消息,该心跳包请求消息携带由第一令牌加密的心跳包请求数据包;

第二接收单元1304还具体用于接收服务器发送的心跳包响应消息;用第一令牌作为解密密钥,对心跳包响应消息进行解密,该心跳包响应消息携带心跳包响应数据包,该心跳包响应数据包中包含有第二数值;

第三发送单元1305还具体用于用第二令牌作为加密密钥,通过加密算法对第一业务请求数据包进行加密;向服务器发送第一业务请求消息,该第一业务请求消息携带由第二令牌加密的第一业务请求数据包;

第三接收单元1306还具体用于接收服务器发送的第一业务响应消息;

终端用第二令牌作为加密密钥,对第一业务响应消息进行解密,第一业务响应消息携带第一业务响应数据包,该第一业务响应数据包中包含有第一业务消息。

本申请实施例的有益效果是,终端通过不断更新令牌的数值,从而不断更换服务器和终端之间用于识别对方身份的唯一识别码,并能够通过加密方式保护作为唯一识别码的令牌的动态数值,由此能够双重保护终端和服务器之间进行信息交互的信息安全,以防止恶意的攻击方轻易获取到不断更换的密钥而伪装成合法用户劫持服务器和终端之间的会话信息,提升了终端和服务器之间信息交互的安全性。

请参阅图14,本申请实施例中终端的另一个实施例包括:

该终端1400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessingunits,cpu)1401(例如,一个或一个以上处理器)和存储器1405,该存储器1405中存储有一个或一个以上的应用程序或数据。

其中,存储器1405可以是易失性存储或持久存储。存储在存储器1405的程序可以包括一个或一个以上模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1301可以设置为与存储器1405通信,在终端1400上执行存储器1405中的一系列指令操作。

终端1400还可以包括一个或一个以上电源1402,一个或一个以上有线或无线网络接口1403,一个或一个以上输入输出接口1404,和/或,一个或一个以上操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等等。

本申请实施例中获取终端1400中的中央处理器所执行的流程与前述图1至图10所示的实施例中描述的方法流程类似,此处不再赘述。

本申请实施例中,终端1400的中央处理器1401通过不断更换令牌的数值,从而不断更换服务器和终端之间用于识别对方身份的唯一识别码,并能够通过加密方式保护作为唯一识别码的令牌的动态数值,由此能够双重保护终端1400和服务器之间进行信息交互的信息安全,以防止恶意的攻击方轻易获取到不断更换的密钥而伪装成合法用户劫持服务器和终端之间的会话信息,提升了终端和服务器之间信息交互的安全性。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

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