Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.6 > vBulletin 3.6 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
NoSpam! - an alternative to CAPTCHA images Details »»
NoSpam! - an alternative to CAPTCHA images
Version: 3.0, by antialiasis antialiasis is offline
Developer Last Online: Nov 2013 Show Printable Version Email this Page

Category: Miscellaneous Hacks - Version: 3.6.x Rating:
Released: 08-23-2006 Last Update: 06-22-2008 Installs: 1568
Uses Plugins Auto-Templates
 
No support by the author.

This hack is for vBulletin 3.6.x. For 3.5.x, please use the one provided in this thread. If you are using 3.7.x, you must use the one in this thread.

This simple hack is meant as a replacement for the default CAPTCHA system in vBulletin. There are two main reasons one might want to do this: firstly, new technology is constantly being developed to crack CAPTCHA images and make spam accounts anyway, and secondly, the more secure the CAPTCHA, the more difficult it is for genuine users to tell what the numbers in the image are. There is also the issue of visually impaired users, and the fact that not all servers are capable of generating CAPTCHA images.

So what does this hack do instead? It asks a question. Any question you want. That's the best part: YOU make up the questions, which means that every forum is unique, which means that it is impossible for spambots to be simply programmed to bypass it at all forums with the hack installed. You can make one or many questions - if you make many, the hack will pick one at random when a guest attempts to register, search, post or send mail through the Contact Us form. Their input is compared with your specified answer, and voil?, if they get it right they're pretty much guaranteed to be human. If they get it wrong, they're given an error message.

It doesn't have to be a complicated question. Heck, you can just make it "Please type 'blah' into this box." Or you can go with inserting a simple image with HTML and ask what is shown on the image. Or you can ask them to tell you two plus two. It's up to you. In fact, this can also be used as a means of forcing people to read the rules by asking for a certain password found there, or if your forum focuses on a specialized subject, ask a question concerning the subject that all your genuine users will be able to answer, but a random troll or "CAPTCHA-sweatshop-reader" will be scratching their head over.

It's simple to install, too: just one product to import, and that's it.


VERSION HISTORY:

3.0: Added functionality to allow users to specify which pages should use NoSpam!.
2.0: Extended the NoSpam! functionality to guest posts, guest searches and guest "Contact Us" in addition to registration.
1.1: Made template edit automatic (with thanks to Cole2026), added ability to have more than one answer to each question, and made answers case insensitive. To upgrade, I recommend undoing the template edit so you won't have to worry about it anymore (replace $nospamfield in the template register with $imagereg, or if you added $nospamfield above $imagereg, just remove $nospamfield altogether), and then reimport the product through the Admin CP (making sure that Allow Overwrite is set to On).
1.0: Initial release.


INSTALLATION:

Please download NoSpam!.zip, not product-nospam.xml, for the tested version. product.nospam.xml is NoSpam! 4.0 adapted blindly to 3.6, i.e. by editing the XML file for the 3.7 version without actually testing it on a 3.6 board. Theoretically it should work, but I cannot guarantee it at this time. If you download NoSpam!.zip and unzip it, it will contain another file called product.nospam.xml, which you should use.

1. Import product-nospam.xml through the Admin CP product manager.
2. Go to your vBulletin options in the Admin CP and select NoSpam! Settings. Once there, turn the system on and input your questions and answers according to the instructions there.

The system should now be functional and running.


UNINSTALLATION:

Just uninstall the product through the Admin CP.


SUPPORT:

Full support will be given here in this thread. All suggestions are welcome.

Thank you and please click "Mark as Installed" if you like it.


If NoSpam! is not working for you or you are looking for something a little different, you might want to check out Advanced Textual Confirmation.

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #342  
Old 02-12-2007, 12:31 AM
antialiasis's Avatar
antialiasis antialiasis is offline
 
Join Date: Jan 2006
Location: Iceland
Posts: 346
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

littlematts, try replacing

PHP Code:
         if ($vbulletin->options['nospam_use_reg'] AND $vbulletin->options['quickregister_active']) {
            
$questions explode("\n"$vbulletin->options['nospam_questions']);
            
$nospamnumber array_rand($questions);
            
$qanda explode(":",$questions["$nospamnumber"]);
            
$nospamquestion $qanda[0];
         } 
with just

PHP Code:
         $questions explode("\n"$vbulletin->options['nospam_questions']);
         
$nospamnumber array_rand($questions);
         
$qanda explode(":",$questions["$nospamnumber"]);
         
$nospamquestion $qanda[0]; 
Then tell me if it works then.

familyhistory: Registration works fine for me. About the search, yes, I think Smoothie hits the nail on the head - it sounds like there's something up with your navbar template. Did you keep an old template unreverted after upgrading to 3.6 or something like that?
Reply With Quote
  #343  
Old 02-12-2007, 08:17 AM
littlematts littlematts is offline
 
Join Date: Jan 2007
Posts: 16
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by antialiasis View Post
littlematts, try replacing

