Scheme请求校验方法、装置及设备制造方法及图纸

技术编号:23561764 阅读:46 留言:0更新日期:2020-03-25 06:30
本公开提供一种Scheme请求校验方法、装置及设备,其中,Scheme请求校验方法包括:获取第一应用对第二应用的Scheme请求;生成第一随机数,并通过第一标识对所述第一随机数进行加密,得到第一加密信息,其中,所述第一标识作为密钥,所述第一标识与所述终端以及所述第一应用对应;对所述第一加密信息以及所述第一应用的信息进行加密,得到第二加密信息;将所述Scheme请求以及所述第二加密信息发送给所述第二应用,以使所述第二应用基于所述第二加密信息对所述Scheme请求进行校验;接收来自所述第二应用的所述Scheme请求的响应消息,所述响应消息中携带有所述第一加密信息;对所述第一加密信息进行解密,得到第一解密结果,根据所述第一解密结果确定Scheme请求结果。

Scheme request verification method, device and device

【技术实现步骤摘要】
Scheme请求校验方法、装置及设备
本公开涉及应用管理
,尤其涉及一种Scheme请求校验方法、装置及设备。
技术介绍
目前,iOSURL(UniformResourceLocator,统一资源定位符)Scheme是在操作系统上设立的一种进程间通讯的方式,应用程序可声明自己的URLScheme用于被外部应用程序调用。由于URLScheme本身不能被应用程序独占,则出现了多个应用程序声明同一个URLScheme时,会存在一方劫持另一方的URLScheme请求的情况。在有恶意程序抢先注册了企业原有的Scheme后,劫持其它应用程序对正常应用程序的URLScheme请求,并将请求发送到其它设备进行重放,从而危及了用户的资金安全以及账户安全。
技术实现思路
有鉴于此,本公开的目的在于提出一种Scheme请求校验方法、装置及设备。根据本公开的第一个方面,提供了一种Scheme请求校验方法,应用于终端,所述方法包括:获取第一应用对第二应用的Scheme请求;生成第一随机数,并通过第一标识对所述第一随机数进行加密,得到第一加密信息,其中,所述第一标识作为密钥,所述第一标识与所述终端以及所述第一应用对应;对所述第一加密信息以及所述第一应用的信息进行加密,得到第二加密信息;将所述Scheme请求以及所述第二加密信息发送给所述第二应用,以使所述第二应用基于所述第二加密信息对所述Scheme请求进行校验;接收来自所述第二应用的所述Scheme请求的响应消息,所述响应消息中携带有所述第一加密信息;对所述第一加密信息进行解密,得到第一解密结果,根据所述第一解密结果确定Scheme请求结果。根据本公开的第二个方面,提供了一种Scheme请求校验方法,应用于终端,所述方法包括:获取第一应用对第二应用的Scheme请求以及第二加密信息,其中,所述第二加密信息包括加密后的所述第一应用的信息以及第一加密信息,所述第一加密信息通过第一标识对第一随机数进行加密得到,所述第一标识与所述终端以及所述第一应用对应;对所述第二加密信息进行解密,得到所述第一应用的信息;根据所述第一应用的信息对所述Scheme请求进行校验,得到第二校验结果;响应于所述第二校验结果为检验通过,对所述第一加密信息以及所述第一应用的信息进行重新加密,得到重新加密后的第二加密信息;将重新加密后的第二加密信息发送至所述第一应用,以使所述第一应用根据重新加密后的所述第二加密信息对所述Scheme请求进行校验。根据本公开的第三个方面,提供了一种Scheme请求校验方法,所述方法应用于终端,所述方法包括:第一应用获取其对第二应用的Scheme请求;第一应用生成第一随机数,并通过第一标识对所述第一随机数进行加密,得到第一加密信息,其中,所述第一标识作为密钥,所述第一标识与所述终端以及所述第一应用对应;第一应用对所述第一加密信息以及所述第一应用的信息进行加密,得到第二加密信息;第一应用将所述Scheme请求以及所述第二加密信息发送给所述第二应用;所述第二应用对所述第二加密信息进行解密,根据所述第一应用的信息对所述Scheme请求进行校验,响应于校验成功,向所述第一应用发送所述Scheme请求的响应消息,所述响应消息中携带有所述第一加密信息;第一应用接收所述Scheme请求的响应消息,对所述第一加密信息进行解密,得到第一解密结果,根据所述第一解密结果确定Scheme请求结果。根据本公开的第四个方面,提供了一种Scheme请求校验装置,应用于终端,所述装置包括:第一获取模块,用于获取第一应用对第二应用的Scheme请求;第一生成模块,用于生成第一随机数,并通过第一标识对所述第一随机数进行加密,得到第一加密信息,其中,所述第一标识作为密钥,所述第一标识与所述终端以及所述第一应用对应;第一加密模块,用于对所述第一加密信息以及所述第一应用的信息进行加密,得到第二加密信息;第一发送模块,用于将所述Scheme请求以及所述第二加密信息发送给所述第二应用,以使所述第二应用基于所述第二加密信息对所述Scheme请求进行校验;第一接收模块,用于接收来自所述第二应用的所述Scheme请求的响应消息,所述响应消息中携带有所述第一加密信息;第一确定模块,用于对所述第一加密信息进行解密,得到第一解密结果,根据所述第一解密结果确定Scheme请求结果。根据本公开的第五个方面,提供了一种Scheme请求校验装置,应用于终端,所述装置包括:第二获取模块,用于获取第一应用对第二应用的Scheme请求以及第二加密信息,其中,所述第二加密信息包括加密后的所述第一应用的信息以及第一加密信息,所述第一加密信息通过第一标识对第一随机数进行加密得到,所述第一标识与所述终端以及所述第一应用对应;第一解密模块,用于对所述第二加密信息进行解密,得到所述第一应用的信息;校验模块,用于根据所述第一应用的信息对所述Scheme请求进行校验,得到第二校验结果;第二加密模块,用于响应于所述第二校验结果为检验通过,对所述第一加密信息以及所述第一应用的信息进行重新加密,得到重新加密后的第二加密信息;第二发送模块,用于将重新加密后的第二加密信息发送至所述第一应用,以使所述第一应用根据重新加密后的所述第二加密信息对所述Scheme请求进行校验。根据本公开的第六个方面,提供了一种Scheme请求校验装置,所述装置应用于终端,所述装置包括:第三获取模块,用于通过第一应用获取其对第二应用的Scheme请求;第二生成模块,用于通过第一应用生成第一随机数,并通过第一标识对所述第一随机数进行加密,得到第一加密信息,其中,所述第一标识作为密钥,所述第一标识与所述终端以及所述第一应用对应;第三加密模块,用于通过第一应用对所述第一加密信息以及所述第一应用的信息进行加密,得到第二加密信息;第五发送模块,用于通过第一应用将所述Scheme请求以及所述第二加密信息发送给所述第二应用;第二解密模块,用于通过所述第二应用对所述第二加密信息进行解密,根据所述第一应用的信息对所述Scheme请求进行校验,响应于校验成功,向所述第一应用发送所述Scheme请求的响应消息,所述响应消息中携带有所述第一加密信息;第二接收模块,用于第一应用接收所述Scheme请求的响应消息,对所述第一加密信息进行解密,得到第一解密结果,根据所述第一解密结果确定Scheme请求结果。根据本公开的第七个方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本公开第一方面至第三方面所述的任意一种Scheme请求校验方法。从上面所述可以看出,本公开实施例的Scheme请求校验方法,第一应用发起对第二应用的Scheme请求,在向第二应用发送的Scheme请求中携带通过与终端以及第一应用对应的标识加密的随机数,在接收到包含该随机数据的Scheme请求响应消息后,可通过对该随机数的解密来确定Scheme请求结果,由于第一标识与终端以及第一应用对应,故,其他应用无法获知该第一标识,所以,如果对加密后的随机数解密失败,则说明当前本文档来自技高网...

