快好知 kuaihz

关于验证码的一些想法

验证码是一种区分用户是计算机还是人的公共全自动程序,由卡内基梅隆大学的四位教授提出的。正确键入验证码,才可以继续用户行为,所以验证码能够有效的防止恶意破解密码、刷票、论坛灌水、刷页等。验证码一般在注册、登录、留言回复、绑定、支付等场景下出现。

其表现形态多种多样大致如图:

机器产生的验证码,应该有以下特点:

机器在短时间内可以生成大量不相同的问题

人可以在短时间内回答出来

机器无法在短时间内回答出

验证码的存在有其必要性,但用户为之付出了很高的使用成本,据统计用户停留在验证码的时间超过5.5秒,大大影响了用户的对产品的体验感受。那么我们如何权 衡利弊,在安全和易用性上做取舍呢?生活中接触到的最普遍的验证码,是以字母、阿拉伯数字出现的,我将对这一种进行分析。

一、验证码的出现

原则是:非必要的时候尽量不用验证码。例如:同一用户名或同一IP地址3次输入错误的时候,才启用验证码。

二、验证码的识别

在“字母/数字”验证码中,主要是防止通过OCR软件识别那些容易辨认的验证码,同时要提高人眼的辨识度,可以通过颜色,字体,减少干扰等方式。例如:1、L、I、0、O、Q、g、9、2、Z、类似的字母都不应当出现在验证码,以降低用户识别难度。

三、统一输入类型

最好统一为单一类型识别,如:全部字母,全部数字。建议不要混合输入,混合输入的缺点是需要切换输入区域;还有因没切换中英文输入而打出中文的可能。

四、输入大小写问题

验证码最好采取输入时不区分字母大小写,统一识别,并在旁边提示用户可不区分大小写。在验证码图片显示时,最好统一为小写或大写字母,便于识别,输入框锁定英文输入,以免打出汉字。

五、验证码的长度

在允许的条件下,验证码不要过长,通常我们见到的都是4位的验证码。当然也有以英文单词作为验证码,也不失为一个好的办法。

六、验证码刷新问题

当用户更改验证码时,验证码应当保证能够快速刷新,减少用户驻留时间。一般会默认点击验证码自动刷新,最好能够提示用户“如何刷新”,快速引导用户。

七、验证输入错误时

最好能在用户输入时,及时判定验证码是否输入正确,而不要等到用户点击提交后,再告诉用户“您的验证输入错误!”。如果用户输入错误时,尽量将用户损失降到最低。尽量降低验证码刷新机制,更多的保存用户已经填过的信息,不要让用户反复填写表单。

将需要填写验证码的信息与非必要验证信息相分隔也是一个好办法

八、其他问题

网页缓存:验证输入框不需要记录历史内容;

全角/半角问题:输入法的全角/半角输入的数字是不一样的,即全角数字1234和半角数字1234是不同的。一般输入默认为半角,当用户输入全角时提示用户切换。

最后:验证码每天都在重新设计,如果真的有一种完美的验证码,早就流行开了,而你没看到是因为那些方案都比现在的更不靠谱而已。

本站资源来自互联网,仅供学习,如有侵权,请通知删除,敬请谅解!
搜索建议:关于验证码的一些想法  想法  想法词条  验证  验证词条  一些  一些词条  关于  关于词条  
设计

 5个设计小技巧,越早会越好

平时很喜欢一些干净的设计,让人感觉很舒服,阅读内容也清晰,很多设计师在设计时,经常细节过多,会显得累赘,有时候设计也需要用到英文,但只专注到了字体选择,却忽略了...(展开)