最常见的有关验证码的问与答

2年前 (2022) 程序员胖胖胖虎阿
223 0 0

一、什么是验证码?

验证码(CAPTCHA)全称为:Completely Automated Public Turing test to tell Computers and Humans Apart,全自动区分计算机和人类的图灵测试,是一种区分用户是计算机还是人的公共全自动程序。最早由卡内基梅隆大学的路易斯等人于2002年提出,为了解决计算机批量操作往人们的邮箱发送垃圾邮件的问题。

验证码(CAPTCHA)发明之初会让用户输入一个扭曲变形的图片上所显示的字母或数字以此进行验证。

最常见的有关验证码的问与答

之所以将图片上的文字变得扭曲主要是为了防止光学字符识别(OCR)等计算机程序自动识别出来。验证码的测试原理与由人类考验计算机的图灵测试不同,它是由计算机考验人类,因此也被称为反向的图灵测试。

二、验证码的作用

通过上面的文字我们知道,验证码是用来区分计算机和人类的自动程序。结合我们的日常生活,我们发现验证码通常出现在登录、注册、领优惠券、购买游戏装备、购票、发帖等场景,以上场景都有可能因为未设置验证码而让黑灰产趁虚而入。他们一般会使用计算机程序进行大批量远超于正常用户效率的操作,比如垃圾注册、恶意登录、刷票、恶意抢占飞机票、薅羊毛等违规甚至违法的行为。以上的种种行为都将对网站或者APP造成巨大的损失,同时也会随之降低使用该网站或APP正常用户的体验感。

当网站或软件在以上场景设置验证码后,黑灰产若想通过验证达到目的就必须破解验证码,这样一来便提高了黑灰产牟利的成本,当成本高于所获利润时,黑灰产就不得不放弃了。这样一来便有效阻止了黑灰产的行为,从而降低了网站、软件内虚假的机器流量。

三、验证码的常见形式

截止到目前为止,我们现在常见的验证码主要有以下5种:

1. 字符验证码

文章开头我们讲到路易斯首次提出“验证码”的概念,发明了验证码。在验证码发明之初只有一种形式,那便是字符验证码,它的判断方式是检验输入的答案是否正确,若正确则通过验证。

最常见的有关验证码的问与答

字符验证码最早由扭曲的字母或者数字呈现,后来随着技术的进步,单一的扭曲字母或数字已经不能阻挡计算机自动识别并提供正确的答案。于是验证码在原有的基础上通过添加噪点和线条、改变颜色、重叠文字等方式提高计算机识别的难度,但也因此增加了正常用户识别验证码的难度从而导致他们进入网站或使用软件的体验感变差,越来越多人吐槽验证码难用。不仅如此,近些年尽管提高了验证难度,字符验证码也因为图神经网络、OCR、人工打码平台等的出现发展逐渐变得不再安全,破解率大大提升。

2. 行为式验证码

现在我们最常看见的“拖动滑块完成拼图”的验证码便是行为式验证,它又被称作“滑动拼图”验证码。滑动拼图验证码的雏形如下图,在2012年被应用在武汉大学论坛的注册场景。
最常见的有关验证码的问与答

字符验证码在那时的破解率已经高达70%,传统的验证码的弊端逐渐显露,行为式验证码应运而生。它基于生物的行为特征,判断进行验证的行为轨迹是否符合人的规律。就是当你用鼠标拖动光标将拼图放到正确位置的时候,计算机在你看不到的地方判断你刚刚的操作是否为真正的人类。如果说字符验证码在意的是验证结果,那么行为验证就是完全注重过程了。

最常见的有关验证码的问与答

自此,基于行为特征的验证码被人们所看见并逐渐发展成滑动拼图的形式,应用在全国乃至全球的各个网站或APP上。

最常见的有关验证码的问与答

除此之外,行为验证码并不单单只有滑动拼图一种,还包括文字点选、图标点选、语序点选、选择符合的图片等。

最常见的有关验证码的问与答

最常见的有关验证码的问与答

经统计用户平均花费1.8秒的时间就能通过行为式验证,相较字符验证码进行验证需耗时5~10秒,它大大地提高了大家验证的效率,缩短了至少2.7倍的验证时长。

3. 一键登录验证

一键登录验证又被称为“无感验证”,顾名思义就是当你在登录时,不会弹出任何验证码需要你手动进行验证,此时的软件会自动进行验证来证明你是本人而非机器,整个登录验证过程你会毫无感觉。

最常见的有关验证码的问与答

这种无感验证的验证形式的实现原理是在打开数据网络的情况下,与国内三大手机运营商移动、联通、电信直连为软件提供认证功能。能准确识别软件上的手机号与数据网络发送方是否一致,一致则通过验证。这一验证方式简化了登录注册步骤,能助力APP拉新运营,也因此备受各大软件的喜爱。

4. 短信验证码

当我们在网站或软件注册账号时,通常需要输入手机号作为注册的条件,同时为了避免恶意的虚假注册,该平台会往你提供的手机号发送一条短信,以此验证进行注册的是你本人而非机器或他人。与其他验证形式不同的是,在知道账号和密码的情况下,短信验证可以最大程度保证登录账号的仅限本人。一般情况下,短信验证码具有一定的时效性,30秒、3分钟、30分钟都有,具体以实际情况为主。这里提醒大家,不要轻易将短信验证码透露给他人。

最常见的有关验证码的问与答

5. 语音验证码

语音验证码主要为视力障碍人群、老年人准备,当这些用户请求语音验证时,语音验证界面会自动播放一段语音,例如:“请输入您听到的内容 五二七零一三 ”。语音验证界面如下:

最常见的有关验证码的问与答

最常见的有关验证码的问与答

版权声明:程序员胖胖胖虎阿 发表于 2022年9月13日 上午7:40。
转载请注明:最常见的有关验证码的问与答 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...