Uncaptcha.3kaya

Langue: en

Version: March 2009 (fedora - 05/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

Uncaptcha - Automated spam-reduction techniques for web forms

DESCRIPTION

This module provides automated spam-reduction methods for web forms. Each method consists of a data type, a check function, and sometimes an enable function. To use a method, the enable function (if it exists) must be used on the form itself, and then the check function used on the results of the submission. See the documentation of each data type for examples.

The response for a failed check needs to depend on the form. Displaying a reasonably informative error message and refilling the form with Webapp.autoFill(3kaya) is probably the best way for some types of checks, whereas rejecting the submission entirely is best for others.

Automated spam-reduction techniques can only be successful for as long as spammers find it uneconomical to overcome them. This module aims to make this very uneconomical by providing a range of methods, and requiring you as a user of the module to do some customisation of each method - so a spambot that knows about one use of Uncaptcha.URLBlock(3kaya) might fail against another use, and might not know about Uncaptcha.Timer(3kaya) at all.

For this reason, you should only use as many of these protections as are necessary to stop spam - if everyone used all of them at once then it might become more economical for criminals to invest in bypassing them.

DATA TYPES

Uncaptcha.Question(3kaya)

Uncaptcha.Timer(3kaya)

Uncaptcha.URLBlock(3kaya)

FUNCTIONS

Uncaptcha.checkQuestion(3kaya)

Uncaptcha.checkTimer(3kaya)

Uncaptcha.checkURLBlock(3kaya)

Uncaptcha.enableQuestion(3kaya)

Uncaptcha.enableTimer(3kaya)

Uncaptcha.qdecode(3kaya)

AUTHORS

Kaya standard library by Edwin Brady, Chris Morris and others (kaya@kayalang.org). For further information see http://kayalang.org/

LICENSE

The Kaya standard library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License (version 2.1 or any later version) as published by the Free Software Foundation.