Register Members List Search Today's Posts Mark Forums Read

Reply
 
Mod Options
reCAPTCHA!vB - Stop spam. Read books. Details »»
reCAPTCHA!vB - Stop spam. Read books.
Mod Version: 1.1.0, by magnus (Coder/Designer) magnus is offline
Developer Last Online: Feb 2012 I like it Show Printable Version Email this Page

vB Version: 3.6.7 Rating: (24 votes - 4.88 average) Installs: 205
Released: 09 Jul 2007 Last Update: 27 Feb 2008 Downloads: 2181
Not Supported Uses Plugins Auto-Template Code Changes Additional Files External Content  

THIS MODIFICATION SHOULD NOT BE USED WITH VBULLETIN 3.7+ AS IT IS A DEFAULT FEATURE.

Keywords: reCAPTCHA, CAPTCHA, spam, register

Description:
This modification will replaced the default vBulletin registration CAPTCHA with the newer, more advanced reCAPTCHA.

What is CAPTCHA/reCAPTCHA?:
A CAPTCHA is a program that can tell whether its user is a human or a computer. You've probably seen them — colorful images with distorted text at the bottom of Web registration forms. CAPTCHAs are used by many websites to prevent abuse from "bots," or automated programs usually written to generate spam. No computer program can read distorted text as well as humans can, so bots cannot navigate sites protected by CAPTCHAs.

About 60 million CAPTCHAs are solved by humans around the world every day. In each case, roughly ten seconds of human time are being spent. Individually, that's not a lot of time, but in aggregate these little puzzles consume more than 150,000 hours of work each day. What if we could make positive use of this human effort? reCAPTCHA does exactly that by channeling the effort spent solving CAPTCHAs online into "reading" books.

To archive human knowledge and to make information more accessible to the world, multiple projects are currently digitizing physical books that were written before the computer age. The book pages are being photographically scanned, and then, to make them searchable, transformed into text using "Optical Character Recognition" (OCR). The transformation into text is useful because scanning a book produces images, which are difficult to store on small devices, expensive to download, and cannot be searched. The problem is that OCR is not perfect.



reCAPTCHA improves the process of digitizing books by sending words that cannot be read by computers to the Web in the form of CAPTCHAs for humans to decipher. More specifically, each word that cannot be read correctly by OCR is placed on an image and used as a CAPTCHA. This is possible because most OCR programs alert you when a word cannot be read correctly.

But if a computer can't read such a CAPTCHA, how does the system know the correct answer to the puzzle? Here's how: Each new word that cannot be read correctly by OCR is given to a user in conjunction with another word for which the answer is already known. The user is then asked to read both words. If they solve the one for which the answer is known, the system assumes their answer is correct for the new one. The system then gives the new image to a number of other people to determine, with higher confidence, whether the original answer was correct.

Currently, we are helping to digitize books from the Internet Archive.



Installation:
  1. Download and unzip the recaptcha101.zip archive.
  2. Upload the functions_recaptcha.php to your /includes/ directory.
  3. Import the product-recaptcha.xml via the Product Manager.
  4. Obtain a FREE public and private reCAPTCHA key here.
  5. Make any desired configuration changes via AdminCP > vBulletin Options > reCAPTCHA Options
  6. Make a backup of your register.php file, located in your forum root.
  7. Perform ONE (1) of the following methods:
    • Method A:
      • Download the register-patch.zip archive, extract, then upload the register.patch file to your forum root, then apply the patch:

        *Note: Please note that this method requires a basic understanding of UNIX shell commands and requires shell access to your host. If you do not have either of these or you are unsure how to use GNU patch, I highly suggest performing Method B instead)


        Block Disabled:      (Update License Status)  
        Suspended or Unlicensed Members Cannot View Code.

        This will perform the file edits automatically. Once finished, you may delete the register.patch file.
    • Method B:
      Perform the following simple file edits:
      • IN register.php:
        1. FIND:

          Block Disabled:      (Update License Status)  
          Suspended or Unlicensed Members Cannot View Code.

          REPLACE WITH:

          Block Disabled:      (Update License Status)  
          Suspended or Unlicensed Members Cannot View Code.

        2. FIND AND REMOVE:

          Block Disabled:      (Update License Status)  
          Suspended or Unlicensed Members Cannot View Code.

        3. FIND:

          Block Disabled:      (Update License Status)  
          Suspended or Unlicensed Members Cannot View Code.

          REPLACE WITH:

          Block Disabled:      (Update License Status)  
          Suspended or Unlicensed Members Cannot View Code.


NOTE: YOU MAY ALSO REPLACE THE CAPTCHA DISPLAYED TO GUESTS WHEN USING THE "CONTACT US" FORM BY FOLLOWING THE INSTRUCTIONS HERE.



Tips, tricks and modifications:


Comments:
As with all my hacks, this modification is provided free of charge. However, if you find this product useful and have money burning a hole in your pocket, feel free to make a small donation, I won't mind.. really.

Version History:
  • 1.0.0 - Initial release, here's to hoping...
  • 1.0.1 - Woops! Forgot to include a aesthetic template edit in the original release. All is well, simply redownload and overwrite the XML. That's it!
  • 1.1.0 - Added alternate language support. Now various reCAPTCHA tags and text will be displayed in your selected language. Also added a fieldset to the automatic template edits around the display block for a more uniform look (thanks DOCTOR DAN!).

Currently Known Bugs:
  • None

* Please note that this modification was developed on a forum with a userbase of 1 (myself). I've tested it for basic functionality but I cannot guarantee functionality or behavior on your forum. So, please -- make backups before installing this product!

Download Now

Only licensed members can download files, Click Here for more information.

Screenshots

Click image for larger version

Name:	captchaHomePage.gif
Views:	1196
Size:	8.3 KB
ID:	66750Click image for larger version

Name:	recaptchaadmin.jpg
Views:	959
Size:	81.8 KB
ID:	66792Click image for larger version

Name:	recaptchavb.jpg
Views:	825
Size:	52.1 KB
ID:	76450

Show Your Support

  • To receive notifications regarding updates -> Click to Mark as Installed.
  • If you like this modification support the author by donating.
  • This modification may not be copied, reproduced or published elsewhere without author's permission.
Similar Mod
Mod Developer Type Replies Last Post
reCAPTCHA!vB - MailHide : Tired of spam? Fight back. magnus vBulletin 3.6 Add-ons 7 20 Jul 2008 00:44

  #46  
Old 18 Sep 2007, 13:25
yoyoyoyo's Avatar
yoyoyoyo yoyoyoyo is offline
 
Join Date: Dec 2004
Originally Posted by bazzup View Post
thats the second key your private one is'nt it?
why, yes it is! maybe that info will help to point out the error I am receiving to magnus. thanks!
Reply With Quote
  #47  
Old 23 Sep 2007, 07:42
GameWizard's Avatar
GameWizard GameWizard is offline
 
Join Date: Apr 2004
Either I'm missing something, or this script is messed up?

After installing the script, and using Method B. I attempted to register on my board a few times to see how it would react, and it appears to allow the registration if the first few characters of the first word are correct, or simply resemble that of the first word.

It seems to not care what the rest looks like. Although it doesn't let me pass if the first 3-4 characters are completely different. What the hell? lol.
Reply With Quote
  #48  
Old 27 Sep 2007, 02:47
magnus's Avatar
magnus magnus is offline
 
Join Date: Apr 2002
Originally Posted by GameWizard View Post
Either I'm missing something, or this script is messed up?

After installing the script, and using Method B. I attempted to register on my board a few times to see how it would react, and it appears to allow the registration if the first few characters of the first word are correct, or simply resemble that of the first word.

It seems to not care what the rest looks like. Although it doesn't let me pass if the first 3-4 characters are completely different. What the hell? lol.
There are 2 words. One of which the system knows, the other which the system is unsure of. The entire point is to present multiple words that are readable to humans, but proven unreadable by bots. So as long as you answer the actual key word correctly, you could technically input whatever you wanted for the variable word.

Again, this is something you, as a human, can logically determine. A bot will see a mass of letters an be unable to differentiate them. The main goal of reCAPTCHA is to provide a next level of spam bot prevention while using wasted human cycles (re: distributed human computing) to help translate books to digital text.
Reply With Quote
  #49  
Old 27 Sep 2007, 05:32
GameWizard's Avatar
GameWizard GameWizard is offline
 
Join Date: Apr 2004
But i find it confusing how yes, it makes it easier for humans, but at the same time could potentially make it easier for bots as well, could it not? All the bot would need to do is identify that your script is being used then attempt to read the word(s) which don't even need to be typed correctly! The first 3 letters or so seem to be the only requirement, the rest can be neglected or mistyped and the script still allows the user to continue...
Reply With Quote
  #50  
