[发明专利]一种基于HTTP协议端云安全通信的实现方法有效
申请号: | 201910172462.4 | 申请日: | 2019-03-07 |
公开(公告)号: | CN109714370B | 公开(公告)日: | 2021-04-02 |
发明(设计)人: | 肖建;常清雪;刘剑飞 | 申请(专利权)人: | 四川长虹电器股份有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L9/32;H04L9/08;H04L29/08 |
代理公司: | 四川省成都市天策商标专利事务所 51213 | 代理人: | 郭会 |
地址: | 621000 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 http 协议 云安 通信 实现 方法 | ||
1.一种基于HTTP协议端云安全通信的实现方法,其特征在于,包括设计一种安全API格式、在云端验证终端数据合法性过程中,设计新的终端签名数据的方式及云端验证终端签名数据的方式,在终端验证云端数据合法性过程中,设计新的云端签名的流程及终端验签的流程,其中,所述终端签名数据的方式包括签名数据的组合方式、body数据的排序方式及终端签名的流程;所述安全API格式为:http://host:port/service?sign=XXXappkey=XXXnonce=XXXtimestamp=XXX,其中http://host:port/service表示正常业务接口;sign是签名值,appkey是业务参数,nonce是随机数据,timestamp是时间戳;所述云端验证终端数据合法性时具体为:根据请求参数,对签名进行验证,签名不合法的请求将会被拒绝,签名的数据用于计算摘要,所述签名数据的组合方式为:secretkey+(sort(body)+nonce+timestamp)+secretkey;所述body数据的排序方式包括:在post请求方式中,sort(body)为将body的json字符串约定以键名的ASCII升序排序;在get请求方式,sort(body)是将请求的业务参数,即将除sign、nonce、appkey、timestamp以外的参数按键名的ASCII升序排序;终端签名的流程包括:终端生成排序的业务数据sort(body)、随机数nonce,并根据appkey得到加密数据secretkey,然后向时间服务器请求时间戳并获取时间戳,再根据上述信息生成待签名数据:secretkey+(sort(body)+nonce+timestamp)+secretkey并进行签名,签名成功后生成签名值并发送签名值、随机数、时间戳及业务数据至业务平台进行验签,最后接收业务平台返回的验签结果;所述云端验证终端签名数据时验签的流程具体包括:
首先,云端先解析终端发出的报文数据,获取时间戳timestamp、随机数nonce、签名值及appkey,
云端向时间服务器请求时间戳并获取时间戳,并判断时间服务器返回的时间戳是否与报文的时间戳的差值在1分钟范围内,如果不在1分钟范围,则向终端返回验签不成功,否则,云端再对比签名值查看签名值是否在缓存中;
如果缓存已经存在该签名值,则向终端返回验签不成功,其中,缓存中保存的签名值,有效期为1分钟;如果缓存中不存在该签名值则按照终端签名的流程拼接(sort(body)+nonce+timestamp),然后根据appkey得到secretkey并拼接secretkey:secretkey+(sort(body)+nonce+timestamp)+secretkey生成待验签数据;对待验签数据进行验签,并在验签成功后将签名值保存在缓存中。
2.根据权利要求1所述的一种基于HTTP协议端云安全通信的实现方法,其特征在于,在终端和云端设有备用时间服务器第二地址。
3.根据权利要求1所述的一种基于HTTP协议端云安全通信的实现方法,其特征在于,所述云端签名的流程包括:
首先,使用签名算法将返回终端的业务数据chbusycontent的值转为byte数组,然后拼接上secretkey形成待签数据,拼接公式如下:secretkey+chbusycontent+secretkey;其中,secretkey根据appkey获取,appkey从终端发起的请求中获得;且业务数据chbusyconten的值为json格式字符串,约定以键名的ASCII升序排序;然后对待签数据进行签名,并在签名成功后返回签名值chsign及向终端返回验签报文进行验签。
4.根据权利要求3所述的一种基于HTTP协议端云安全通信的实现方法,其特征在于,所述终端验签的流程具体包括:
首先,接收并解析云端反馈的验签报文,得到业务数据chbusycontent和签名值chsign,然后将业务数据chbusycontent转为byte数组并拼接上secretkey形成待验签数据,拼接公式如下:secretkey+chbusycontent+secretkey;然后再对待验签数据进行验签,若验签成功则向云端返回验签成功,否则向云端返回验签失败。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川长虹电器股份有限公司,未经四川长虹电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910172462.4/1.html,转载请声明来源钻瓜专利网。