【技术保护点】
1.一种Scheme请求校验方法,其特征在于,应用于终端,所述方法包括:/n获取第一应用对第二应用的Scheme请求;/n生成第一随机数,并通过第一标识对所述第一随机数进行加密,得到第一加密信息,其中,所述第一标识作为密钥,所述第一标识与所述终端以及所述第一应用对应;/n对所述第一加密信息以及所述第一应用的信息进行加密,得到第二加密信息;/n将所述Scheme请求以及所述第二加密信息发送给所述第二应用,以使所述第二应用基于所述第二加密信息对所述Scheme请求进行校验;/n接收来自所述第二应用的所述Scheme请求的响应消息,所述响应消息中携带有所述第一加密信息;/n对所述第一加密信息进行解密,得到第一解密结果,根据所述第一解密结果确定Scheme请求结果。/n

【技术特征摘要】
1.一种Scheme请求校验方法,其特征在于,应用于终端,所述方法包括:
获取第一应用对第二应用的Scheme请求;
生成第一随机数,并通过第一标识对所述第一随机数进行加密,得到第一加密信息,其中,所述第一标识作为密钥,所述第一标识与所述终端以及所述第一应用对应;
对所述第一加密信息以及所述第一应用的信息进行加密,得到第二加密信息;
将所述Scheme请求以及所述第二加密信息发送给所述第二应用,以使所述第二应用基于所述第二加密信息对所述Scheme请求进行校验;
接收来自所述第二应用的所述Scheme请求的响应消息,所述响应消息中携带有所述第一加密信息;
对所述第一加密信息进行解密,得到第一解密结果,根据所述第一解密结果确定Scheme请求结果。


