请求处理方法、处理装置以及请求验证方法、验证装置与流程

文档序号:18226316发布日期:2019-07-19 23:28阅读:213来源:国知局
请求处理方法、处理装置以及请求验证方法、验证装置与流程

本发明涉及信息技术领域,更具体地说,涉及一种请求处理方法、处理装置以及请求验证方法、验证装置。



背景技术:

现阶段,用户可以通过应用或者网页向服务端请求业务,但是服务端无法识别请求方是盗链用户还是正常用户。



技术实现要素:

有鉴于此,为解决上述问题,本发明提供一种请求处理方法、处理装置以及请求验证方法、验证装置。技术方案如下:

一种请求处理方法,包括:

生成针对指定业务的初始统一资源定位符url链接;

至少获取会话密钥和已加密的cookie数据;其中,所述会话密钥与客户端版本对应,所述已加密的cookie数据是采用与所述客户端版本对应的密钥加密的;

利用指定签名函数至少处理所述会话密钥和所述已加密的cookie数据得到签名;

对所述初始url链接至少添加所述已加密的cookie数据和所述签名得到待请求的url链接,并发送。

优选的,所述至少获取会话密钥和已加密的cookie数据,包括:

获取会话密钥、已加密的cookie数据和指定参数;其中,所述指定参数包括设备标识、所述客户端版本的版本号和时间戳中的一个或多个;

所述利用指定签名函数至少处理所述会话密钥和所述已加密的cookie数据得到签名,包括:

利用指定签名函数处理所述会话密钥、所述已加密的cookie数据和所述指定参数得到签名;

所述对所述初始url链接至少添加所述已加密的cookie数据和所述签名得到待请求的url链接,包括:

对所述初始url链接添加所述已加密的cookie数据、所述指定参数和所述签名得到待请求的url链接。

一种请求处理装置,包括:

生成模块,用于生成针对指定业务的初始统一资源定位符url链接;

第一获取模块,用于至少获取会话密钥和已加密的cookie数据;其中,所述会话密钥与客户端版本对应,所述已加密的cookie数据是采用与所述客户端版本对应的密钥加密的;

第一处理模块,用于利用指定签名函数至少处理所述会话密钥和所述已加密的cookie数据得到签名;

发送模块,用于对所述初始url链接至少添加所述已加密的cookie数据和所述签名得到待请求的url链接,并发送。

优选的,所述第一获取模块,具体用于:

获取会话密钥、已加密的cookie数据和指定参数;其中,所述指定参数包括设备标识、所述客户端版本的版本号和时间戳中的一个或多个;

所述第一处理模块,具体用于:

利用指定签名函数处理所述会话密钥、所述已加密的cookie数据和所述指定参数得到签名;

用于对所述初始url链接至少添加所述已加密的cookie数据和所述签名得到待请求的url链接的所述发送模块,具体用于:

对所述初始url链接添加所述已加密的cookie数据、所述指定参数和所述签名得到待请求的url链接。

一种请求验证方法,所述方法包括:

接收url链接,所述url链接是按照前文任意一项所述的请求处理方法处理得到的,所述url链接包括初始url链接以及对所述初始url链接至少添加的签名和已加密的cookie数据;

基于所述url链接对应的客户端版本获取对应的会话密钥;

利用指定签名函数至少处理所述会话密钥和所述已加密的cookie数据得到基准签名;

判断所述签名是否和所述基准签名相同;

如果所述签名和所述基准签名相同,确定所述初始url链接验证通过;

如果所述签名和所述基准签名不相同,确定所述初始url链接验证未通过。

优选的,所述确定所述初始url链接验证通过之前,所述方法还包括:

获取用于加密所述已加密的cookie数据的、与所述客户端版本对应的密钥;

采用所述密钥解密所述已加密的cookie数据得到未加密的cookie数据;

在所述未加密的cookie数据符合指定正常用户规则的情况下,执行所述确定所述初始url链接验证通过,这一步骤。

优选的,所述方法还包括:

在所述未加密的cookie数据不符合指定正常用户规则的情况下,确定所述初始url链接验证未通过。

优选的,所述确定所述初始url链接验证通过之前,所述方法还包括:

如果所述初始url链接还添加有时间戳,计算所述时间戳与所述url链接的接收时间的时间差;

在所述时间差在所述预设允许范围内的情况下,执行所述确定所述初始url链接验证通过,这一步骤。

优选的,所述方法还包括:

在所述时间差不在所述预设允许范围内的情况下,确定所述初始url链接验证未通过。

一种请求验证装置,所述装置包括:

接收模块,用于接收url链接,所述url链接是按照前文任意一项所述的请求处理方法处理得到的,所述url链接包括初始url链接以及对所述初始url链接至少添加的签名和已加密的cookie数据;

第二获取模块,用于基于所述url链接对应的客户端版本获取对应的会话密钥;

第二处理模块,用于利用指定签名函数至少处理所述会话密钥和所述已加密的cookie数据得到基准签名;

判断模块,用于判断所述签名是否和所述基准签名相同;

第一确定模块,用于如果所述签名和所述基准签名相同,确定所述初始url链接验证通过;

第二确定模块,用于如果所述签名和所述基准签名不相同,确定所述初始url链接验证未通过。

以上本发明提供的请求处理方法,可以对初始url链接至少添加已加密的cookie数据和签名得到待请求的url链接。由于签名是利用指定签名函数至少处理会话密钥和已加密的cookie数据得到的,cookie数据用于记录客户端的访问行为、且不同类型用户的访问行为有着极大差异,因此url链接通过添加已加密的cookie数据和签名可以区别出请求方是盗链用户还是正常用户,提高业务响应的安全性。

附图说明

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

图1为本发明实施例一公开的请求处理方法的方法流程图;

图2为本发明实施例二公开的请求处理方法的方法流程图;

图3为本发明实施例公开的请求处理装置的结构示意图;

图4为本发明实施例公开的请求验证方法的方法流程图;

图5为本发明实施例公开的请求验证装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例一提供一种请求处理方法,该方法可以应用于客户端(该客户端可以装载在智能手机、平板电脑和笔记本电脑等终端上)。请求处理方法的方法流程图如图1所示,包括如下步骤:

s101,生成针对指定业务的初始统一资源定位符url链接。

在执行步骤s101的过程中,初始url链接是客户端通过响应用户触控操作所生成的诸如请求广告业务或者会员业务或者播放业务等的请求,该初始url链接与用户、客户端所装载的终端以及客户端版本等相关,本实施例对于初始url链接的生成方式并不限定。

s102,至少获取会话密钥和已加密的cookie数据;其中,会话密钥与客户端版本对应,已加密的cookie数据是采用与客户端版本对应的密钥加密的。

在执行步骤s102的过程中,会话密钥与客户端版本相对应,也就是说,会话密钥与客户端版本具有对应关系,该会话密钥可以预先写入到客户端代码中,还可以由客户端在访问服务端之前预先协定,本实施例对此不做限定。

另外,已加密的cookie数据是由提供业务的服务端(该服务端可以由单台服务器实现,也可以由多台服务器组成的服务器群组实现)预先下发给客户端的,在下发时即采用与客户端版本对应的密钥加密。也就是说,客户端无法对已加密的cookie数据解密。而本实施例中,cookie数据可以记录客户端最新的访问行为,由服务端在客户端每次访问完成后下发给客户端。

需要说明的是,客户端可以直接访问服务端,还可以通过网关访问服务端。而当客户端通过网关访问服务端时,服务端也通过网关下发已加密的cookie数据。

s103,利用指定签名函数至少处理会话密钥和已加密的cookie数据得到签名。

在执行步骤s103的过程中,指定签名函数中至少包含有指定签名算法,采用该指定签名算法,比如哈希算法中的sha1或者md5或者crc64至少对会话密钥和已加密的cookie数据进行哈希运算得到签名。

s104,对初始url链接至少添加已加密的cookie数据和签名得到待请求的url链接,并发送。

在执行步骤s104的过程中,可以在初始url链接后面至少追加已加密的cookie数据和签名,以此获得待请求的url链接。当然,对于已加密的cookie数据和签名之间的位置关系,本实施例对此不做限定。比如,初始url链接为“http://domain/url”、已加密的cookie数据c=cookie、签名a=auth,则仅添加已加密的cookie数据和签名的待请求的url链接为:

“http://domain/url?c=cookie&a=auth”。

需要说明的是,上述追加方式仅为添加操作的一种举例内容,可以理解的是,其他未列举到的添加操作,比如初始url链接在已加密的cookie数据和签名之间,也在本发明保护范围内。

本发明实施例提供的请求处理方法,可以对初始url链接至少添加已加密的cookie数据和签名得到待请求的url链接。由于签名是利用指定签名函数至少处理会话密钥和已加密的cookie数据得到的,cookie数据用于记录客户端的访问行为、且不同类型用户的访问行为有着极大差异,因此url链接通过添加已加密的cookie数据和签名可以区别出请求方是盗链用户还是正常用户,提高业务响应的安全性。

