a

关于验证码的思考

分享人:王佳妮

目录

一、语音验证码和短信验证码的区别是什么?

二、验证码选择4位或6位哪个更安全?

三、重复发送验证码的话,是否应该发送同一个验证码?

四、更多讨论

一、语音验证码和短信验证码的区别是什么?

(一)区别

1.验证码接受方式不同:短信验证——短信方式;而语音验证——电话的形式语音接听

2.传播形式不同:短信验证当信号不好、当所在地域为屏蔽地区的时候,短信验证码收不到;而电话语音验证可以保证整个流程顺利进行下去

3.安全性方面不同:短信验证——受手机木马、信息泄露等影响,使得验证失败,财产丢失;而语音验证——防止刷单且更加安全

4.应用方式不同:短信验证——方便快捷,更容易被人们接受;语音验证——以用户接听电话的形式,容易被客户不小心挂断。

(二)分析比较

1.体验方面:

(1)短信验证:短信到达率的问题,很多短信会丢失,特别是这类校验、通知短信。任何一家短信服务商都无法做到100%的到达率,另外还有类似西藏之类的短信管制的因素等等,所以短信验证通常会使得大概5%到10%的用户无法通过验证

(2)语音验证:虽然语音验证的体验和便捷度都无法和短信相比,但在无法接收短信的情况下,语音验证可以保证整个流程顺利进行下去

2.风控安全方面:

(1)手机木马:智能机的流行使得原来相对安全的短信验证变得脆弱如纸。中了木马后,短信就会在不知情的情况下被转发走,导致各类验证失效,财产受损

(2)短信仓库/短信转移/信息泄露:前两者都是运营商的业务,可以在网站上看到短信内容,或者转发到指定的手机中

(3)作弊风险:现在很多公司都会有大量的运营活动来支持自己的业务,比如促销满减,新客1元,免费体验,秒杀,限购等等,这中间就意味着需要很多账户。而账户一般都会要求做手机短信验证来核实是个真实的用户,于是就产生了专门做手机验证码服务的卡商和刷单的赚客,从而危害到了公司正常业务的发展

二、验证码选择4位或6位哪个更安全?

大多数的短信验证码都是采用的6位验证码,其主要原因在于:6位短信验证码更为安全

从破解的概率来看,4位的话,有1/10000=0.01%的概率,6位的话,有1/1000000=0.0001%的概率

尽管采用6位验证码更难记些,但是对于账户的安全度还是高些

验证码越长,安全系数会呈放大效应,即安全度越高,但考虑到用户输入体验,以及6位数字的破解时间,一般6位的破解预计会超过验证码超时时间,所以现在大多数网站都是采用6位的验证码

三、重复发送验证码的话,是否应该发送同一个验证码?

显然,不应该

四、更多讨论

鸣谢

感谢大家观看

BY :王佳妮

Contact GitHub API Training Shop Blog About © 2016 GitHub, Inc. Terms Privacy Security Status He