两者的差异的存在主要是有两方面的因素。
一方面是体验上的因素。短信有个短信到达率的问题,很多短信会丢失,特别是这类校验、通知短信。任何一家短信服务商都无法做到100%的到达率,另外还有类似西藏之类的短信管制的因素等等,所以短信验证通常会使得大概5%到10%的用户无法通过验证。相比之下,虽然电话验证的体验和便捷度都无法和短信相比,但在无法接收的情况下,电话验证可以保证整个流程顺利进行下去。
另一方面则是风控安全的因素。现在的短信验证主要存在如下的风险:
1、手机木马:智能机的流行使得原来相对安全的短信验证变得脆弱如纸。中了木马后,短信就会在不知情的情况下被转发走,导致各类验证失效,财产受损(合肥:手机中木马 银行卡被消费33次无银行短信)据不完全统计,手机木马类的案件在各大支付公司的占比已经超过了90%,所以没事别乱装乱点APP,特别是安卓机;
2、短信仓库/短信转移/信息泄露:前两者都是运营商的业务,可以在网站上看到短信内容,或者转发到指定的手机中。这类一般都集中在信息泄露的案件中,盗用者通过受害者的信息,利用运营上的服务来获取或者盗用短信。有的公司,自身信息安全做的不够,甚至存在明文存储短信验证码的问题(某省电信详单查询短信码绕过漏洞(非爆破)),等等此类,都特别容易造成短信验证码的泄露;
3、作弊风险:现在很多公司都会有大量的运营活动来支持自己的业务,比如促销满减,新客1元,免费体验,秒杀,限购等等,这中间就意味着需要很多账户。而账户一般都会要求做手机短信验证来核实是个真实的用户,于是就产生了专门做手机验证码服务的卡商和刷单的赚客(淘宝的刷信用也是其中一种),从而危害到了公司正常业务的发展。
基于以上这些风险,电话验证在这个阶段都会有比较好的防控效果。但好也是相对的,手机木马同样可以做到电话的劫持和转移,语音验证码服务同样已经开始有产业链在做了,只不过相应的成本也在不断的提高而已。总结来说,主要原因是出于风控和安全考虑,顺带做了一些用户体验优化的工作。
验证手机号常用的方法大概有这三种:语音验证、下行短信验证、上行短信验证。下行短信验证:用户通过短信收取验证码,将验证码输入后完成验证。上行短信验证:用户向106特服号发送短信完成验证。语音验证:用户通过接听电话获取验证码,将验证码输入后完成验证。三种验证方式各有利弊,提到好坏,就得掰开来说。首先,从用户操作便捷性上来讲。上行短信验证>下行短信验证>语音验证。上行短信简单在于,用户只要点击一个验证按钮,后续过程(发送短信、与服务器交互)由程序自动完成,免去输入手机号,输入验证码等繁琐步骤。而下行短信则次之,用户必须要先输入手机号码,然后才能获取相应的验证码并填入。做的比较好的可以及时截获用户收到的短信提取验证码,并自动输入完成验证,在用户感知上,只要输入手机号码,即可自动完成验证过程。语音验证的繁琐性就在于无法像上述两种方式一样帮用户做这些事情,必须是在用户亲自输入手机号,等待来电,自己记住验证码,自己填到输入框,手动完成验证。所以从便捷性上来讲,语音验证是最差劲的。那么为什么大家仍然在使用语音验证的方式。其实上行短信和下行短信也都有无法避免的问题。上行短信需要用户付费;下行短信经常收不到。上行短信需要用户发送短信,由此会产生一条短信费用。但用户并不是会注意你的每个提示,可能会反馈为什么花钱等等。一旦用户投诉给运营商,那么上行通道会被立即废掉停用。下行短信会经常因为种种原因,用户无法收到。例如用户被运营商加入了黑名单、短信被安全软件拦截、短信通道各种问题导致短信延迟验证码过期等等。所以一般来讲,仍然以下行短信为主,语音验证或上行短信作为对下行短信的补充。对了,我说的是Android,在iPhone上短信验证就没什么便捷可言了。
短信验证码的痛点在于:无法送达或延时送达的情况。用户都点击获取验证码,即使是短信通道到达率100%的也会有延时 的情况,继而增加了被刷的风险,一条短信几分钱,刷个几百万条就损失大了。就语音验证码来说,语音通道到达率更高,并且增加了安全性(短信有被截获的可能)。对身份验证有高要求的产品注册环节、交易确认环节、支付环节来说,语音验证码显然更可信,比如外卖、用车等。语音麻烦点在于接听电话,短信验证码直接顶栏弹出,无需切换页面,更便利。





