Completely Automated Public Turing Test to Tell Computers and Humans Apart (CAPTCHA) is a type of challenge–response test used in computing to distinguish between human and automated system input. The idea of this test is to limit access to resources requested on the Internet by distinguishing users as being either genuine or robotic. CAPTCHA is an acronym for “Completely Automated Public Turing test to tell Computers and Humans Apart.”
Originally developed in the late 1990s by researchers at Carnegie Mellon University, CAPTCHAs were first used to prevent automated software from submitting online forms, acquiring web-based email accounts, and generally accessing computing resources that are otherwise designed for human use only. The goal of CAPTCHAs is to reduce such abuses by using a test that is difficult to automate but relatively easy for humans to solve.
CAPTCHAs are generally implemented by presenting an image of distorted text, where one or more characters are obfuscated. The user is then asked to type the characters presented into a text box. Typically, CAPTCHA tests are comprised of some combination of alphanumeric characters (capital and lower-case letters, numbers, symbols).
In more recent years, CAPTCHAs have been used to help reduce the processing of spam emails, by incorporating different CAPTCHAs into online forms. They can also be used to restrict access to certain websites, depending on whether the user passes the CAPTCHA or not.
CAPTCHAs have become increasingly difficult to solve for humans over time, as automated systems continue to improve their ability to recognize distorted text and images. By continuing to develop new, more complex CAPTCHAs, computer scientists hope to keep ahead of automated systems and continue to limit the abuse of computer resources.
Today, CAPTCHAs are used widely across the Internet to limit access to websites, applications, and resources. They continue to serve as an effective tool to prevent automated programs from surpassing human-level accuracy in computer-controlled tasks.