PHP Code:
         if ($vbulletin->options['nospam_use_reg'] AND $vbulletin->options['quickregister_active']) {
            
$questions explode("\n"$vbulletin->options['nospam_questions']);
            
$nospamnumber array_rand($questions);
            
$qanda explode(":",$questions["$nospamnumber"]);
            
$nospamquestion $qanda[0];
         } 
with just

PHP Code:
         $questions explode("\n"$vbulletin->options['nospam_questions']);
         
$nospamnumber array_rand($questions);
         
$qanda explode(":",$questions["$nospamnumber"]);
         
$nospamquestion $qanda[0]; 
Then tell me if it works then.

familyhistory: Registration works fine for me. About the search, yes, I think Smoothie hits the nail on the head - it sounds like there's something up with your navbar template. Did you keep an old template unreverted after upgrading to 3.6 or something like that?

hia buddy.. tried with the same and following alteration but to no avail.. sorry for any mistaken trial ... coz i am not good in coding..

Trial 1:
PHP Code:
default:
          {
          
$questions explode("\n"$vbulletin->options['nospam_questions']);
         
$nospamnumber array_rand($questions);
         
$qanda explode(":",$questions["$nospamnumber"]);
         
$nospamquestion $qanda[0]; 
         } 
Result: No Luck.

Traial2:
PHP Code:
default:
         if 
$vbulletin->options['quickregister_active']) {
         
$questions explode("\n"$vbulletin->options['nospam_questions']);
         
$nospamnumber array_rand($questions);
         
$qanda explode(":",$questions["$nospamnumber"]);
         
$nospamquestion $qanda[0];
         }
         
$nospamdo false;
   } 
Result: No Luck

donno what issue with my case.. are u getting the result when tried testing?
do u want me to try any other combination buddy.. i will be only happy to.. coz the nospam mod is much useful than captcha verification as per my view..

regards
Matthew
Reply With Quote
  #344  
Old 02-12-2007, 10:38 AM
phill2003 phill2003 is offline
 
Join Date: Apr 2003
Posts: 217
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by littlematts View Post
First of all let me thank you antialiasis for your great mod you provided.

I installed your mod on my vbull forum vBulletin? v3.6.4 and it is working perfect with the registration page..

but the issue i face is with integration.. I am not able to integrate the same with Quick Register Ver: 1.6.3 installed along. The question itself is not showing up. I have tried updating the script as specified by you in integration details page but to no avail.



regards
Matthew
I had the same problem as you (if you look back in the thread I have posted a couple of times but got no joy) anyway I have fixed my issue and by the looks of things it may help you as you seem to be having the exact problem i was having...


To fix mine I inserted some code into the quickregister plugin.

in the quick register plugin at global start look for this
Code:
$show['guest'] = true;
and above that place this
Code:
if ($vbulletin->options['nospam_use_reg'] AND $vbulletin->options['quickregister_active']) {
            $questions = explode("\n", $vbulletin->options['nospam_questions']);
            $nospamnumber = array_rand($questions);
            $qanda = explode(":",$questions["$nospamnumber"]);
            $nospamquestion = $qanda[0];
         }

This when applied to my quick register plugin got the question to appear as well as the box for the answer

I hope this fixs your issue as the nospam hack is IMO one of if not the best hack on vbulletin.org and I was disappointed that it would not work on my quick register which also is a must have for increased registrations.

It might be an idea to whack this in the readme for others in the same situation if there are any.
Reply With Quote
  #345  
Old 02-12-2007, 12:10 PM
blogtorank's Avatar
blogtorank blogtorank is offline
 
Join Date: Jan 2006
Posts: 450
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by antialiasis View Post
blogtorank: I appreciate the effort to help, but using presets of any sort completely defeats the point of NoSpam!. If people start using math problems or "Please type [word] into the following box" in that exact format en masse, it allows spambots to just be programmed with the rule and then extract the numbers/word from the question to insert it. The strength of NoSpam! lies in the impossibility of mechanically predicting for any given forum that uses the hack what the answer to the question might be, which is the reason NoSpam! does not come with any default questions.
Gotcha, and thought to pass these onto others to add-in with their existing ones Thanks for explanation as well!
Reply With Quote
  #346  
Old 02-12-2007, 12:44 PM
Eagle Creek's Avatar
Eagle Creek Eagle Creek is offline
 
Join Date: Jan 2004
Location: Netherlands
Posts: 742
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
I think I like it BUT:
Quote:
Or you can go with inserting a simple image with HTML and ask what is shown on the image.
Isn't this the same as the CAPTCHA then???
antialiasis, what about this?
Why can't spambots read this and they can read a normal image?
Reply With Quote
  #347  
Old 02-12-2007, 03:50 PM
antialiasis's Avatar
antialiasis antialiasis is offline
 
Join Date: Jan 2006
Location: Iceland
Posts: 346
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Because CAPTCHA images are computer-generated images containing letters and/or numbers with varying amount of distortion. Computerized pattern recognition programs can be programmed to read the distorted letters in CAPTCHA images without much trouble, but identifying an object in an image is a dramatically more difficult task requiring far more elaborate, advanced AI.

