一种访问请求处理方法及装置的制作方法

文档序号:7887316阅读:155来源:国知局
专利名称:一种访问请求处理方法及装置的制作方法
技术领域
本发明涉及网络技术,特别涉及一种访问请求处理方法以及一种访问请求处理装置。
背景技术
现有基于浏览器/服务器(B/UBiOWser/Server)架构的应用程序中,当客户端接收到用户的访问指令时,会按照以下方式进行处理:I)客户端向服务器发送访问请求;2)服务器根据接收到的访问请求中携带的客户端IP和访问时间等信息以及加密算法生成密文串,返回给客户端;3)客户端再次向服务器发送访问请求,其中同样需要携带有客户端IP和访问时间等,同时还需要携带有所述密文串;4)服务器验证接收到的密文串是否合法,如果是,则向客户端返回访问结果,否贝U,拒绝本次访问。后续,如果客户端再次接收到用户的访问指令,则重复上述步骤I) 4)。步骤2)中,服务器可利用客户端IP、访问时间以及消息摘要算法5 (MD5,MessageDigest Algorithm)来生成密文串。由于服务器每次接收到的访问请求中携带的访问时间均不相同,因此即使针对同一客户端,每次生成的密文串也会不同。在实际应用中,某些情况下,比如每访问一次则会获取到一定数量的虚拟物品等,那么对于某些用户来说,为获取这些物品,但又不想一次次地发出访问指令,即会在客户端中安装某种代码或软件,其作用是当用户发出一次访问指令后,后续客户端即会自动地不断向服务器发起访问请求。具体来说,即当用户发出访问指令,执行完步骤I)和2)后,客户端会自动地不断重复执行步骤3) 4),这对于其它正常操作的用户来说明显是不公平的。虽然客户端自动地不断重复执行步骤3) 4)的过程在实际应用中会存在一定的问题,即客户端只能从服务器侧获取到一个密文串,而该密文串在使用一次后即会失效,但是,现有服务器生成密文串的方式通常都是比较固定的,如之前所述的利用客户端IP、访问时间以及MD5算法来生成密文串,一旦该生成方式被破解,而客户端IP和访问时间又是已知的,那么客户端即可自己来生成每次访问所需的密文串。通常,将客户端自己生成的密文串称为伪造的密文串,将携带有伪造的密文串的访问请求称为伪造请求,而对于服务器来说,需要有一种方式来帮助其提高正确识别出伪造请求的能力。

发明内容
有鉴于此,本发明提供了一种访问请求处理方法和一种访问请求处理装置,能够提高服务器正确识别出伪造请求的能力。
为达到上述目的,本发明的技术方案是这样实现的:一种访问请求处理方法,包括:当接收到客户端发送来的未携带有密文串的访问请求X时,服务器生成密文串,返回给所述客户端;访问请求X为所述客户端接收到用户的访问指令后发起的访问请求;当接收到所述客户端发送来的携带有密文串的访问请求Y时,所述服务器确定访问请求Y中携带的密文串是否合法,如果否,则拒绝本次访问,如果是,则进一步确定访问请求Y中携带的用户行为数据是否合法,如果是,则向所述客户端返回访问结果,否则,拒绝本次访问;所述用户行为数据为所述客户端采集到的从用户进入发起访问页面开始到向所述客户端发出访问指令这一时间段内的行为数据。一种访问请求处理装置,包括:第一处理模块,用于当接收到客户端发送来的未携带有密文串的访问请求X时,生成密文串,返回给所述客户端;访问请求X为所述客户端接收到用户的访问指令后发起的访问请求;第二处理模块,用于当接收到所述客户端发送来的携带有密文串的访问请求Y时,确定访问请求Y中携带的密文串是否合法,如果否,则拒绝本次访问,如果是,则进一步确定访问请求Y中携带的用户行为数据是否合法,如果是,则向所述客户端返回访问结果,否则,拒绝本次访问;所述用户行为数据为所述客户端采集到的从用户进入发起访问页面开始到向所述客户端发出访问指令这一时间段内的行为数据。可见,采用本发明所述方案,只有当接收到的访问请求中携带的密文串和用户行为数据均合法时,服务器才会向客户端返回访问结果,否则,即会拒绝本次访问,即认为访问请求是伪造请求,由于用户行为数据通常是很难伪造的,因此,相比于现有技术,本发明所述方案可以较好地提高服务器正确识别出伪造请求的能力。


