“我不是机器人”验证码如何工作?

“我不是机器人”验证码如何工作?

它是一张图形,因此需要庞大的 OCR,而大多数机器人显然都缺乏这种功能?即便如此,它还是一张固定的图形,实际上并不需要 OCR,只需对一个项目的库进行简单的模式匹配即可。我只是不明白它如何构成难以逾越的障碍来挫败机器人。

答案1

验证码会监控鼠标行为。虽然机器人可以轻松点击表单上的按钮,但很难模拟人类鼠标的不规则移动。

但这并非不可能:https://www.youtube.com/watch?v=fsF7enQY8uI

答案2

验证码中的文本将无法被 OCR 识别。OCR 使用文本的标准规则来识别文本。

合适的文本通常会被扭曲,不平行于水平线或沿直线平行延伸;并且包含 OCR 无法处理的随机垃圾。

即不符合文本外观的通常规则。

随着深度学习变得越来越普遍,验证码失效只是时间问题。

有许多不同的验证码,有些需要选择一些具有主题的图形(例如,这些图形是标志的一部分,稍后可以进一步完善,然后在组装整个标志并用相同方法提取文本图形后添加到下面的库方法中),而计算机无法辨别。对于这种类型的验证码,您总是被要求识别已知场景,并且通常是未知场景,以便在收到足够多的相同答案后将其添加到已知库中。

最常见的使用图像的方式有两种:

1
从一个单词生成一个随机扭曲的图像,然后添加额外的垃圾来混淆 OCR。就像通过添加“随机”垃圾词来“加盐”密码列表以阻止彩虹攻击一样。

2
另一种形式是使用照片(通常是文字)来表示某物,因为图像太复杂,无法自动识别,所以人们必须决定它是什么。通常,它超出了定义文本(或符号或其他东西)的计算机编程参数,并且通常被随机环境所包围。
这需要一个包含已知“文本”或其他参数(例如哪些是符号的一部分等)的大型照片库。

附注:
第二种方法的库通过提供 2 张用户尝试正确识别的图像而得到扩展。1
张图像是已知图像,另一张是未知图像。
正确解决已知问题证明您不是机器人。
足够多的人用相同的答案匹配/回答未知问题意味着现在有一个已知
问题,可以将其添加到已知库中。这就是 Google 地图识别街道/地名标志(然后是它们包含的文本)的方式,并且纠正了未通过 OCR 的古腾堡项目文本。

相关内容