CAPTCHA 是如何运作的?

Advanced Bot Mitigation Engineer
找到一个从未被迫向机器证明自己不是机器人的人会很困难。用消防栓来解开奇奇怪怪的谜题,这似乎很奇怪,但这篇文章会让你觉得这并不奇怪。你很快就会了解验证码是如何运作的,以及你通过解决验证码是如何为人工智能训练做出重大贡献的。此外,你还会了解 reCAPTCHA 是如何运作的。
为什么需要验证码?
完全自动化的公共图灵测试用来区分计算机和人类,简称 CAPTCHA。有时也被称为人类交互证明 (HIP)。CAPTCHA 测试的目的是区分人类和机器人。传统的 CAPTCHA 挑战用户识别文本,通过拉伸和扭曲字母、数字和其他字符。虽然这项任务对人类来说可能很简单,但对于机器人来说却很难完成。
艾伦·图灵,有时被称为现代计算机之父,于 1950 年公布了图灵测试。这个测试的目的是证明机器人是否可以模仿人类的思维过程。在测试中,审问者会向两名参与者提出一系列问题。有两名参与者:一个人和一台机器。审问者只能根据他们的回答做出假设,因为他们不知道谁是谁。如果审问者无法识别参与者,那么这个系统就通过了测试。
正如其名称所暗示的那样,传统的 CAPTCHA 基于图灵测试。
验证码是如何运作的?
区分人类和机器人的目的是验证码。CAPTCHA 测试通过向不同的用户展示不同的图形来做到这一点。为了尽可能提供尽可能多的不同版本,维护着一个庞大的 CAPTCHA 数据库。如果解决方案总是相同的,或者隐藏在图像的信息中,那么机器可以在短时间内破解验证码。
虽然 CAPTCHA 旨在仅由人类完成,但并非每个人都能在第一次尝试时完成。专家估计,80% 的 CAPTCHA 可以由人类解决,而 0.01% 可以由计算机完成。
由于计算机在分析视觉数据方面不如人类擅长,因此大多数传统的 CAPTCHA 测试都依赖于视觉感知。大多数人相当擅长识别模式,并在不相关的事物之间建立联系。联觉是指在不存在的情况下,识别先前识别的模式的能力。例如,当我们的大脑试图将信息与模式联系起来时,我们可以在云层中识别出可识别的形状。
对于视力不好的人,验证码会以音频格式提供。为了防止机器人通过这些测试,音频中通常会有一些背景噪音。
验证码类型
根据材料的种类,验证码有三种类型:基于文本、基于图片和基于声音。
基于文本的验证码
最流行的类型是将几个理由或表达、字符和数字组合在一起。
这些字符可能具有纹理背景和奇怪、扭曲的呈现方式,使得非人类更难阅读。
基于图片的验证码
通常是一个网格状的方形图片,描绘着常见的物体。用户必须选择包含必要元素的图片。谷歌经常要求街景识别常见的物体,比如人行横道和某些类型的车辆。大多数访问者都能非常快地完成基于图片的验证码。然而,为了识别一个物体,机器人将不得不执行一个更长的比较方法,这将阻碍它完成预期目标的进度。与基于文本的验证码相比,基于图片的验证码是一种更受欢迎的反机器人策略,因为基于图像的检查的复杂性。
基于音频的验证码
基于文本和基于图片的验证码经常与基于音频的验证码结合使用。音轨包括背景噪音和一个语音录音拼写出符号。噪音通常是一些技术噪音,比如静电,它充当了一道屏障。机器人无法在基于音频的验证码中区分突出显示的符号和背景噪音。
reCAPTCHA:它是什么?
Google 提供了一个名为 ReCAPTCHA 的工具,它与标准 CAPTCHA 具有相同的目的。这是网站常用的免费网络保护解决方案。您可能已经看到过 reCAPTCHAs,其中用户需要选中一个框而不是解决问题。我们将其称为“无 CAPTCHA reCAPTCHA”。如果用户选中该框,但系统仍然不确定,他们将被提示提供身份证明以证明自己是人类。
我们如何使用 reCAPTCHAs?
最初,书籍被数字化,街名照片被使用,报纸文本片段被提取,用户被要求解码单词或词组。一个人可以很容易地从图片中解读单词,但机器人很难做到这一点。
随着计算机越来越先进,reCAPTCHAs 也变得越来越复杂。随着时间的推移,其他 reCAPTCHA 类型被创造出来;它们包括复选框、图片识别和不需要用户输入的一般用户行为评估。
比较 reCAPTCHA V2 和 V3
尽管看起来似乎是这种情况,但 reCAPTCHA v3 并不是 reCAPTCHA v2 的更高级版本。这两种解决方案实际上满足了不同的需求,并且彼此之间非常不同。
reCAPTCHA v2 定义为选中一个标记为“我不是机器人”的框。在大多数情况下,这标志着考试的结束;但,在极少数情况下,用户可能需要进行额外的测试以验证他们的身份。
因为 reCAPTCHA v3 在后台使用高级风险分析和机器学习运行,您可能甚至没有意识到它的存在。网站管理员会根据用户的行为从 ReCAPTCHA v3 获得一个分数。根据您的分数,您会被归类为机器人或人类。分数越高,是人类的可能性就越大。网站管理员最终决定是阻止、继续测试还是让用户通过。
V3 和 V2 只在特定情况下使用。对于想要限制自动访问者的较小网站,reCAPTCHA v2 比较合适。一个网站只需两行 HTML 代码就可以添加 v2。
人工智能和验证码
验证码和 reCAPTCHAs 是人工智能 (AI) 训练的完美例证。如前所述,当算法要求例如单击照片中的每只猫时,它会根据其他用户的响应来确定答案是否正确。
此外,这些数据会为人工智能提供支持,使计算机能够更准确地识别照片。
计算机难以识别图像。例如,当从不同角度拍摄照片时,机器人无法像人眼那样建立相同的关联。但是,随着当今最先进的技术,计算机变得越来越复杂,而机器人由于机器学习变得越来越智能。
可以绕过 CAPTCHA 吗?
通过绕过验证码,可以使这些测试变得更好,而改进解决方案的第一步是找出它存在哪些不足。每次机器人完成验证码,它都离开发更好的考试更近一步。然而,绕过验证码是一个艰巨的挑战。
被列入黑名单或收到验证码是使用网页抓取时遇到的两个最常见问题。这些问题可能会导致大规模公共数据收集工作中断。像 Scrapeless 这样的几家公司已经找到了绕过 CAPTCHA 的方法。
厌倦了不断被CAPTCHA阻碍你的网页抓取工作?
向您强烈推荐 Scrapeless - 性能强大的一体化网页抓取解决方案。
Scrapeless:目前最好的一体化在线抓取解决方案!
借助我们强大的工具套件,可以轻松发挥数据抓取的全部潜力:
最佳 CAPTCHA 解码器
自动解决复杂的 CAPTCHA 问题,确保持续而丝滑地抓取网页数据。
免费试用开启中!
总结
网站通过验证码来防御垃圾邮件和滥用。验证码试图区分人类用户和自动程序,方法是提出一项只有人类才能完成的测试。图灵测试是验证码的灵感来源。
Google 提供了一种名为 ReCAPTCHAs 的 CAPTCHA 解决方案。reCAPTCHA 有多种形式,其中一些甚至不需要人工参与。reCAPTCHA 的确切原因尚不清楚,但可能的原因包括浏览器历史记录、cookie 跟踪和实时网站参与度。
由于 CAPTCHA 的主要目标是让机器人难以解决,因此在计算机上绕过它很困难。另一方面,某些解决方案(例如 Web Scraper API)允许在没有 IP 限制或验证码的情况下进行网页抓取。
在Scrapeless,我们仅访问公开数据,同时严格遵守适用的法律、法规和网站隐私政策。 本博客内容仅用于演示目的,不涉及任何非法或侵权行为。 对于使用本博客或第三方链接的信息,我们不做任何保证,也不承担任何责任。 在参与任何抓取活动之前,请咨询您的法律顾问并查看目标网站的服务条款或获取必要的权限。