Abstract
In the current world, the Internet is being widely for every activity we can think of and it ranges from online communication to e-commerce, education, health, sports and a variety of other things. Progress in any field has its own problems and in the world of web applications and websites, one of the primary concerns is bots accessing this application thereby severely hampering performance as well as crashing the availability of a system. In order to tackle this widespread problem, CAPTCHA (Completely Automated Public Turing Test to Tell Computers and Human Apart) was introduced in the early 2000s to protect internet applications against bots. In the present world, most of the commercial websites are equipped with the CAPTCHA functionality to overcome any imminent attacks. However, a common complaint has been related to the ease of solving CAPTCHAs by users of the web applications. Several methods of CAPTCHA functionality have been introduced and each of them has their own positives and drawbacks. The goal of a CAPTCHA solution should help users in resolving it fairly while being strong to counter-attack automated responses. With this project, the goal is to introduce a new CAPTCHA method with grid colors where the user will be prompted to draw a specific colored line based on the instructions provided in the interface.
I. INTRODUCTION
With the arrival of the World Wide Web technology, everything we can think of has been made available on the internet through websites and web applications and it is only growing with each minute at a rapid speed. This technology has been embraced by people all over the world which allows for easy communication and accessibility to a variety of information.
However, with increasing popularity automated solutions known as bots have been developed to attack these web applications. To counter these attacks the CAPTCHA solution was introduced with the focus being on both securities as well as ease of use for end users. CAPTCHA is generally a web page that poses the user with a challenge that could be resolved based on instructions provided.
The goal here is to block automated machines from performing activities such as registrations, automated feedback, spam and other resource blocking activities. A variety of CAPTCHA solutions based on text, image, and audio interfaces have been made available to users. Some of these solutions are easy targets for the bots depending on how they have been implemented.
The challenge lies in developing a CAPTCHA that meets ease of use requirements while not compromising on application safety. The proposed solution will be a web page with a grid interface provided to the users along with instructions on how to solve the CAPTCHA. The grid interface will contain multiple colors scrambled across the grid and user is instructed to draw a line through the mentioned colors or path in the textual hint.
The colors and the grid will be designed to look intuitive enough for the users and drawing the line is something that will make the users feel comfortable and it will be difficult for the bots to crack. An example question for the user would be-”Draw a line connecting all green squares”.
II. RELATED WORK & existing solutions:
Variety of CAPTCHA solutions based on text, image, video, and audio have been made available to the users. Text-based CAPTCHA is being used widely and the CAPTCHA challenges are sometimes very hard to solve even by the human. All existing CAPTCHA challenges require a significant conscious effort by the person answering them — e.g. reading and typing a nonsense word.
Many existing CAPTCHAs irritate or threaten users since they are obvious tests of skill. Most existing CAPTCHAs are vulnerable to out” attacks in which challenges are passed to a networked community of human readers. There are some problems with the existing text-based CAPTCHAs, If it is simple text-based CAPTCHA then it can be easily solved by OCR (Optical character recognition) software and segmentation; If it is complex text-based CAPTCHA humans also may not be able to solve the challenge.There are six text-based challenges.
While the first two sets can be solved with some effort the third set is highly difficult for a human to solve. An ideal CAPTCHA solution should always be easy for the users to solve while not compromising on the security aspect. The proposed solution would be a 4*4 grid which is filled with different colored images in random sections. The user has to follow the provided instructions to solve this CAPTCHA.
This CAPTCHA has several advantages.
• It will be easy for humans to understand the challenge and solve the CAPTCHA since it is color based images that are being used in the grid.
• The user can solve this type of CAPTCHA in few seconds without any frustration or stress.
• Bots cannot solve this type of CAPTCHA because the grids are actually images of grid colors and not a direct fill.
III. The 4*4 grid will be generated with 16 identical square boxes.
- The grid will be filled using five grid colors (Red, Green, Blue, Yellow, and Black). The colors are images and not color codes.
- Red, Green, Yellow are selected out of the five to fill a total of 12 boxes in a random manner and each color occupying four boxes.
- Black and Blue are used to fill the remaining four square boxes. Combinations can be one Black, three Blue or two Black, two Blue and one Blue, three Black.
- CAPTCHA Challenge- Form a horizontal red line in row two using the red colored image.
- The user drags and drops the specified colored image as per instruction.
- Positions of the colored images are interchanged based on drag and drop moves.
- A line formation based on instruction will be deemed as successful CAPTCHA answer else it will be considered a failure.
- Failure will result in generation of a new CAPTCHA challenge.
Algorithm for the idea:
- Step1: generate an image with random words
- Step2: in the generated image find the middle pixel (height of the image/2)
- Step3: separate images into two. One image will run through 00 to mid, width another will run through mid+1,0 to height, width
- Step4: place the separated images separately and allow the user to drag an image
- Step5: allow the user to type the captcha the response after hovering
- Step6: validate the user input