图1为本发明访问请求处理方法实施例的流程图。图2为本发明访问请求处理装置实施例的组成结构示意图。
具体实施例方式针对现有技术中存在的问题,本发明中提出一种改进后的访问请求处理方案。为使本发明的技术方案更加清楚、明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。图1为本发明访问请求处理方法实施例的流程图。如图1所示,包括以下步骤:步骤11:当接收到客户端发送来的未携带有密文串的访问请求X时,服务器生成密文串,并返回给客户端;访问请求X为客户端接收到用户的访问指令后发起的访问请求。当接收到用户的访问指令后,客户端会向服务器发送访问请求,其中可携带有客户端IP和访问时间等信息;服务器接收到该访问请求后,可根据其中携带的客户端IP和访问时间等信息以及加密算法生成密文串,并将生成的密钥串返回给客户端。步骤12:当接收到客户端发送来的携带有密文串的访问请求Y时,服务器确定访问请求Y中携带的密文串是否合法,如果否,则拒绝本次访问,如果是,则进一步确定访问请求Y中携带的用户行为数据是否合法,如果是,则向客户端返回访问结果,否则,拒绝本次访问;用户行为数据为客户端采集到的从用户进入发起访问页面开始到向客户端发出访问指令这一时间段内的行为数据。需要说明的是,为区分未携带有密文串的访问请求以及携带有密文串的访问请求,本发明中,将未携带有密文串的访问请求称为访问请求X,将携带有密文串的访问请求称为访问请求Y。用户需要进入到发起访问页面,才能发起访问,从用户进入到发起访问页面开始,直到用户向客户端发出访问指令,客户端需要采集用户在这一时间段内的用户行为数据,比如,用户鼠标移动轨迹,如何采集为现有技术。在实际应用中,当用户进入发起访问页面后,其鼠标会停留在页面中的某一位置,该位置可称为起始位置,当用户需要向客户端发出访问指令时,通常会点击页面中的某一按钮,那么,鼠标从起始位置移动到按钮位置的轨迹即为鼠标的移动轨迹。服务器接收到访问请求Y后,首先确定其中携带的密文串是否合法,如何确定密文串是否合法为现有技术,如果否,则拒绝本次访问,如果是,则进一步确定其中携带的用户行为数据是否合法,如果是,则向客户端返回访问结果,如果否,则拒绝本次访问。如何验证访问请求Y中携带的用户行为数据是否合法可根据实际需要而定,比如:当用户行为数据为用户鼠标移动轨迹时,可计算访问请求Y中携带的用户鼠标移动轨迹与预先保存的用户鼠标移动轨迹模型的偏差量,如果该偏差量小于预定阈值,则确定访问请求Y中携带的用户行为数据合法,否则,不合法。用户鼠标移动轨迹模型可通过一定数量的样本训练得到,如何得到为现有技术,同样,如何计算偏差量也为现有技术,另外,所述阈值的具体取值可根据实际需要而定。可以看出,正常情况下(即不存在伪造行为),当用户向客户端发起访问指令后,客户端会向服务器发送访问请求X,相应地,服务器会生成一个密文串,返回给客户端;之后,客户端向服务器发送访问请求Y,其中携带有密文串和用户行为数据,如果均合法,则月艮务器会向客户端返回访问结果;再之后,如果客户端再次接收到用户的访问指令,则会重复上述发送访问请求X和访问请求Y的过程。但是,如果需要由客户端来伪造访问请求,那么,上述过程即变为:当客户端接收到用户的访问指令后,向服务器发送访问请求X,相应地,服务器会生成一个密文串,返回给客户端;之后,客户端向服务器发送访问请求Y,其中携带有密文串和用户行为数据,该用户行为数据是客户端真实采集到的用户行为数据,如果均合法,则服务器会向客户端返回访问结果;再之后,客户端再次向服务器发送访问请求Y,其中携带有伪造的密文串以及伪造的用户行为数据,类似地,后续客户端每次向服务器发送访问请求Y,均需要伪造一个新的密文串和一个新的用户行为数据,通常来说,用户行为数据是很难伪造的,一旦发现其不合法,服务器即可拒绝相应的访问。在实际应用中,也有可能出现这种情况,即客户端不需要每次均伪造一个新的用户行为数据,而是保存一个或多个真实采集到的用户行为数据(通常用完之后即不再保存),这样,在后续每次发送伪造的访问请求Y时,可分别选用所保存的真实采集到的用户行为数据中的一个,当然,如果只保存了一个,则只能一直用这一个,这样,当服务器接收到这类访问请求Y时,就会认为其中的用户行为数据合法,从而将伪造请求错认为合法请求。
但实际来说,通常,鼠标每次的初始位置都是不同的,而且每次从初始位置移动到按钮位置的轨迹也都是不同的,因此,正常情况下,客户端每次发送给服务器的访问请求Y中携带的用户行为数据通常都是不同的。这样,针对上述情况,即可采用以下处理方式:在每经过预定时长后,即针对同一客户端在该时长内所发送的访问请求Y进行一次检查,如果发现大于N个访问请求Y中携带的用户行为数据均相同,则将这些访问请求Y对应的访问结果无效掉,N为正整数,比如,将用户获取到的虚拟物品收回等。所述预定时长的具体取值以及N的具体取值均可根据实际需要而定。比如,用户每成功进行一次访问,则会奖励其10个虚拟金币,并假设用户通过客户端发送了 4个伪造请求,其中携带的用户行为数据均相同,且最终均获取到了奖励,那么,则可收回奖励给用户的40个虚拟金币。至此,即完成了关于本发明方法实施例的介绍。基于上述介绍,图2为本发明访问请求处理装置实施例的组成结构示意图。如图2所示,包括:第一处理模块,用于当接收到客户端发送来的未携带有密文串的访问请求X时,生成密文串,返回给客户端;访问请求X为客户端接收到用户的访问指令后发起的访问请求;第二处理模块,用于当接收到客户端发送来的携带有密文串的访问请求Y时,确定访问请求Y中携带的密文串是否合法,如果否,则拒绝本次访问,如果是,则进一步确定访问请求Y中携带的用户行为数据是否合法,如果是,则向客户端返回访问结果,否则,拒绝本次访问;用户行为数据为客户端采集到的从用户进入发起访问页面开始到向客户端发出访问指令这一时间段内的行为数据。其中,用户行为数据可包括:用户鼠标移动轨迹。相应地,第二处理模块计算访问请求Y中携带的用户鼠标移动轨迹与预先保存的用户鼠标移动轨迹模型的偏差量,如果该偏差量小于预定阈值,则确定访问请求Y中携带的用户行为数据合法,否则,不合法。第二处理模块还可进一步用于,每经过预定时长,即针对同一客户端在该时长内所发送的访问请求Y进行一次检查,如果发现大于N个访问请求Y中携带的用户行为数据均相同,则将这些访问请求Y对应的访问结果无效掉,N为正整数。在实际应用中,图2所示装置通常为服务器。图2所示装置实施例的具体工作流程请参照图1所示方法实施例中的相应说明,此处不再赘述。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
权利要求
1.一种访问请求处理方法,其特征在于,包括: 当接收到客户端发送来的未携带有密文串的访问请求X时,服务器生成密文串,返回给所述客户端;访问请求X为所述客户端接收到用户的访问指令后发起的访问请求; 当接收到所述客户端发送来的携带有密文串的访问请求Y时,所述服务器确定访问请求Y中携带的密文串是否合法,如果否,则拒绝本次访问,如果是,则进一步确定访问请求Y中携带的用户行为数据是否合法,如果是,则向所述客户端返回访问结果,否则,拒绝本次访问;所述用户行为数据为所述客户端采集到的从用户进入发起访问页面开始到向所述客户端发出访问指令这一时间段内的行为数据。
2.根据权利要求1所述的方法,其特征在于,所述用户行为数据包括:用户鼠标移动轨迹。
3.根据权利要求2所述的方法,其特征在于,所述确定访问请求Y中携带的用户行为数据是否合法包括: 计算访问请求Y中携带的用户鼠标移动轨迹与预先保存的用户鼠标移动轨迹模型的偏差量,如果该偏差量小于预定阈值,则确定访问请求Y中携带的用户行为数据合法,否贝1J,不合法。
4.根据权利要求1、2或3所述的方法,其特征在于,该方法进一步包括: 每经过预定时长,针对同一客户端在该时长内所发送的访问请求Y进行一次检查,如果发现大于N个访问请求Y中携带的用户行为数据均相同,则将这些访问请求Y对应的访问结果无效掉,N为正整数。
5.一种访问请求处理装置,其特征在于,包括: 第一处理模块,用于当接收到客户端发送来的未携带有密文串的访问请求X时,生成密文串,返回给所述客户端;访问请求X为所述客户端接收到用户的访问指令后发起的访问请求; 第二处理模块,用于当接收到所述客户端发送来的携带有密文串的访问请求Y时,确定访问请求Y中携带的密文串是否合法,如果否,则拒绝本次访问,如果是,则进一步确定访问请求Y中携带的用户行为数据是否合法,如果是,则向所述客户端返回访问结果,否贝U,拒绝本次访问;所述用户行为数据为所述客户端采集到的从用户进入发起访问页面开始到向所述客户端发出访问指令这一时间段内的行为数据。
6.根据权利要求5所述的装置,其特征在于,所述用户行为数据包括:用户鼠标移动轨迹。
7.根据权利要求6所述的装置,其特征在于,所述第二处理模块计算访问请求Y中携带的用户鼠标移动轨迹与预先保存的用户鼠标移动轨迹模型的偏差量,如果该偏差量小于预定阈值,则确定访问请求Y中携带的用户行为数据合法,否则,不合法。
8.根据权利要求5、6或7所述的装置,其特征在于,所述第二处理模块进一步用于,每经过预定时长,针对同一客户端在该时长内所发送的访问请求Y进行一次检查,如果发现大于N个访问请求Y中携带的用户行为数据均相同,则将这些访问请求Y对应的访问结果无效掉,N为正整数。
全文摘要
本发明公开了一种访问请求处理方法及装置当接收到客户端发送来的未携带有密文串的访问请求X时,服务器生成密文串,返回给客户端;访问请求X为客户端接收到用户的访问指令后发起的访问请求;当接收到客户端发送来的携带有密文串的访问请求Y时,服务器确定访问请求Y中携带的密文串是否合法,如果否,则拒绝本次访问,如果是,则进一步确定访问请求Y中携带的用户行为数据是否合法,如果是,则向客户端返回访问结果,否则,拒绝本次访问;用户行为数据为客户端采集到的从用户进入发起访问页面开始到向客户端发出访问指令这一时间段内的行为数据。应用本发明所述方案,能够提高服务器正确识别出伪造请求的能力。
文档编号H04L29/06GK103209161SQ201210012288
公开日2013年7月17日 申请日期2012年1月16日 优先权日2012年1月16日
发明者张勇 申请人:深圳市腾讯计算机系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1