使用视错觉作为验证码

信息安全 Web应用程序 验证码
2021-08-17 10:14:15

在人类对视错觉图形的感知中使用“缺陷”是否可以让系统区分人类和机器(使用这些图片,如CAPTCHA)?

一些示例是人类可能会计算“点”(实际上并不存在)或选择图片的哪些部分具有匹配的颜色(当颜色由于错觉而实际上不匹配时)。

一些示例图片: 所有汽车尺寸相同

上面所有的汽车尺寸都一样,但人类认为其中一辆更大。

橙色圆圈相同大小

上面的橙色圆圈大小相同,但人类认为其中一个更大。

正方形相同颜色

上面的方块颜色相同,但人们认为底部的方块颜色较浅。用手指覆盖箭头指向的线,您现在将像计算机一样看到正方形。

如果要求计算机从这些图片中选出最大的汽车或圆圈或较轻的正方形,它会比人类更难。

2个回答

这可能在很长一段时间内都行不通,因为这些“缺陷”中没有任何东西是机器无法复制的。

您需要解决的第一个问题是创建一种算法来生成这样的图像,这些图像对于大多数人来说很容易解决,但对于当前的图像识别来说却很难解决。一旦你有了这个系统来保护重要的网站,它就会变得足够有吸引力来破坏它。然后这只是时间问题,即破解验证码的努力与破解它可以获得多少收益有关。

视觉错觉是由人类视觉系统为了优化数据处理或丢弃无用信息而使用的捷径引起的。它们是众所周知的现象,没有什么比常规图像识别更难解决的了。事实上,我想说理解一个复杂的场景,比如计算给定操场图像中儿童的数量,要比识别两条线中的哪一条“看起来更长”要困难得多。