当前位置: 首页 > 知识库问答 >
问题:

Google reCAPTCHA v2在幕后是如何工作的?

郜彬
2023-03-14

这篇文章指的是Google ReCaptcha v2(不是最新版本)

最近,谷歌推出了一个简化的“验证码”验证系统(视频),用户只需点击验证码就可以通过验证码。

但是它怎么能仅仅通过点击来区分机器人和人呢?

共有1个答案

孟乐逸
2023-03-14

这只是猜测,但基于谷歌对他们使用的“风险分析引擎”的引用(http://googleonlinesecurity.blogspot.com/2014/12/are-you-robot-intromotion-no-captcha.html)

我假设它会观察你在点击之前的行为,你的光标在进入复选框的路上是如何移动的(有机路径/加速),复选框的哪一部分被点击了(随机位置,或者每次都死在中心),浏览器指纹,谷歌cookies和内容,点击位置历史记录绑定到你的指纹或帐户,如果它检测到一个,等等。

很难伪造“有机”行为,以至于它会愚弄一个不断学习的模式检测引擎。在不确定的情况下,它仍然提示您匹配实际的验证码字符串。

 类似资料:
  • 进程A使用shmget创建了一个共享内存“1234”。在此之后,进程A使用SHMAT将内存附加到自身。 “附加”到底是什么意思?是否存在同一内存的两个副本?如果没有,那么这个内存到底存在于哪里?

  • 我理解递归的逻辑,一个函数调用一个基例的函数然后终止,我在这里有一个代码,它记录一个简单的递归,我没有得到的是它开始记录达到条件,条件满足:0? 我希望这段代码首先记录输出,最后达到条件?

  • 问题内容: 在我的数据库中,我可以说有5000多个用户,现在,如果我在主父节点中使用来获得多少人, 我知道getChildrenCount会返回一个带有父级内部子级数量的long,但这会如何影响性能? 几个月前,我制作了一个应用程序来管理用户,该应用程序比通过Web控制台更有效地管理用户,因为页面变得静态并且用户不断增长。 现在,我想知道是否每当我请求用户数量时,该应用程序就会循环遍历5000+个

  • 我是一名前端开发人员。后端开发人员离职了。因此,我还将处理后端部分。我没有任何后端开发经验。我正在分析后端代码。我有几个问题。我想澄清我的概念。 我已经附加了Java代码文件。 1-这些进口产品的用途是什么 2-为什么在声明每个变量之前先放置@JsonProperty? 3-为什么我们在少数几个方法中使用类名?例如: 4-有什么用: 5-有什么用: 6-hashCode()方法实际上在做什么? 请

  • 我有一些这样的代码: 根据文件: mergeDelayError:将发出可观测值的可观测值展平为一个可观测值,使观察者能够从所有源可观测值接收所有成功发出的项目,而不会被其中一个可观测值的错误通知打断。 到目前为止,我理解。我的问题是关于take()方法:它会等待所有可观察对象返回某个结果,然后再获取第一个结果,还是从第一个完成的可观察对象获取第一个结果? TIA,

  • 应用程序具有上下文路径-->/spring-form-simple-project 因此,为了访问,我使用: 这个控制器又返回student.jsp,当提交这个student.jsp时,它用-->@RequestMapping(value=“/AddStudent”,method=RequestMethod.post)调用controller 任何关于这通常如何工作的指示都将是有帮助的。 谢谢!