基于HTTP接口的加解密方法、装置及系统制造方法及图纸

技术编号:15180352 阅读:75 留言:0更新日期:2017-04-16 07:22
本申请公开了一种基于HTTP接口的加解密方法、装置及系统。该方法包括:当需要向服务器获取数据时,确定是否存储了API列表信息;当存储有所述API列表信息时,从所述API列表信息中获取待访问API的API访问名;以及向所述服务器发送用于获取数据的HTTP请求;其中,所述HTTP请求包括:含有所述待访问API的API访问名的第一请求内容及所述客户端的设备号;所述第一请求内容为加密后的密文,所述客户端的设备号为明文;所述API列表信息包括至少一个API的名字及对应的API访问名;每个API的所述API访问名为根据所述客户端的设备号对所述API的名字进行加密后的密文。该方法可提高数据传输的安全性。

【技术实现步骤摘要】

本专利技术涉及加解密
,具体而言,涉及一种基于HTTP接口的加解密方法、装置及系统
技术介绍
目前大部分的移动客户端与服务器之间的通信都是基于HTTP接口协议而进行的。为了保证接口传输的安全性,保证用户的利益,通常需要对HTTP接口中传输的数据进行加密处理。现有的几种加密方式,如HTTP对称加密方式及非对称加密方式均存在密文容易被破解,传输安全性低的问题,而HTTPS(HyperTextTransferProtocoloverSecureSocketLayer,超文本传输协议安全)则由于其方式比较复杂,需要购买安全证书等原因而导致使用成本高。在所述
技术介绍
部分公开的上述信息仅用于加强对本专利技术的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
有鉴于此,本专利技术提供一种基于HTTP接口的加解密方法、装置及系统,能够有效提高数据传输的安全性且流程简单。本专利技术的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本专利技术的实践而习得。根据本专利技术的一方面,提供了一种基于HTTP接口的加解密方法,适用于客户端,包括:当需要向服务器获取数据时,确定是否存储了API列表信息;当存储有所述API列表信息时,从所述API列表信息中获取待访问API的API访问名;以及向所述服务器发送用于获取数据的HTTP请求;其中,所述HTTP请求包括:含有所述待访问API的API访问名的第一请求内容及所述客户端的设备号;所述第一请求内容为加密后的密文,所述客户端的设备号为明文;所述API列表信息包括至少一个API的名字及对应的API访问名;每个API的所述API访问名为根据所述客户端的设备号对所述API的名字进行加密后的密文。根据本专利技术的一实施方式,所述方法还包括:当没有存储所述API列表信息时,向所述服务器发送HTTP接口API列表请求;以及接收并存储所述服务器返回的所述API列表信息;其中,所述HTTP接口API列表请求包括:第二请求内容及所述客户端的设备号;所述第二请求内容为加密后的密文,所述客户端的设备号为明文。根据本专利技术的一实施方式,每个API的所述API访问名为根据所述客户端的设备号生成随机数、并以所述随机数作为密钥对所述API的名字采用对称加密方式进行加密后的密文。根据本专利技术的一实施方式,所述第一请求内容和所述第二请求内容为采用非对称加密方式加密后的密文;所述方法还包括:当确定没有存储在所述非对称加密方式中使用的加密公钥时,向所述服务器发送加密公钥请求;以及接收并存储从所述服务器接收的所述加密公钥;其中,所述加密公钥为采用对称加密方式加密后的密文,且在所述对称加密方式中使用的密钥为所述客户端的设备号。根据本专利技术的另一方面,提供了一种基于HTTP接口的加解密方法,适用于服务器,包括:接收客户端发送的HTTP请求,其中所述HTTP请求包括:含有所述待访问API的API访问名的第一请求内容及所述客户端的设备号;所述第一请求内容为加密后的密文,所述客户端的设备号为明文;所述待访问API的API访问名为根据所述客户端的设备号对所述待访问API的名字进行加密后的密文;从所述HTTP请求中获取所述客户端的设备号;对所述第一请求内容进行解密,并确定对所述第一请求内容是否解密成功;当对所述第一请求内容解密成功时,根据获取的所述客户端的设备号,对所述待访问API的API访问名进行解密,并确定对所述待访问API的API访问名是否解密成功;以及当对所述待访问API的API访问名解密成功时,根据解密后得到的所述待访问API的名字,获取所述待访问API的地址;根据所述待访问API的地址,获得所述HTTP请求的响应结果;并将所述响应结果返回给所述客户端。根据本专利技术的一实施方式,所述方法还包括:接收所述客户端发送的HTTP接口API列表请求,其中所述HTTP接口API列表请求包括:第二请求内容及所述客户端的设备号;所述第二请求内容为加密后的密文,所述客户端的设备号为明文;从所述HTTP接口API列表请求中获取所述客户端的设备号;对所述第二请求内容进行解密,并确定对所述第二请求内容是否解密成功;当对所述第二请求内容解密成功时,根据所述客户端的设备号,对存储的API列表中的每个API的名字进行加密,分别获得其对应的API访问名;以及将由每个API的名字及其对应的所述API访问名组成的API列表信息返回给所述客户端。根据本专利技术的一实施方式,根据所述客户端的设备号,对存储的API列表中的每个API的名字进行加密,分别获得其对应的API访问名包括:根据所述客户端的设备号生成随机数;以所述随机数为密钥,对所述API列表中的每个API的名字以对称加密方式进行加密,以分别获得其对应的所述API访问名;以及以所述客户端的设备号为缓存密钥,存储所述随机数。根据本专利技术的一实施方式,所述第一请求内容和所述第二请求内容为采用非对称加密方式加密后的密文;所述方法还包括:当确定用于所述非对称加密方式的所述客户端的设备号对应的密钥对失效时,或者当对所述第一请求内容解密失败时,或者当对所述待访问API的API访问名解密失败时,或者当对所述第二请求内容解密失败时,向所述客户端返回密钥错误响应,以使所述客户端清理存储的所述API列表信息及所述密钥对中的公钥。根据本专利技术的一实施方式,所述方法还包括:接收所述客户端发送的加密公钥请求,所述加密公钥请求包含所述客户端的设备号;为所述客户端生成一对密钥对;以所述客户端的设备号为缓存密钥,存储所述密钥对,并设置存储失效时间;以所述客户端的设备号为密钥,对所述密钥对中的公钥采用对称加密方式进行加密;以及将加密后的所述密钥对中的公钥返回给所述客户端。根据本专利技术的再一方面,提供了一种基于HTTP接口的加解密装置,适用于客户端,包括:存储确定模块,用于当需要向服务器获取数据时,确定是否存储了API列表信息;访问名获取模块,用于当所述存储确定模块确定存储有所述API列表信息时,从所述API列表信息中获取待访问API的API访问名;以及HTTP请求发送模块,用于向所述服务器发送用于获取数据的HTTP请求;其中,所述HTTP请求包括:含有所述待访问API的API访问名的第一请求内容及所述客户端的设备号;所述第一请求内容为加密后的密文,所述客户端的设备号为明文;所述API列表信息包括至少一个API的名字及对应的API访问名;每个API的所述API访问名为根据所述客户端的设备号对所述API的名字进行加密后的密文。根据本专利技术的一实施方式,所述装置还包括:API请求发送模块,用于当所述存储确定模块确定没有存储所述API列表信息时,向所述服务器发送HTTP接口API列表请求;以及API列表接收模块,用于接收并存储所述服务器返回的所述API列表信息;其中,所述HTTP接口API列表请求包括:第二请求内容及所述客户端的设备号;所述第二请求内容为加密后的密文,所述客户端的设备号为明文。根据本专利技术的一实施方式,每个API的所述API访问名为根据所述客户端的设备号生成随机数、并以所述随机数作为密钥对所述API的名字采用对称加密方式进行加密后的密文。根据本专利技术的一实施方式,所述第一请求内容和所述第二请求内容为采用非对称加密方式加密本文档来自技高网...

