谷歌公布了验证码服务 CAPTCHA 的一个新 API,该 API 能为大多数用户提供了一个非 CAPTHA 的验证码体验。
多年以来,Web 站点尽管得到了无处不在的 CAPTCHA 验证码服务的保护,但是用户一直抱怨正确读取一些扭曲字符的困难。一年前,谷歌推出了一个基于视频 / 音频的验证码服务的增强版,称为 reCAPTCHA,该验证码服务使用数字代替字符。用户发现阅读数字非常容易,并且在很长一段时间广泛应用。
但是,谷歌地图团队通过使用深层神经网络已经开发出了一种从街景图像中读取数字的方式,在一篇科学论文中提出了他们的研究成果。为了证明他们的系统运行效果,他们试图破译最难的reCAPTCHA 验证码服务,结果表明,成功理解数字的精确度达到了99.8%,新的方式应该能够阻止机器人的破解。
请注意,机器学习系统能够破解reCAPTCHA 的验证,于是,谷歌决定使用分析技术来自动地确定用户是人还是机器人。他们增强了自己的技术,由于Web 站点采用新的“No CAPTCHA reCAPTCHA”验证服务,所以大多数用户将不在需要解决CAPTCHA 带来的问题,只需简单的点击复选框。如果分析引擎不确定用户是人的话,用户将必须进行一个简单的验证,如选择相似的照片。在极端的情况下,分析引擎才落后于旧的reCAPTCHA 验证码服务。据谷歌透露,新reCAPTCHA 验证码服务的早期采用者如WordPress 和Humble Bundle 在过去的一周内分别有60% 和80% 的用户体验到了一个NO CAPTCHA 效果。
用来确定用户是人还是机器人的算法并没有公开并且非常有可能一直保密不公开,所以垃圾邮件的制造者将找不到欺骗系统的方法。
Web 开发者要想使用新的reCAPTCHA API ,就需要从Google 获得一对key ,新的reCAPTCHA API 提供了一个自动化或明确地渲染Widget 的方式,并专门为移动设备进行了优化。该API 支持禁用了JavaScript 的用户,且支持大多数现代的浏览器,如Chrome 3+、Firefox 3+、 IE 7+、 Opera 10/10+、Safari 4+。
Google 还提供了 reCAPTCHA API 的 HTML-JS 和 PHP 的一些实例,以供读者学习。
查看英文原文: Google Uses Machine Learning to Simplify CAPTCHA
感谢崔康对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。
评论