[发明专利]一种防重放攻击方法和装置有效
| 申请号: | 202110340953.2 | 申请日: | 2021-03-30 |
| 公开(公告)号: | CN112968910B | 公开(公告)日: | 2022-12-27 |
| 发明(设计)人: | 黄阳 | 申请(专利权)人: | 中国建设银行股份有限公司 |
| 主分类号: | H04L9/40 | 分类号: | H04L9/40 |
| 代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 郝红玉;冯培培 |
| 地址: | 100033 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 重放 攻击 方法 装置 | ||
本发明公开了一种防重放攻击方法和装置,涉及数据安全领域。该方法的一具体实施方式包括:后端接收前端传输的访问请求和第一mac校验码参数;获取预设保密盐值,处理所述预设保密盐值和所述访问请求中的请求参数,得到第二mac校验码参数;比对所述第一mac校验码参数和所述第二mac校验码参数是否相等,若相等,则处理所述访问请求,否则判定是重放请求,拒绝处理所述访问请求。该实施方式在现有timestamp和nonce防重放控制的基础上,增设mac校验机制进一步确保请求参数中timestamp和nonce的真实性,对于现有代码不会有很大改造,较为轻量,且不易被篡改。
技术领域
本发明涉及数据安全领域,尤其涉及一种防重放攻击方法和装置。
背景技术
现有的防重放攻击方案一般基于timestamp+nonce校验进行:前端每次发起HTTP请求,都需要加上timestamp(时间戳)参数。因为一次正常的HTTP请求,从发出到达服务器一般都不会超过60s,所以后端在收到HTTP请求后,首先判断时间戳参数相比当前时间戳参数是否超过了60s,如果超过了则认为是非法请求。
但上述方式攻击者还有60s的时间攻击,作为进一步优化,再加上一个nonce随机数,防止60s内出现重复请求的情况。nonce是60s内仅一次有效的随机数,要求60s内的每次请求该参数保证不同,将60s内收到过的该参数缓存起来以校验60s内是否有重复的nonce。
在实现本发明的过程中,发明人发现timestamp+nonce方案虽然简单易懂,但很容易伪造:攻击者截取报文后,重放请求时将timestamp修改为一个60s内的时间戳,nonce修改为另一个任意随机数,由于随机数的特性,此随机数只有非常小的概率会与60s内已有的nonce重复,导致防重放攻击失败。
发明内容
有鉴于此,本发明实施例提供一种防重放攻击方法和装置,至少能够解决现有timestamp+nonce方案虽然简单易懂,但易伪造,导致防重放攻击失败的现象。
为实现上述目的,根据本发明实施例的一个方面,提供了一种防重放攻击方法,包括:
后端接收前端传输的访问请求和第一mac校验码参数;
获取预设保密盐值,处理所述预设保密盐值和所述访问请求中的请求参数,得到第二mac校验码参数;
比对所述第一mac校验码参数和所述第二mac校验码参数是否相等,若相等,则处理所述访问请求,否则判定是重放请求,拒绝处理所述访问请求。
可选的,在所述后端接收前端传输的访问请求和第一mac校验码参数之前,还包括:
前端接收访问请求,对所述预设保密盐值和所述访问请求中的请求参数进行加密处理,生成第一mac校验码参数;
将所述访问请求和所述第一mac校验码参数,一同发送到后端进行防重放校验。
可选的,所述一同发送到后端进行防重放校验,还包括:在从前端传输所述访问请求和所述第一mac校验码参数至后端的过程中,处理所述第一mac校验码参数,得到消息验证码;
所述后端接收前端传输的访问请求和第一mac校验码参数,包括:后端接收所述访问请求和所述消息验证码,从所述消息验证码中还原到所述第一mac校验码参数。
可选的,所述处理所述第一mac校验码参数,得到消息验证码,包括:
利用对称加密或非对称加密方式,处理所述第一mac校验码参数,得到消息验证码。
可选的,所述请求参数包括请求业务参数、请求时间戳和随机数;
所述若相等,则处理所述访问请求,还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国建设银行股份有限公司,未经中国建设银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110340953.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于风电前机架的装夹工装
- 下一篇:一种目标与关键结果的管理系统和方法