【技术保护点】
一种基于HTTP接口的加解密方法,适用于客户端,其特征在于,包括:当需要向服务器获取数据时,确定是否存储了API列表信息;当存储有所述API列表信息时,从所述API列表信息中获取待访问API的API访问名;以及向所述服务器发送用于获取数据的HTTP请求;其中,所述HTTP请求包括:含有所述待访问API的API访问名的第一请求内容及所述客户端的设备号;所述第一请求内容为加密后的密文,所述客户端的设备号为明文;所述API列表信息包括至少一个API的名字及对应的API访问名;每个API的所述API访问名为根据所述客户端的设备号对所述API的名字进行加密后的密文。

【技术特征摘要】
1.一种基于HTTP接口的加解密方法,适用于客户端,其特征在于,包括:当需要向服务器获取数据时,确定是否存储了API列表信息;当存储有所述API列表信息时,从所述API列表信息中获取待访问API的API访问名;以及向所述服务器发送用于获取数据的HTTP请求;其中,所述HTTP请求包括:含有所述待访问API的API访问名的第一请求内容及所述客户端的设备号;所述第一请求内容为加密后的密文,所述客户端的设备号为明文;所述API列表信息包括至少一个API的名字及对应的API访问名;每个API的所述API访问名为根据所述客户端的设备号对所述API的名字进行加密后的密文。2.根据权利要求1所述的方法,其特征在于,还包括:当没有存储所述API列表信息时,向所述服务器发送HTTP接口API列表请求;以及接收并存储所述服务器返回的所述API列表信息;其中,所述HTTP接口API列表请求包括:第二请求内容及所述客户端的设备号;所述第二请求内容为加密后的密文,所述客户端的设备号为明文。3.根据权利要求1或2所述的方法,其特征在于,每个API的所述API访问名为根据所述客户端的设备号生成随机数、并以所述随机数作为密钥对所述API的名字采用对称加密方式进行加密后的密文。4.根据权利要求2所述的方法,其特征在于,所述第一请求内容和所述第二请求内容为采用非对称加密方式加密后的密文;所述方法还包括:当确定没有存储在所述非对称加密方式中使用的加密公钥时,向所述服务器发送加密公钥请求;以及接收并存储从所述服务器接收的所述加密公钥;其中,所述加密公钥为采用对称加密方式加密后的密文,且在所述对称加密方式中使用的密钥为所述客户端的设备号。5.一种基于HTTP接口的加解密方法,适用于服务器,其特征在于,包括:接收客户端发送的HTTP请求,其中所述HTTP请求包括:含有所述待访问API的API访问名的第一请求内容及所述客户端的设备号;所述第一请求内容为加密后的密文,所述客户端的设备号为明文;所述待访问API的API访问名为根据所述客户端的设备号对所述待访问API的名字进行加密后的密文;从所述HTTP请求中获取所述客户端的设备号;对所述第一请求内容进行解密,并确定对所述第一请求内容是否解密成功;当对所述第一请求内容解密成功时,根据获取的所述客户端的设备号,对所述待访问API的API访问名进行解密,并确定对所述待访问API的API访问名是否解密成功;以及当对所述待访问API的API访问名解密成功时,根据解密后得到的所述待访问API的名字,获取所述待访问API的地址;根据所述待访问API的地址,获得所述HTTP请求的响应结果;并将所述响应结果返回给所述客户端。6.根据权利要求5所述的方法,其特征在于,还包括:接收所述客户端发送的HTTP接口API列表请求,其中所述HTTP接口API列表请求包括:第二请求内容及所述客户端的设备号;所述第二请求内容为加密后的密文,所述客户端的设备号为明文;从所述HTTP接口API列表请求中获取所述客户端的设备号;对所述第二请求内容进行解密,并确定对所述第二请求内容是否解密成功;当对所述第二请求内容解密成功时,根据所述客户端的设备号,对存储的API列表中的每个API的名字进行加密,分别获得其对应的API访问名;以及将由每个API的名字及其对应的所述API访问名组成的API列表信息返回给所述客户端。7.根据权利要求6所述的方法,其特征在于,根据所述客户端的设备号,对存储的API列表中的每个API的名字进行加密,分别获得其对应的API访问名包括:根据所述客户端的设备号生成随机数;以所述随机数为密钥,对所述API列表中的每个API的名字以对称加密方式进行加密,以分别获得其对应的所述API访问名;以及以所述客户端的设备号为缓存密钥,存储所述随机数。8.根据权利要求6或7所述的方法,其特征在于,所述第一请求内容和所述第二请求内容为采用非对称加密方式加密后的密文;所述方法还包括:当确定用于所述非对称加密方式的所述客户端的设备号对应的密钥对失效时,或者当对所述第一请求内容解密失败时,或者当对所述待访问API的API访问名解密失败时,或者当对所述第二请求内容解密失败时,向所述客户端返回密钥错误响应,以使所述客户端清理存储的所述API列表信息及所述密钥对中的公钥。9.根据权利要求5所述的方法,其特征在于,还包括:接收所述客户端发送的加密公钥请求,所述加密公钥请求包含所述客户端的设备号;为所述客户端生成一对密钥对;以所述客户端的设备号为缓存密钥,存储所述密钥对,并设置存储失效时间;以所述客户端的设备号为密钥,对所述密钥对中的公钥采用对称加密方式进行加密;以及将加密后的所述密钥对中的公钥返回给所述客户端。10.一种基于HTTP接口的加解密装置,适用于客户端,其特征在于,包括:存储确定模块,用于当需要向服务器获取数据时,确定是否存储了API列表信息;访问名获取模块,用于当所述存储确定模块确定存储有所述API列表信息时,从所述API列表信息中获取待访问API的API访问名;以及HTTP请求发送模块,用于向所述服务器发送用于获取数据的HTTP请求;其中,所述HTTP请求包括:含有所述待访问API的API访问名的第一请求内容及所述客户端的设备号;所述第一请求内容为加密后的密文,所述客户端的设备号为明文;所述API列表信息包括至少一个API的名字及对应的API访问名;每个API的所述API访问名为根据所述客户端的设备号对所述API的名字进行加密后的密文。11.根据权利要求10所述的装置,其特征在于,还包括:API请求发送模块,用于当所述存储确定模块确定没有存储所述API列表信息时,向所述服务器发送HTTP接口API列表请求;以及API列表接收模块,用于接收并存储所述服务器返回的所述API列表信息;其中,所述HTTP接口API列表请求包括:第二请求内容及所述客户端的设备号;所述第二请求内容为加密后的密文,所述客户端的设备号为明文。12.根据权利要求10或11所述的装置,其特征在于,每个API的所述API访问名为根据所述客户端的设备号生成随机数、并以所述随机...

【专利技术属性】
技术研发人员:莫文熊健南毕磊
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京;11

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

1