What is CAPTCHA and How it Works?
CAPTCHA
or Captcha (pronounced as cap-ch-uh) which stands for “Completely
Automated Public Turing test to tell Computers and Humans Apart” is a
type of challenge-response test to ensure that the response is only generated by humans and not by a computer.
In simple words, CAPTCHA is the word
verification test that you will come across the end of a sign-up form
while signing up for Gmail or Yahoo account. The following image shows
the typical samples of CAPTCHA.
Almost every Internet user will have an
experience of CAPTCHA in their daily Internet usage, but only a few
are aware of what it is and why they are used. So, in this post you will
find a detailed information on how CAPTCHA works and why it is used.
What Purpose does CAPTCHA Exactly Serve?
CAPTCPA is mainly used to prevent automated software (bots) from performing actions on behalf of actual humans.
For example, while signing up for a new
email account, you will come across a CAPTCHA at the end of the sign-up
form so as to ensure that the form is filled out only by a legitimate
human and not by any of the automated software or a computer bot. The
main goal of CAPTCHA is to put forth a test which is simple and straight
forward for any human to answer but for a computer, it is almost
impossible to solve.
What is the Need to Create a Test that Can Tell Computers and Humans Apart?
For many, the CAPTCHA may seem to be
silly and annoying! In fact, CAPTCHA has the ability to protect systems
from malicious attacks where people try to game the
system. Attackers can make use of the automated software to generate a
huge quantity of requests thereby causing a high load on the target
server. This could lead to a degrade the quality of service of a given
system, either due to abuse or resource expenditure. This can affect
millions of legitimate users and their requests. CAPTCHAs can be
deployed to protect systems that are vulnerable to email spam, such as
the services from Gmail, Yahoo and Hotmail.
Who Uses CAPTCHA?
CAPTCHAs are mainly used by websites that offer services like online polls and registration forms.
For example, Web-based email services
like Gmail, Yahoo and Hotmail offer free email accounts for their users.
However, upon each sign-up process, CAPTCHAs are used to prevent
spammers from using a bot to generate hundreds of spam mail accounts.
Designing a CAPTCHA System:
CAPTCHAs are designed on the fact that,
the computers lack the ability that human beings have when it comes to
processing visual data. It is more easily possible for humans to look at
an image and pick out the patterns than a computer. This is because,
computers lack the real intelligence that humans have by default.
CAPTCHAs are implemented by presenting users with an image which
contains distorted or randomly stretched characters which only humans
should be able to identify. Sometimes, characters are stroked out or
presented with a noisy background to make it even more harder for
computers to figure out the patterns.
Most, but not all, CAPTCHAs rely on a
visual test. Some Websites implement a totally different CAPTCHA
system to tell humans and computers apart. For example, a user is
presented with 4 images in which 3 contains picture of animals and one
contain a flower. The user is asked to select only those images which
contain animals in them. This Turing test can easily be solved by any
human, but almost impossible for a computer.
Breaking the CAPTCHA:
The challenge in breaking the CAPTCHA
lies in real hard task of teaching a computer how to process information
in a way similar to how humans think. Algorithms with artificial
intelligence (AI) will have to be designed in order to make the computer
think like humans when it comes to recognizing the patterns in CAPTCHA
images.
However, there is no universal algorithm
that could pass through and break any CAPTCHA system. Thus, each
CAPTCHA algorithm must have to be tackled individually. It might not
work 100 percent of the time, but it can work often enough to be
worthwhile to the spammers.