Say you took your avatar and asked in NoSpam! what that image shows. The average human should without too much trouble be able to answer "eagle". However, a computer doesn't have years of experience of looking at pictures of animals and eagles with a mind-numbingly elaborate neural network that specializes in recognizing objects such as animals in visual data, and thus it will not have any idea what the heck your avatar is. Letters are simple patterns that a bot can be programmed to recognize; recognizing 3-D objects in 2-D images from any angle is something that we humans have been specializing ourselves in for millions of years of evolutionary history and a varying number of years of personal experience. Not to mention that the bot would have to keep a database of rules to recognize an absolutely astronomical number of objects in order to be able to take on an arbitrary image with no clue whatsoever as to what it contains. Artificial intelligence just can't do it, at least not yet.

littlematts, you did it wrong on both trials. :/ Replace exactly what I told you with exactly what I told you. Or do what phill2003 did, since it worked for him. It works fine with my original instructions on my test forum; maybe it's a matter of different PHP versions or something. =/
Reply With Quote
  #348  
Old 02-12-2007, 08:19 PM
littlematts littlematts is offline
 
Join Date: Jan 2007
Posts: 16
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by phill2003 View Post
I had the same problem as you (if you look back in the thread I have posted a couple of times but got no joy) anyway I have fixed my issue and by the looks of things it may help you as you seem to be having the exact problem i was having...


To fix mine I inserted some code into the quickregister plugin.

in the quick register plugin at global start look for this
Code:
$show['guest'] = true;
and above that place this
Code:
if ($vbulletin->options['nospam_use_reg'] AND $vbulletin->options['quickregister_active']) {
            $questions = explode("\n", $vbulletin->options['nospam_questions']);
            $nospamnumber = array_rand($questions);
            $qanda = explode(":",$questions["$nospamnumber"]);
            $nospamquestion = $qanda[0];
         }

This when applied to my quick register plugin got the question to appear as well as the box for the answer

I hope this fixs your issue as the nospam hack is IMO one of if not the best hack on vbulletin.org and I was disappointed that it would not work on my quick register which also is a must have for increased registrations.

It might be an idea to whack this in the readme for others in the same situation if there are any.

:up: :up: :up:

I dont know.. if a million thanks will reply for this suggestionu gave me.. coz it simply worked!! THANKS mate.. Thanks lotttts.. phill2003

I am soo happy to see people here are soo kind enough to support others to guide them out of trouble..

and my thanks to antialiasis too for the great mod and support.. infact i got to say he tried his best to get me out of this delemma..

antialiasis, i think we should change the integraton details in txt file provided along.. ask users to use ver3 along with the integration method suggested by phill2003

Thank you both.. my joy of success find no limit dudes..

You guys simply rocks..

Matthew
Reply With Quote
  #349  
Old 02-13-2007, 04:37 AM
blankoboy blankoboy is offline
 
Join Date: Apr 2006
Posts: 55
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I was just going to suggest that adding more than one answer for a question would be a great feature to make this mod really shine. But...low and behold antialiasis already had this feature implemented (along with case insensitive option). You are the man and this mod has my vote for MOTM. Fantastic. :up: :up:

Vbulletin really ought to have this implemented as standard.
Reply With Quote
  #350  
Old 02-13-2007, 11:26 AM
Veeb0rg Veeb0rg is offline
 
Join Date: May 2003
Posts: 3
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

is there a way to get this to work with 3.0.7 vb?
Reply With Quote
  #351  
Old 02-13-2007, 11:34 AM
Eagle Creek's Avatar
Eagle Creek Eagle Creek is offline
 
Join Date: Jan 2004
Location: Netherlands
Posts: 742
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by antialiasis View Post
Because CAPTCHA images are computer-generated images containing letters and/or numbers with varying amount of distortion. Computerized pattern recognition programs can be programmed to read the distorted letters in CAPTCHA images without much trouble, but identifying an object in an image is a dramatically more difficult task requiring far more elaborate, advanced AI.

Say you took your avatar and asked in NoSpam! what that image shows. The average human should without too much trouble be able to answer "eagle". However, a computer doesn't have years of experience of looking at pictures of animals and eagles with a mind-numbingly elaborate neural network that specializes in recognizing objects such as animals in visual data, and thus it will not have any idea what the heck your avatar is. Letters are simple patterns that a bot can be programmed to recognize; recognizing 3-D objects in 2-D images from any angle is something that we humans have been specializing ourselves in for millions of years of evolutionary history and a varying number of years of personal experience. Not to mention that the bot would have to keep a database of rules to recognize an absolutely astronomical number of objects in order to be able to take on an arbitrary image with no clue whatsoever as to what it contains. Artificial intelligence just can't do it, at least not yet.
HI,

I understand the system of images being read etc.. (very nice explanaiton btw!). But what I don't understand is this. You say:
Quote:
Or you can go with inserting a simple image with HTML and ask what is shown on the image.
Then you still have exactly the same, dont you? You present a simple image like .JPG and then it can be read? Or am I wrong understanding what you are writing .
I will definetly going to use this hack .
Reply With Quote
Reply


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

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 07:22 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.08264 seconds
  • Memory Usage 2,373KB
  • Queries Executed 27 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (4)bbcode_code
  • (6)bbcode_php
  • (8)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (3)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete