Monday, August 29, 2011

Section 508 Accessibility and CAPTCHA

Section 508 refers to a series of standards that establish a minimum level of accessibility for various technologies. The US Federal government has developed these standards originally as part of Rehabilitation Act of 1973. All federal agencies are required to comply and contractors, vendors and anyone receiving federal money should provide products and services in an accessible format.
Resources for understanding and implementing Section 508 are available here: http://www.section508.gov/

You are likely familiar with the images above. As you may also know, this is called a CAPTCHA box, or, in long form, Completely Automated Public Turing Test To Tell Computers and Humans Apart. CAPTCHA is the most common method employed to protect a website’s text input form from automated (robot or bot) spamming. Their web site is here: http://www.captcha.net/

CAPTCHA uses methods that appear to violate the standards of Section 508. In early versions users were validated by CAPTCHA displaying an image on the screen depicting a series of letters. Users were required to type those letters into an edit field before a form could be submitted. Unfortunately, spammers used automated character recognition systems to decode the images and place the letters into the field thereby defeating the system. Additionally, vision impaired users were unable to see the images and were therefore unable to submit a form at all.

To counter the character recognition capabilities of spammers, developers started using distorted letters that were not text, but images of text. While that did to a large extent thwart spammers, it made it no easier for the vision impaired users and made it more difficult for users with some learning disabilities.

In order to provide access to visually impaired users, developers started attaching a sound file to the images. Soon after, voice recognition systems were able to automatically recognize the information in the sound file. Distorting the sound file and adding background noise addressed that. This made the sound files hard to recognize, especially by those with learning disabilities. And, of course, if a user were both vision and hearing impaired, none of these methods would allow access to a form.

Section 508 requires service suppliers to provide a text equivalent for non-text elements. This itself defeats the purpose of an only image based CAPTCHA, because if you provide a text alternative automated systems can easily pass through your challenge.

Another consideration when using an image based CAPTCHA is that images cannot be displayed by the use of a style sheet. Section 508 requires that pages should be readable without an associated style sheet. Once somebody disables your style sheet, the image CAPTCHA will be useless.

A new idea has emerged which might offer a more acceptable challenge. CAPTCHA can be made to offer a “challenge question”. It could be a simple math equation, a question that is common knowledge to all people but not to spammer’s robots. If a challenge question is employed, programmers should attach labels to the fields programmatically, and make sure that the fields can be accessed by keyboard only. In addition, provide clear instructions on solving the challenge question.

Can CAPTCHA be made completely Section 508 compliant? In its current form, it appears not – at least not completely. However, offering a combination of visual and auditory options would make a form accessible to the majority of users.

2 comments:

Anonymous said...

If a challenge question is employed, programmers should attach labels to the fields programmatically, and make sure that the fields can be accessed by keyboard only.

What about users that may use voice recognition rather a keyboard--some people cannot type at all. I don't see how this would be a better solution.

SpeakUp Librarian said...

I love acronyms. Thanks for informing us of what CAPTCHA actually means. I wonder if the final solution will be that ONLY a computer will be able to answer the CAPTCHA problem, ha ha.
But on a serious note, thanks for this insightful post. I find some CAPTCHAs quite difficult. I have a hearing loss so the audio file is not a help for me. I'm glad these problems are being addressed.