Ever came across distorted texts or images while downloading something or trying to access your e-mail? Well, that’s nothing but CAPTCHA. It stands for Completely Automated Public Turing test to tell Computers and Humans Apart. CAPTCHA is nothing but a program that helps you in knowing whether a user is a computer or human. It generates an image which has distorted letters and different pictures with different letters in different shapes. Finally it requests the user to enter the letters shown in the picture.
Benefits offered by CAPTACHA
CAPTACHA is beneficial to websites in a lot of ways. It helps websites by protecting them from bots or better known as automated programs written in order to produce spam. Now, CAPTCHA can only be read by humans and not computer generated programs. So its helps you in making your site secured and safe from bots. Bots are not capable enough to navigate sites that use CAPTCHA.
CAPTCHA is particularly important for sites that run free services. Take the example of Gmail or Yahoo Mail. You might have noticed sometimes that when you enter wrong password, you will find a CAPTCHA somewhere down and you cannot proceed further unless you enter the distorted texts or numbers. This is done to prevent abuses by automated programs.
Another major benefit provided by these is protection from dictionary attacks. Now, what are these? Well, these are automatically generated scripts or computer programs which try random passwords where a login is required. Since automated programs cannot read CAPTCHA, the login access is foiled. Lastly, CAPTCHA helps search engines to prevent crawling the spam contents that may be harmful for keeping database safe or sensitive data of being exploited.
You can program a CAPTCHA using programming languages like PHP
or ASP. However you code should meet three crucial requirements. First of all the code should generate a random picture with diverse properties. Next, it should validate the answer given by the user. And, lastly, it should make these pictures secure. In order to make the code more reliable one can Rotate the text randomly, add random spaces in between characters, use a TTF fonts and change the font randomly every time, use a random text and image size every time, use more advanced text distortion and colours, move the lines randomly, store the password in a random cookie.