[发明专利]数据访问方法、服务器和终端有效
申请号: | 201110388487.1 | 申请日: | 2011-11-29 |
公开(公告)号: | CN103139163A | 公开(公告)日: | 2013-06-05 |
发明(设计)人: | 阳鹤翔 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L9/32 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 苏培华 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 访问 方法 服务器 终端 | ||
1.一种数据访问方法,其特征在于,包括:
在一次终端通过客户端程序请求使用服务器端的应用程序接口API的过程中,所述服务器端接收所述终端发送的使用所述API的请求,所述请求中包括应用程序接口签名APIKEY,所述APIKEY由所述终端根据所述服务器端发送的动态密钥和所述终端保存的公钥生成,所述客户端程序包括除浏览器之外的用于请求所述服务器端的API的应用程序;
所述服务器端根据所述请求确定所述终端发送的APIKEY与所述服务器端的APIKEY一致;
所述服务器端允许所述终端使用所述API,并生成新的动态密钥发送给所述终端在下一次请求中使用。
2.根据权利要求1所述的方法,其特征在于,所述APIKEY由所述终端根据所述服务器端发送的动态密钥和所述终端保存的公钥生成包括:
所述终端根据所述服务器端发送的所述动态密钥、存储的与所述服务器端一致的公钥和/或请求参数,使用加密算法,生成所述APIKEY。
3.根据权利要求2所述的方法,其特征在于,所述请求还包括所述终端的客户端标识;
所述服务器端根据所述请求确定所述终端发送的APIKEY与所述服务器端的APIKEY一致的步骤包括:所述服务器端根据所述客户端标识,获得所述服务器端存储的所述动态密钥;使用与所述终端相同的所述加密算法,根据获得的所述动态密钥生成所述服务器端的APIKEY;判断所述服务器端的APIKEY与所述终端发送的所述APIKEY是否一致;若是,则确定所述终端发送的APIKEY与所述服务器端的APIKEY一致。
4.根据权利要求1所述的方法,其特征在于,在所述服务器端生成新的动态密钥发送给所述终端在下一次请求中使用的步骤之后,还包括:
若所述服务器端向所述终端发送所述新的动态密钥失败,则所述服务器端向所述终端发送错误信息,并在所述错误信息中携带所述新的动态密钥;
或者,若所述服务器端向所述终端发送所述新的动态密钥失败,所述服务器端保存生成所述APIKEY的所述动态密钥,根据保存的所述动态密钥决定是否允许所述终端下一次请求使用API。
5.根据权利要求1所述的方法,其特征在于,在所述服务器端接收所述终端发送的使用所述API的请求的步骤之前,还包括:
所述服务器端接收所述终端发送的请求与安全无关的页面的请求,向所述终端返回所述终端的客户端标识和所述动态密钥。
6.一种服务器,其特征在于,包括:
第一接收模块,用于在一次终端通过客户端程序请求使用所述服务器的应用程序接口API的过程中,接收所述终端发送的使用所述API的请求,所述请求中包括应用程序接口签名APIKEY,所述APIKEY由所述终端根据所述服务器发送的动态密钥和所述终端保存的公钥生成,所述客户端程序包括除浏览器之外的用于请求所述服务器端的API的应用程序;
校验模块,用于根据所述请求确定所述终端发送的APIKEY与所述服务器的APIKEY一致;
生成发送模块,用于允许所述终端使用所述API,并生成新的动态密钥发送给所述终端在下一次请求中使用。
7.根据权利要求6所述的服务器,其特征在于,所述终端发送的所述APIKEY由所述终端根据所述服务器发送的所述动态密钥、所述终端中存储的与所述服务器一致的公钥和/或请求参数,使用加密算法生成。
8.根据权利要求7所述的服务器,其特征在于,所述请求还包括所述终端的客户端标识;
所述校验模块包括:获取模块,用于根据所述客户端标识,获得所述服务器存储的所述动态密钥;加密生成模块,用于使用与所述终端相同的所述加密算法,根据获得的所述动态密钥生成所述服务器的APIKEY;判断确定模块,用于判断所述服务器的APIKEY与所述终端发送的所述APIKEY是否一致;若是,则确定所述终端发送的APIKEY与所述服务器的APIKEY一致。
9.根据权利要求6所述的服务器,其特征在于,还包括:
失败模块,用于若所述生成发送模块向所述终端发送所述新的动态密钥失败,则向所述终端发送错误信息,并在所述错误信息中携带所述新的动态密钥;或者,所述服务器端保存生成所述APIKEY的所述动态密钥,根据保存的所述动态密钥决定是否允许所述终端下一次请求使用API。
10.一种终端,其特征在于,包括:
第二接收模块,用于接收服务器发送的动态密钥;
请求模块,用于在一次通过客户端程序请求使用所述服务器的应用程序接口API的过程中,根据所述动态密钥和所述终端保存的公钥生成应用程序接口签名APIKEY,将所述APIKEY携带在使用所述API的请求中发送给所述服务器,其中,所述客户端程序包括除浏览器之外的用于请求所述服务器端的API的应用程序;
处理模块,用于在获得所述服务器允许后,使用所述服务器的所述API,并接收所述服务器发送的新的动态密钥在下一次请求中使用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110388487.1/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置