2.根据权利要求1所述的方法,其特征在于,所述第一应用的信息包括所述Scheme请求的摘要信息以及所述第一应用的bundleid,所述方法还包括:
在接收来自所述第二应用的所述Scheme请求的响应消息之后,判断所述响应消息中是否包含所述第二加密信息;
在所述响应消息中不包含所述第二加密信息时,确定所述Scheme请求结果为所述Scheme请求失败,在所述响应消息中包括所述第二加密信息时,对所述第二加密信息进行解密,得到所述Scheme请求的摘要信息、所述第一应用的bundleid以及所述第一加密信息;
对所述第一加密信息进行解密,得到第一解密结果,根据所述第一解密结果确定Scheme请求结果,包括:
在解密得到的所述摘要信息与预存的摘要信息一致,且解密得到的第一应用的bundleid与预存的第一应用的bundleid一致的情况下,通过所述第一标识对所述第一加密信息进行解密,得第二随机数;
在解密得到的所述摘要信息与预存的摘要信息不一致,和/或解密得到的第一应用的bundleid与预存的第一应用的bundleid不一致的情况下,确定所述Scheme请求结果为所述Scheme请求失败;
在所述第一随机数与所述第二随机数一致的情况下,确定所述Scheme请求结果为Scheme请求成功;
在所述第一随机数与所述第二随机数不一致的情况下,确定所述Sheme请求结果为所述Scheme请求失败。


3.根据权利要求1所述的方法,其特征在于,对所述第一加密信息以及所述第一应用的信息进行加密,得到第二加密信息,包括:
通过第二标识对所述第一加密信息以及所述第一应用的信息进行加密,得到所述第二加密信息,其中,所述第二标识包括:所述第一应用的应用标识以及所述终端的名称,所述应用标识用于标识所述第一应用对应的商户或开发者。


4.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
在将所述Scheme请求以及所述第二加密信息发送给所述第二应用之后,接收所述第二应用对所述第二加密信息的解密失败结果,根据所述解密失败结果确定所述Scheme请求失败;
或者,在将所述Scheme请求以及所述第二加密信息发送给所述第二应用之后,接收所述第二应用对由所述第二加密信息解密得到的所述摘要信息的校验失败结果,根据所述校验失败结果确定所述Scheme请求失败。


5.一种Scheme请求校验方法,其特征在于,应用于终端,所述方法包括:
获取第一应用对第二应用的Scheme请求以及第二加密信息,其中,所述第二加密信息包括加密后的所述第一应用的信息以及第一加密信息,所述第一加密信息通过第一标识对第一随机数进行加密得到,所述第一标识与所述终端以及所述第一应用对应;
对所述第二加密信息进行解密,得到所述第一应用的信息;
根据所述第一应用的信息对所述Scheme请求进行校验,得到第二校验结果;
响应于所述第二校验结果为检验通过,对所述第一加密信息以及所述第一应用的信息进行重新加密,得到重新加密后的第二加密信息;
将重新加密后的第二加密信息发送至所述第一应用,以使所述第一应用根据重新加密后的所述第二加密信息对所述Scheme请求进行校验。


