网站首页 文章专栏 api设计之防重放攻击
被攻击者捕获到请求,原封不动的进行二次请求,造成不必要的损失。
timestamp是请求的时间戳,对请求的实效进行判定。 从客户端到服务端接受,一般设定为60s足够了。
nonce是生成具有唯一性的随机数,比如设定timestamp的实效性后,还留有60s的间隙,如何预防呢,将nonce设为有效期60s,当请求时有相同nonce的请求,则是非法请求。一般利用redis的有效期。
md5+密钥
为了防止请求数据参数被篡改。 客户端可以将请求参数+密钥用md5加密生产sign,服务端也用相同的md5(请求参数+密钥),如果得出的结果相同,证明没有被篡改。
-出处:https://www.huaweicloud.com/articles/a637afa7d9a6f3e351c7ce977fbf1227.html
https://blog.csdn.net/guyue35/article/details/81778428
sad <script>alert('ddd')</script>