怎样设置短信验证码防刷?(设置短信验证码防刷的4个方法)

qinzhiqiang 12-28 8:56 1,236次浏览

部分企业平台设置了注册短信验证码,这无论对企业平台还是对用户来说都是有好处的。但同时也存在个别的不法分子利用某些软件在频繁请求验证码,这对企业平台和用户都造成了不好的影响。今天巴卜小编就给大家具体说说短信验证码防刷的问题,重点讲下短信验证码防刷的必要性,以及如何设置短信验证码防刷机制。

短信验证码防刷 如何设计短信验证码防刷机制

短信验证码防刷的必要性

我们知道短信验证码都是通过短信通道发出来的,这个通道具有一定的容量宽度。如果短信验证码被恶意集中来耍的话,就在短时间里造成短信通道阻塞,使得很多正常的用户不能收到短信验证码,这就是严重影响到了用户体验和具体的操作。也会让企业平台流失大量的基准用户,给企业平台带来极为不利的影响。

另外企业平台使用短信验证码是要付费的,如果被这些恶意软件大量申请,势必会造成资源浪费,给企业带来经济上的损失。

所以企业平台做好短信验证码防刷的措施是十分必要的。

短信验证码防刷 如何设计短信验证码防刷机制

如何设计短信验证码防刷机制

1、时间限制:60秒后才能再次发送

从发送验证码开始,前端(客户端)会进行一个60秒的倒数,在这一分钟之内,用户是无法提交多次发送信息的请求的。这种方法虽然使用得比较普遍,但是却不是非常有用,技术稍微好点的人完全可以绕过这个限制,直接发送短信验证码。

2、手机号限制:同一个手机号,24小时之内不能够超过5条

对使用同一个手机号码进行注册或者其他发送短信验证码的操作的时候,系统可以对这个手机号码进行限制,例如,24小时只能发送5条短信验证码,超出限制则进行报错(如:系统繁忙,请稍后再试)。然而,这也只能够避免人工手动刷短信而已,对于批量使用不同手机号码来刷短信的机器,这种方法也是无可奈何的。

3、短信验证码限制:30分钟之内发送同一个验证码

网上还有一种方法说:30分钟之内,所有的请求,所发送的短信验证码都是同一个验证码。第一次请求短信接口,然后缓存短信验证码结果,30分钟之内再次请求,则直接返回缓存的内容。对于这种方式,不是很清楚短信接口商会不会对发送缓存信息收取费用,如果有兴趣可以了解了解。

4、前后端校验:提交Token参数校验

这种方式比较少人说到,个人觉得可以这种方法值得一试。前端(客户端)在请求发送短信的时候,同时向服务端提交一个Token参数,服务端对这个Token参数进行校验,校验通过之后,再向请求发送短信的接口向用户手机发送短信。

本文主要给大家介绍了短信验证码防刷,通过小编的介绍大家应该知道短信验证码防刷的必要性了吧,至于如何设计短信验证码防刷机制,小编也给出了一些实用的建议,大家可以参考去设计相关机制。

  • 暂无推荐