作为步骤s102“至少获取会话密钥和已加密的cookie数据”的一种实现方式,本发明实施例二提供一种请求处理方法,该方法的方法流程图如图2所示,包括如下步骤:

s201,生成针对指定业务的初始统一资源定位符url链接。

s202,获取会话密钥、已加密的cookie数据和指定参数;其中,指定参数包括设备标识、客户端版本的版本号和时间戳中的一个或多个。

在执行步骤s202的过程中,指定参数可以是设备标识、客户端版本的版本号和时间戳中的任意一个或多个。其中,设备标识可以是设备idfa或者idfv或者udid,可以唯一标记客户端所装载的设备即可;时间戳至少达到以秒为单位。

需要说明的是,上述设备标识、客户端版本的版本号和时间戳仅为指定参数的举例内容,可以理解的是,对于其它未列举的参数,也在本发明的保护范围内。

s203,利用指定签名函数处理会话密钥、已加密的cookie数据和指定参数得到签名。

在执行步骤s203的过程中,采用指定签名算法对会话密钥、已加密的cookie数据和指定参数进行哈希运算得到签名。

s204,对初始url链接添加已加密的cookie数据、指定参数和签名得到待请求的url链接,并发送。

为方便理解,继续以初始url链接为“http://domain/url”、已加密的cookie数据c=cookie、签名a=auth为例。假设指定参数包括设备标识u=udid、客户端版本的版本号v=appverion和时间戳t=timestamp,则此时待请求的url链接为:

http://domain/url?c=cookie&a=auth&u=udid&v=appverion&t=timestamp”。

需要说明的是,对于已加密的cookie数据、签名、设备标识、客户端版本的版本号和时间戳之间的位置关系,本实施例对此不做限定。

本实施例提供的请求处理方法,可以对初始url链接至少添加已加密的cookie数据、签名和指定参数得到待请求的url链接。这就可以在区别请求方是盗链用户还是正常用户的基础上,增加签名被破解的难度,进一步提高业务响应的安全性。

基于上述实施例提供的请求处理方法,本发明实施例则对应提供执行上述请求处理方法的装置,该请求处理装置的结构示意图如图3所示,包括:

生成模块101,用于生成针对指定业务的初始统一资源定位符url链接。

第一获取模块102,用于至少获取会话密钥和已加密的cookie数据;其中,会话密钥与客户端版本对应,已加密的cookie数据是采用与客户端版本对应的密钥加密的。

第一处理模块103,用于利用指定签名函数至少处理会话密钥和已加密的cookie数据得到签名。

发送模块104,用于对初始url链接至少添加已加密的cookie数据和签名得到待请求的url链接,并发送。

可选的,第一获取模块102,具体用于:

获取会话密钥、已加密的cookie数据和指定参数;其中,指定参数包括设备标识、客户端版本的版本号和时间戳中的一个或多个;

第一处理模块103,具体用于:

利用指定签名函数处理会话密钥、已加密的cookie数据和指定参数得到签名;

用于对初始url链接至少添加已加密的cookie数据和签名得到待请求的url链接的发送模块104,具体用于:

对初始url链接添加已加密的cookie数据、指定参数和签名得到待请求的url链接。

本发明实施例提供的请求处理装置,可以对初始url链接至少添加已加密的cookie数据和签名得到待请求的url链接。url链接通过添加已加密的cookie数据和签名可以区别出请求方是盗链用户还是正常用户,提高业务响应的安全性。

基于上述实施例提供的请求处理方法和处理装置,本发明实施例提供一种请求验证方法,该方法可以应用于服务端或者网关。请求验证方法的方法流程图如图4所示,包括如下步骤:

s301,接收url链接,url链接是按照上述实施例公开的请求处理方法处理得到的,url链接包括初始url链接以及对初始url链接至少添加的签名和已加密的cookie数据。

s302,基于url链接对应的客户端版本获取对应的会话密钥。

在执行步骤s302的过程中,会话密钥与发送url链接的客户端的客户端版本相对应,也就是说,会话密钥与客户端版本具有对应关系,该对应关系可以预先获得,还可以与客户端预先协定,本实施例对此不做限定。

s303,利用指定签名函数至少处理会话密钥和已加密的cookie数据得到基准签名。

本实施例中,步骤s303处理得到基准签名的过程与上述步骤s103处理得到签名的过程一致,请参见上述步骤s103的公开内容,本实施例对此不再赘述。

需要说明的是,步骤s303与上述步骤s103的处理过程相对应,采用相同的指定签名算法至少对会话密钥和已加密的cookie数据进行哈希运算。