Old 27 Sep 2007, 08:11
bazzup bazzup is offline
 
Join Date: Dec 2006
Real name: bazz
Originally Posted by GameWizard View Post
But i find it confusing how yes, it makes it easier for humans, but at the same time could potentially make it easier for bots as well, could it not? All the bot would need to do is identify that your script is being used then attempt to read the word(s) which don't even need to be typed correctly! The first 3 letters or so seem to be the only requirement, the rest can be neglected or mistyped and the script still allows the user to continue...
well i have had this for over a week now i think and i was having 20+ bots a day registering and not confirming their emails and all this has stopped.

yes they will learn the script but until then this is working mighty fine for me
Reply With Quote
  #51  
Old 27 Sep 2007, 15:45
magnus's Avatar
magnus magnus is offline
 
Join Date: Apr 2002
Originally Posted by GameWizard View Post
But i find it confusing how yes, it makes it easier for humans, but at the same time could potentially make it easier for bots as well, could it not? All the bot would need to do is identify that your script is being used then attempt to read the word(s) which don't even need to be typed correctly! The first 3 letters or so seem to be the only requirement, the rest can be neglected or mistyped and the script still allows the user to continue...
There are 2 words. The challenge word and the variable word. The variable word can be anything. The challenge word must be typed 100% correctly. There's no 1, 2 or 3 letter minimum. Each challenge word must be 100% accurate.

Regardless of the variable word, this system, at worst, is no less secure than the default CAPTCHA. So there's no concern in that department.

The following is pure speculation, as the exact algorithim is intentionally not divulged:

It's possible that the variable word may have a minimum character requirement as the system may be able to determine the word length while not being able to exactly decipher the actual letters. Again, this is pure speculation on my part.
Reply With Quote
  #52  
Old 29 Oct 2007, 23:07
Godders Godders is offline
 
Join Date: Mar 2003
Hi there.
I am having some trouble using this.

I have made the changes as directed and placed the private and public keys where requested.
I get the following error
"To use reCAPTCHA you must get an API key from http://recaptcha.net/api/getkey"

Am i missing something? Fantastic script btw I cant wait to use it!
Reply With Quote
  #53  
Old 03 Feb 2008, 01:50
TheInsaneManiac TheInsaneManiac is offline
 
Join Date: Feb 2008
I like this, but what if I want the Image Verification border to stay there
Reply With Quote
  #54  
Old 11 Feb 2008, 20:14
HP10T HP10T is offline
 
Join Date: Jan 2007
I get an error while importing via the product manager...
Database error in vBulletin 3.5.4:

Invalid SQL:

### INSERT QUERY GENERATED BY fetch_query_sql() ###
INSERT INTO plugin
(`active`, `executionorder`, `title`, `hookname`, `phpcode`, `product`)
VALUES
('1', '5', 'Automatically modify register template', 'parse_templates', 'if (isset($vbulletin->templatecache[\'register\']))\r\n{\r\n $find = \' $imagereg\';\r\n \r\n $append = \" <script type=\'text/javascript\'>\r\n var RecaptchaOptions = {\r\n theme : \'\" . $GLOBALS[\'vbulletin\']->options[\'recaptcha_theme\'] . \"\',\r\n tabindex : \" . $GLOBALS[\'vbulletin\']->options[\'recaptcha_tabindex\'] . \"\r\n };\r\n </script>\";\r\n\r\n $vbulletin->templatecache[\'register\'] = str_replace($find, $append . \"\\n\" . $find, $vbulletin->templatecache[\'register\']);\r\n\r\n unset($find, $append);\r\n}', 'recaptcha');

MySQL Error : Unknown column 'executionorder' in 'field list'
Error Number : 1054
Date : Monday, February 11th 2008 @ 02:13:16 PM
Script : http://utahnissans.com/forums/admincp/plugin.php
Referrer : http://utahnissans.com/forums/adminc...?do=productadd
Reply With Quote
  #55  
Old 11 Feb 2008, 21:49
magnus's Avatar
magnus magnus is offline
 
Join Date: Apr 2002
Originally Posted by HP10T View Post
I get an error while importing via the product manager...
Database error in vBulletin 3.5.4:

Invalid SQL:

