CAPTCHA是用于安全目的的什么?

4

CAPTCHA在安全问题上起到了什么作用?许多网站的注册表单都有这个字段,但它是如何工作的?


6
“Completely Automated Public Turing test to tell Computers and Humans Apart.” reCAPTCHA有一个相当不错的解释:http://www.google.com/recaptcha/learnmore - Piskvor left the building
5个回答

8

完全自动化的图灵测试,用于区分计算机和人类

它通过要求用户输入难以自动识别的图像中读取的数据,防止黑客使用自动脚本发布表单。文本也可以是声音形式,如@BeRecursive的评论所述。请参见此网站。

它不仅用于登录,还用于其他数据输入表单。在Stack Overflow上,如果您编辑答案或问题多次,将在接受进一步编辑之前提示您。

有两种主要形式。一种是用户必须输入单个字符组合,另一种,例如在SO上,有两个单词。

带有两个单词的CAPTCHA通常由Web应用程序已知的一个单词和正在尝试解密的第二个单词组成。请参见此网站(感谢@Piskvor)。第一个单词用于验证用户,对第二个单词的答案与其他用户对该单词的答案进行比较,并以此确定文本的可能含义。这是作为公共服务执行的,为扫描大量历史文档的图书馆和公共档案等组织提供帮助。光学字符识别(OCR)并不完美,有时无法确定含义。因此,将单词提供给参与网站的CAPTCHA,并确定其含义。这个过程对于网站的用户没有影响,因为只有第一个单词用于确定他们是否是机器人。


2
CAPTCHA是“Completely Automated Public Turing test to tell Computers and Humans Apart”的缩写,意思是一个简单的测试,可以让程序员轻松地区分用户是计算机还是人类。通常这种测试是可视化的,并且基于目前物体识别(包括字符)技术尚处于萌芽阶段的事实。对于人类来说,识别字母是微不足道的,但对计算机而言则非常困难。
这确保只有能够轻松识别CAPTCHA中物体(通常是字符)的用户才能填写表单。一般用于防止机器人进行自动表单填充(以及防止垃圾邮件)。

2
它的目的是作为挑战-响应测试,以证明使用它的人是一个人而不是自动程序。它并不能真正“保护”网站,只是使自动系统访问该网站的功能变得越来越困难。其理念是,某些功能(例如在论坛上发表评论)应该仅由真正的人类完成,而不是自动化进程。
这种复杂性可以大相径庭。常见的“扭曲文本”CAPTCHA需要用户输入显示在图像中的文本,旨在使计算机难以识别,但这些软件越来越容易被打败。出于无障碍考虑,还有播放短字词片段并让用户输入所听到内容的音频CAPTCHA。我甚至看到过一些简单问题的CAPTCHA,任何合理的人都应该能够回答,但可能会让没有准备好的计算机感到困惑。我最喜欢的一些是一个图片矩阵,上面写着“点击猫”或其他无害的东西,计算机可能很难做到,但人类可以。
参见维基百科:http://en.wikipedia.org/wiki/CAPTCHA 参见Captcha.net:http://www.captcha.net/

1

CAPTCHA只是一种以图像或声音形式出现的谜题。 "愚蠢" 的机器人无法解决这个谜题,因此它们无法输入正确的答案。如果没有输入正确的答案,则无法注册。就这么简单 :)


不一定是图像!也可能是声音! - BeRecursive
@BeRecursive 是的,但我还没有在其他地方看到过这个。它会对用户造成太多干扰。 - Petar Minchev
重点是这是图灵测试,而不是“以图像形式出现的谜语”。 - BeRecursive
1
我认为放置声音的唯一目的是为了盲人用户。 - Petar Minchev
CAPTCHA可以是图像和声音的混合 - 这通常发生在试图尽可能让网站易于访问的网站上 - 部分视力受损的用户可能会对图像有困难,因此提供声音 - 因此Berecursive在他的第一个答案中是正确的。 - stack72
但声音通常听起来非常可怕,甚至尖锐的人也无法真正理解正在说什么。通常事情是从句子的中间某个地方开始阅读的。 - Robert Koritnik

1
这是一个试图阻止机器人在网站上注册的尝试,它通过生成带有文本的图像来实现。其理念是很难(虽然显然不是不可能)编写一个能够识别图像中的文本的机器人,这也是为什么文本使用奇怪的字体(有时甚至让人类,包括我自己,无法阅读!)。
这里有一个好的链接

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接