分享人:吕俊儒
1.验证码的定义以及它的作用
2.常见的验证码形式以及优缺点分析
3.语音验证码和短信验证码的区别是什么
4.验证码为什么都会选择是4位或6位
5.重复发送验证码的话,是否应该发送同一个验证码?
6.更多讨论
7.参考文献
验证码是一种区分用户是计算机还是人的公共全自动程序,程序是指向请求的发起方提出问题,能正确回答的即是人类,反之则为机器。简单来说,验证码就是为了验证某个操作是人为还是机器行为。
可以防止恶意破解密码、刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试。一般多应用于注册、登录、忘记密码、留言、回复、绑定、支付等使用场景,多是在用户多次(一般是三次以上)注册、登录失败时激活使用。
2.1图片验证码,这种形式的验证码是最常见、实现最简单的验证码。通常由数字、字母混合组成,也有单纯使用数字或字母的,为了提高辨别难度,一般都会加入干扰线,如在背景中添加干扰线等。优点就是实现成本低。缺点是操作麻烦,用户需要在鼠标-键盘、中英文之间切换(对于中英文混合的验证码),看似只是简单的输入几个字母或数字,实际却需要多步操作,且不具备任何趣味性。
2.2图片辨别型验证码,这种形式的验证码操作简单,只需要点击鼠标即可完成。缺点就是如果图片太过相似,会大大增加用户的输入成本,甚至引起用户的反感。
2.3 滑块验证码,这种是比较有创意的验证码形式,通常需要用户拖动滑块从到特定位置,则代表验证成功。优点是操作简单、趣味性强。缺点是实现难度比普通的验证码要大。
2.4 手机短信验证码,种形式常见于登录、注册、找回密码等业务,随着手机的普及,许多APP都采用手机号码注册,为验证手机号码的真实性、防止恶意注册,一般都会发送验证码到手机。优点是适用性广,除了防止恶意注册登录外,同时完成了对手机号码真实性的校验,一举两得。缺点是需要一个专门的短信发送平台,并向电信运营商支付短信费用,部分APP的短信等待时间偏长,影响用户体验。
2.5 手机语音验证码,这种形式主要是对由于各种原因无法正常接收短信验证码的补救措施。优点是操作简单、真实性强、安全性高,缺点是实现成本高。
3.1、安全性方面,从短信彩信两者验证码的安全程度相比较,短信验证码比较容易中木马,导致个人信息的泄露而造成不必要的骚扰。并且短信验证码所对应的是手机号码真实用户,所以会衍生出专门做短信验证码刷单的不法分子。语音验证码安全指数更高,木马不容易入侵,而语音验证码通过播报的形式信息更加安全。
3.2、发送形式方面,短信验证码是通过发送手机短信,输入一串数字的方式来验证的,而语音验证码则是通过电话的形式,重复播报一串数字输入相应数字来验证一种方式。
3.3、到达率方面,短信验证码是大众最容易接受的一种形式,但是当身处郊外或信号不好的偏远按地区,则会出现收不到短信验证码的情况,而语音验证码会一般不会出现不能接收的情况,保证用户顺利收到验证码。
3.4、用户体验方面,短信验证码有限期限更长,只要你不删除信息会一直保留在手机里,而验证码本身的有限期限为10分钟到30分钟不等。而语音验证码是即时性的,如果用户不小心挂断了电话就收不到语音验证码,有时候用户不方便接听电话时语言验证码就不太合适
3.5、整体来说,其实语音验证码+短信验证码的二合一更为高效率,两者互补比较好,如果我们消费者点击短信验证码之后收不到,那么就可以直接点击语音验证码,对于网站来说,可以确保客户不会流失。
手机验证码一般都是数字,都是有一定几率被用户猜中的,4位的话,有1/10000=0.01%的概率,6位的话,有1/1000000=0.0001%的概率。而用户一次记住4位数字是容易的,6位就没那么容易了,所以设计手机验证系统的时候,就可以有如下选择了: 为了细致的用户体验,对0.01%的破解概率不是太在乎的话,就用4位的; 为了更安全,使猜中概率接近于0.0001%(近乎于不可能事件了吧),使用6位的;
不应该重复发送同一个验证码,一般发送新的验证码后,上一条验证码即使在有效期内也直接失效。如果发送同一条验证码,安全风险就会很高
人人都是产品经理-总结:验证码常见形式及个人思考
简书-语音验证码和短信验证码的区别
感谢观看,如有出错,恳请指正
BY : 吕俊儒