s304,判断签名是否和基准签名相同;若是,则执行步骤s305;若否,则执行步骤s306。

s305,确定初始url链接验证通过。

s306,确定初始url链接验证未通过。

需要说明的是,如果本实施例公开的请求验证方法应用于服务端,则服务端在确定初始url链接验证通过(即请求发送方为正常用户)后,响应初始url链接,反之,在确定初始url链接验证未通过(即请求发送方为盗链用户)后,不响应初始url链接。

而如果本实施例公开的请求验证方法应用于网关,则网关在确定初始url链接验证通过(即请求发送方为正常用户)后,将初始url链接转发至服务端,由服务端响应初始url链接,反之,在确定初始url链接验证未通过(即请求发送方为盗链用户)后,不转发初始url链接。

在其它一些实施例中,为防止指定签名函数和会话密钥泄露而无法区别出请求方是盗链用户还是正常用户的问题,在执行步骤s305之前,还可以采用如下步骤:

获取用于加密已加密的cookie数据的、与客户端版本对应的密钥;采用密钥解密已加密的cookie数据得到未加密的cookie数据;在未加密的cookie数据符合指定正常用户规则的情况下,执行步骤s305。

此外,在未加密的cookie数据不符合指定正常用户规则的情况下,确定初始url链接验证未通过。

本实施例中,由于下发给客户端的是已加密的cookie数据,即使客户端被第三方操控也无法获得解密的密钥,并且cookie数据用于记录客户端的访问行为、且不同类型用户的访问行为有着极大差异,因此通过解密已加密的cookie数据得到未加密的cookie数据,并对cookie数据中的诸如登录行为数据、播放行为数据、会员数据等进行验证,来确定初始url链接是否验证通过。以播放行为数据为例进行说明:

一般来说,用户播放的内容一般包括广告和视频,而如果仅播放视频并不播放广告,或者播放视频的次数远远大于播放广告的次数,则表示该用户属于盗链用户的可能性极大,可以直接确定初始url链接验证未通过,或者进一步验证其它cookie数据。

在其他一些实施例中,为提高业务安全性,在执行步骤s305之前,还可以采用如下步骤:

如果初始url链接还添加有时间戳,计算时间戳与url链接的接收时间的时间差;在时间差在预设允许范围内的情况下,执行步骤s305。

此外,在时间差不在预设允许范围内的情况下,确定初始url链接验证未通过。这就可以进一步验证时间的有效性。

本发明实施例提供的请求验证方法,可以验证url链接的请求方是盗链用户还是正常用户,提高业务响应的安全性。

基于上述实施例提供的请求验证方法,本发明实施例则对应提供执行上述请求验证方法的装置,该请求验证装置的结构示意图如图5所示,包括:

接收模块201,用于接收url链接,url链接是按照上述实施例公开的请求处理方法处理得到的,url链接包括初始url链接以及对初始url链接至少添加的签名和已加密的cookie数据。

第二获取模块202,用于基于url链接对应的客户端版本获取对应的会话密钥。

第二处理模块203,用于利用指定签名函数至少处理会话密钥和已加密的cookie数据得到基准签名。

判断模块204,用于判断签名是否和基准签名相同;若是,则触发第一确定模块205;若否,则触发第二确定模块206。

第一确定模块205,用于确定初始url链接验证通过。

第二确定模块206,用于确定初始url链接验证未通过。

可选的,第一确定模块205在确定初始url链接验证通过之前,还用于:

获取用于加密已加密的cookie数据的、与客户端版本对应的密钥;采用密钥解密已加密的cookie数据得到未加密的cookie数据;在未加密的cookie数据符合指定正常用户规则的情况下,执行确定初始url链接验证通过,这一步骤。

可选的,第一确定模块205还用于:

在未加密的cookie数据不符合指定正常用户规则的情况下,确定初始url链接验证未通过。

可选的,第一确定模块205在确定初始url链接验证通过之前,还用于:

如果初始url链接还添加有时间戳,计算时间戳与url链接的接收时间的时间差;在时间差在预设允许范围内的情况下,执行确定初始url链接验证通过,这一步骤。

可选的,第一确定模块205还用于:

在时间差不在预设允许范围内的情况下,确定初始url链接验证未通过。

本发明实施例提供的请求验证装置,可以验证url链接的请求方是盗链用户还是正常用户,提高业务响应的安全性。

以上对本发明所提供的一种请求处理方法、处理装置以及请求验证方法、验证装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素,或者是还包括为这些过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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