6.根据权利要求5所述的方法,其特征在于,所述第一应用的信息中包括所述第一应用的bundleid,根据所述第一应用的信息对所述Scheme请求进行校验,得到第二校验结果,包括:
将所述bundleid发送至所述第二应用的服务端,以使所述第二应用的服务端基于所述bundleid对所述Scheme请求进行校验。


7.根据权利要求6所述的方法,其特征在于,所述第一应用的信息包括所述Scheme请求的摘要信息,所述方法还包括:
在对所述第二加密信息进行解密后,如果解密失败,则向所述第一应用发送解密失败结果,以使所述第一应用根据所述解密失败结果确定所述Scheme请求失败;
如果解密得到所述摘要信息,则根据解密得到的所述摘要信息对所述Scheme请求的摘要信息进行校验,如果校验失败,则将校验失败结果发送给所述第一应用,以使所述第一应用根据所述校验失败结果确定所述Scheme请求失败。


8.根据权利要求5至7任一项所述的方法,其特征在于,对所述第一加密信息以及所述第一应用的信息进行重新加密,包括:
通过第二标识对所述第一加密信息以及所述第一应用的信息进行重新加密,其中,所述第二标识包括:所述第一应用的应用标识以及所述终端的名称,其中,所述应用标识用于标识所述第一应用对应的商户或开发者。


9.一种Scheme请求校验方法,其特征在于,所述方法应用于终端,所述方法包括:
第一应用获取其对第二应用的Scheme请求;
第一应用生成第一随机数,并通过第一标识对所述第一随机数进行加密,得到第一加密信息,其中,所述第一标识作为密钥,所述第一标识与所述终端以及所述第一应用对应;
第一应用对所述第一加密信息以及所述第一应用的信息进行加密,得到第二加密信息;
第一应用将所述Scheme请求以及所述第二加密信息发送给所述第二应用;
所述第二应用对所述第二加密信息进行解密,根据所述第一应用的信息对所述Scheme请求进行校验,响应于校验成功,向所述第一应用发送所述Scheme请求的响应消息,所述响应消息中携带有所述第一加密信息;
第一应用接收所述Scheme请求的响应消息,对所述第一加密信息进行解密,得到第一解密结果,根据所述第一解密结果确定Scheme请求结果。


10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
所述第一应用在接收来自所述第二应用的所述Scheme请求的响应消息之后,判断所述响应消息中是否包含所述第二加密信息;
在所述响应消息中不包含所述第二加密信息时,确定所述Scheme请求结果为所述Scheme请求失败,在所述响应消息中包括所述第二加密信息时,对所述第二加密信息进行解密,得到所述Scheme请求的摘要信息、所述第一应用的bundleid以及所述第一加密信息;
所述第一应用对所述第一加密信息进行解密,得到第一解密结果,根据所述第一解密结果确定Scheme请求结果,包括:
在解密得到的所述摘要信息与预存的摘要信息一致,且解密得到的第一应用的bundleid与预存的第一应用的bundleid一致的情况下,通过所述第一标识对所述第一加密信息进行解密,得第二随机数;
在解密得到的所述摘要信息与预存的摘要信息不一致,和/或解密得到的第一应用的bundleid与预存的第一应用的bundleid不一致的情况下,确定所述Scheme请求结果为所述Scheme请求失败;
在所述第一随机数与所述第二随机数一致的情况下,确定所述Scheme请求结果为Scheme请求成功;
在所述第一随机数与所述第二随机数不一致的情况下,确定所述Sheme请求结果为所述Scheme请求失败。


11.一种Scheme请求校验装置,其特征在于,应用于终端,所述装置包括:
第一获取模块,用于获取第一应用对第二应用的Scheme请求;
第一生成模块,用于生成第一随机数,并通过第一标识对所述第一随机数进行加密,得...

【专利技术属性】
技术研发人员:曹世杰
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:浙江;33

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

1