为什么现在的网站都要放验证码?
今天的推文小编将和大家聊一聊验证码,主要内容会包括什么是验证码、验证码是如何工作的、常见的验证码类型以及为什么网站要放验证码。
相信小伙伴们在回家抢票或是网上冲浪的时候总会见到各种千奇百怪的验证码。近年来,验证码的形式也被玩儿的越来越花,比如这样的:
这样的:
还有这样的:
面对这些验证码,你可能会忍不住陷入沉思:这种反人类的东西到底有什么用呢?
其实,验证码的用处很简单,一句话就能讲清楚:用来区分计算机和真正的人类。
验证码(CAPTCHA)英文全称是“Completely Automated Public Turing test to tell Computers and Humans Apart”,直译就是全自动区分计算机和人类的图灵测试。
相信大名鼎鼎的图灵测试大家都听说过,而验证码其实就是一种图灵测试的反向变种应用。
在互联网刚在全球普及时,最让大家苦恼的就是邮箱里大量的垃圾邮件,公司封号删除的速度远赶不上垃圾邮箱注册程序的速度。
一位叫Luis的程序员发现计算机程序很难认出手写体的文本,而人类可以轻松看懂,于是在注册账号时以此原理设置了门槛,早期的验证码从此而生。
验证码有很多种类,最常见的验证码类型有:基于文本的验证码、基于图像的验证码和基于音频的验证码。
基于文本的验证码:
通常由一串随机生成的扭曲字符序列和文本框构成,只需在文本框中正确输入看到的字符即可。
对爬虫来说,简单识别图片中的字符并不难,因此为了增加难度,衍生出了需要输入数学运算结果的验证码、带有3D效果的验证码、图片模糊的验证码等。
基于图像的验证码:
通常为用户提供的是物体、动物、人或风景的图像,验证码通常会要求用户选择对正确的图像进行标识,或点击藏在图片中的文字,或是拖动滑块使图像方向正确,或对图片进行拼贴完整等。
基于音频的验证码:
利用从录音中提取的随机单词或数字,将其组合在一起,甚至给音频添加一些噪音,然后要求用户输入在录音中听到的单词或数字,或是用户将内容诵读出来。
与文本验证码和图片验证码相比,声音验证码的处理难度更升了一个等级,因为让数据抓取工具学会倾听录音并非易事。
当然,可能还会有小伙伴在纠结,每次都在为了输入正确的验证码上浪费了太多时间,不过你千辛万苦输入正确的验证码可能并没有被浪费,而是在为人工智能技术添砖加瓦!感兴趣的小伙伴可以自行百度阅读下这篇文章:《 你以为自己在填验证码,其实你是在给 Google 义务劳动 》。
如今计算机的普及,人们对计算机相关的自动化任务、服务变得习以为常,因此提升整体服务环境的安全级别就变得很重要。
验证码是在进行人机交互时确保是在与人类打交道的一个重要步骤,尽管计算机的识别技术越来越强,验证码也变得越来越复杂,输入验证码还是区别人和计算机最有效率的办法。
验证码除了能够保护网站免受欺诈性注册、垃圾邮件困扰,还能在一定程度上阻止自动收集、自动注册、使用网站的爬虫。
在反爬虫策略思路介绍的文章中我们提到,验证码验证也是一种反爬虫措施:一旦在采集数据的过程中出现验证码,爬虫的数据采集工作就会因此而中断。因此,处理验证码对网络数据爬取非常重要,下篇文章中我们将为大家介绍常见的验证码破解方式,欢迎大家持续关注“企通查”~