### INSERT QUERY GENERATED BY fetch_query_sql() ###
INSERT INTO plugin
(`active`, `executionorder`, `title`, `hookname`, `phpcode`, `product`)
VALUES
('1', '5', 'Automatically modify register template', 'parse_templates', 'if (isset($vbulletin->templatecache[\'register\']))\r\n{\r\n $find = \' $imagereg\';\r\n \r\n $append = \" <script type=\'text/javascript\'>\r\n var RecaptchaOptions = {\r\n theme : \'\" . $GLOBALS[\'vbulletin\']->options[\'recaptcha_theme\'] . \"\',\r\n tabindex : \" . $GLOBALS[\'vbulletin\']->options[\'recaptcha_tabindex\'] . \"\r\n };\r\n </script>\";\r\n\r\n $vbulletin->templatecache[\'register\'] = str_replace($find, $append . \"\\n\" . $find, $vbulletin->templatecache[\'register\']);\r\n\r\n unset($find, $append);\r\n}', 'recaptcha');

MySQL Error : Unknown column 'executionorder' in 'field list'
Error Number : 1054
Date : Monday, February 11th 2008 @ 02:13:16 PM
Script : http://utahnissans.com/forums/admincp/plugin.php
Referrer : http://utahnissans.com/forums/adminc...?do=productadd
Well, you're trying to run a hack developed for vB3.6 on vB3.5 -- that's what happens.

If you're feeling frisky, you can edit the .xml and remove references to executionorder. This in no way guaranteed to work. It shouldn't break anything, however, you should always make backups just in case.

If you don't want to edit the file yourself, I've attached a modified .xml. Simply replace the on in the original archive with this.
Attached Files
File Type: xml product-recaptcha.xml (4.4 KB, 8 views)
Reply With Quote
  #56  
Old 12 Feb 2008, 18:06
HP10T HP10T is offline
 
Join Date: Jan 2007
Thanks for the quick reply, I think I am going to upgrade to 3.6 first .
Reply With Quote
  #57  
Old 13 Feb 2008, 03:49
Doctor Dan Doctor Dan is offline
 
Join Date: Dec 2007
Lightbulb

For those who would like to use "Method A" (the register.patch file) to modify their register.php file but do not have shell access (e.g. hosting services that only provide cPanel access), you may find this "trick" useful:

1. Upload the register.patch file to your forum's root directory.

2. Create a plain text file called runpatch.pl with the following contents:


Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.


save it, and upload it to your forum's root directory.

3. Change the permissions on the runpatch.pl file that you just uploaded to 0755 so that you can execute the script.

4. In a web browser, type:

http://yourdomain/yourforum/runpatch.pl

The perl script will run, which in turn runs the patch command.

5. Delete the runpatch.pl file from your forum's root directory.

N.B.: This technique assumes that you can run perl scripts with system calls on the server where your forum resides, which is usually the case.

- Dan
Reply With Quote
  #58  
Old 13 Feb 2008, 04:05
Doctor Dan Doctor Dan is offline
 
Join Date: Dec 2007
Smile

A quick mod if you want to restore the "image verification" frame around the reCAPTCHA panel, just like how vBulletin's standard CAPTCHA panel appears:

In the template register find:


Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.


and replace it with:


Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.


You can also center the reCAPTCHA panel within the frame by adding a "<center>" tag:


Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.


- Dan
Attached Images
File Type: jpg 1.jpg (45.9 KB, 94 views)
File Type: jpg 2.jpg (51.5 KB, 116 views)
File Type: jpg 3.jpg (52.1 KB, 99 views)
File Type: jpg 4.jpg (51.3 KB, 99 views)
Reply With Quote
  #59  
Old 13 Feb 2008, 14:52
magnus's Avatar
magnus magnus is offline
 
Join Date: Apr 2002
Thanks, Dan! I've linked your tips in the first post.
Reply With Quote
  #60  
Old 13 Feb 2008, 17:27
Boofo's Avatar
Boofo Boofo is offline
 
Join Date: Mar 2002
Real name: Rob
Originally Posted by magnus View Post
You're missing a close bracket ')' in the following block (highlighted in red):

Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.

Also, why are you typing out the code changes manually? Just copy and paste them from the original post to make sure there are no typo's and to retain proper formatting.
You mean it's missing in this line, not the other one:


Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.

Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
Mod Options

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
Forum Jump


New To Site? Need Help?

All times are GMT. The time now is 06:39.

Layout Options | Width: Wide Color: