reCAPTCHA
是卡内基梅隆大学的一帮人搞出来的,它的技术并没有什么先进之处,但是创意有点意思。世界上面有很多将图书电子化的计划,基本是把书籍扫描了以后用
OCR 软件识别。有些情况下面 OCR 软件自己觉得某些词的识别结果并不是非常有把握。通常情况下面是通过雇佣劳力来肉眼校对。reCAPTCHA
项目认为这个工作不妨交给全世界大量填写认证码的人来完成。
一般图形认证码系统都是只生成一个单词的,reCAPTCHA
生成的图片里面有两个单词,其中一个是机器生成的,有正确结果的单词,另一个则是扫描出来的有问题的单词,这个词没有正确结果。如果用户提交上来的结果里
面机器生成的那个是对的,那么系统就认为另外一个也很有可能是对的。一幅扫描图片展示给多个用户如果结果都是一样的,他就将这个结果作为最终校对结果。这
样就实现了利用人力来分布式校对文稿的目的。更具体的细节可以看 http://recaptcha.net/learnmore.html
There are three ways to use reCAPTCHA: using an application plugin, using a library
for your programming language, and using the web-based API.
How to reCAPTCHA Your Java Application:http://wheelersoftware.com/articles/recaptcha-java.html
在你的pom.xml文件加入:
<dependency>
<groupId>net.tanesha.recaptcha4j</groupId>
<artifactId>recaptcha4j</artifactId>
<version>${version}</version>
</dependency>
...
<repositories>
...
<repository>
<id>taneshanet</id>
<url>http://tanesha.net/maven2</url>
</repository>
...
</repositories>
在你的jsp页面这样:
<%
// create recaptcha without <noscript> tags
ReCaptcha captcha = ReCaptchaFactory.newReCaptcha("my-public-key", "my-private-key", false);
String captchaScript = captcha.createRecaptchaHtml(request.getParameter("error"), null);
out.print(captchaScript);
%>
Checking the captcha goes like this:
<%
// create recaptcha without <noscript> tags
ReCaptcha captcha = ReCaptchaFactory.newReCaptcha("my-public-key", "my-private-key", false);
ReCaptchaResponse response = captcha.checkAnswer(request.getRemoteAddr(), request.getParameter("recaptcha_challenge_field"), request.getParameter("recaptcha_response_field"));
if (response.isValid()) {
out.print("Success");
}
else {
out.print(response.getErrorMessage());
}
%>
https://svn.tanesha.net/svn/sandbox/recaptcha4j-example/trunk/
.
当然你也可以在spring里面配置:
<bean id="reCaptcha" class="net.tanesha.recaptcha4j.ReCaptchaImpl">
<property name="privateKey" value="my private key" />
<property name="publicKey" value="my public key" />
<property name="recaptchaServer" value="http://api.recaptcha.net" />
<!-- Or, if you want to use SSL, then use this:
<property name="recaptchaServer" value="http://secure-api.recaptcha.net" />
-->
<property name="includeNoscript" value="false" />
</bean>
http://tanesha.net/projects/recaptcha4j/
分享到:
相关推荐
Google reCaptcha是目前广泛应用的一种智能验证码系统,它提供了两种主要类型的验证码:可见的reCaptcha和不可见的invisibile reCaptcha。本项目"Google reCaptcha验证码对接Demo"是一个Java实现的示例,它展示了...
很多国外网站采用了Google的reCaptcha验证,但在国内上网是无法显示该验证的,即使用梯子也无法解决,可以采用谷歌浏览器插件来解决此问题 使用谷歌浏览器,打开 设置--->扩展程序,勾选开发者模式,把Header ...
标题中的“Python-以91的准确率击败最新版本的ReCaptcha”表明这是一个关于使用Python编程语言,通过机器学习技术来解决谷歌ReCaptcha验证的项目。ReCaptcha是谷歌提供的一种反垃圾机器人服务,它通常用于确保网络...
在互联网世界中,安全验证是保护网站免受恶意自动化攻击的重要手段,Google的reCaptcha就是其中的一种。然而,有时用户在尝试与某些网站交互时可能会遇到reCaptcha验证问题,无法正常完成任务,比如注册、登录或者...
很多国外网站采用了Google的reCaptcha验证,但在国内上网是无法显示该验证的,即使用梯子也无法解决,可以采用谷歌浏览器插件来解决此问题 使用谷歌浏览器,打开 设置--->扩展程序,勾选开发者模式,把Header ...
使用谷歌浏览器,打开 设置--->扩展程序,勾选开发者模式,把Header Editor....很多国外网站采用了Google的reCaptcha验证,但在国内上网是无法显示该验证的,即使用梯子也无法解决,可以采用谷歌浏览器插件来解决此问题
在Laravel框架中,Google的reCAPTCHA是一个强大的工具,用于防止机器人和自动化脚本进行恶意活动,如垃圾邮件提交、刷票等。本教程将深入讲解如何在Laravel项目中集成并使用reCAPTCHA。 首先,让我们了解什么是...
在Laravel框架中,reCAPTCHA是一个非常重要的组件,它能有效地防止自动化程序(如机器人)对网站进行恶意操作,比如垃圾邮件提交、非法登录尝试等。reCAPTCHA是由谷歌提供的一个免费服务,通过人机识别挑战来确保...
在本文中,我们将深入探讨如何在 Laravel 开发中集成 Google reCAPTCHA,即"laravel-recaptcha"。Laravel 是一个流行的PHP框架,以其优雅的语法和强大的功能深受开发者喜爱。reCAPTCHA 是 Google 提供的一项服务,...
在本文中,我们将深入探讨如何在 Laravel 开发中集成 Google 的 reCAPTCHA 服务,以增强网站的安全性,防止恶意机器人和自动填充表单的行为。标题 "Laravel开发-recaptcha-laravel" 指出我们将关注一个特定的 ...
【Laravel开发-invisible-recaptcha】是针对 Laravel 框架的一个扩展,旨在集成谷歌的 Invisible reCAPTCHA 服务。这个服务主要用于防止机器人和自动脚本进行恶意操作,如垃圾邮件提交、表单滥用等,同时它在用户...
`recaptcha`是Google推出的一种反机器人技术,旨在保护网站免受恶意自动化攻击,如垃圾邮件、自动注册和欺诈行为。这个开源库是专门为前端开发者设计的,帮助他们在项目中集成和验证Google的reCAPTCHA服务。 `前端...
标题中的“angular-recaptcha”指的是一个专门为AngularJS框架设计的模块,目的是为了简化在表单中集成谷歌的reCaptcha服务。AngularJS是一款由Google维护的JavaScript框架,它用于构建单页应用程序(SPA),强调...
开源项目“romanyx-recaptcha”是一个用Go语言编写的Google reCAPTCHA接口封装库,旨在帮助开发者更方便地在Go应用中集成Google的reCAPTCHA服务。reCAPTCHA是一种防止机器人和自动化程序进行恶意操作的安全验证工具...
下载文件 https://www.google.com/recaptcha/api.js 和这个文件中包含的另外一个文件 https://www.gstatic.com/recaptcha/api2/r20160531110558/recaptcha__zh_cn.js
ng-recaptcha, Google reCAPTCHA的Angular 组件 Google reCAPTCHA的 Angular 组件 一个简单,可以配置的easy-to-start组件,用于处理 reCAPTCHA 。目录安装工具基本用法:游乐场使用 @angular/form
recaptcha, 用于 ruby 应用的ReCaptcha帮助程序 reCAPTCHA作者:Jason L 佩里( http://ambethia.com )版权所有:版权所有( c ) 2007 -2013 Jason L 佩里许可证:信息:https://github.com/ambethia