[tor-bugs] #10831 [Obfuscation/BridgeDB]: Captchas are not accessible for blind users

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Sep 13 20:26:21 UTC 2017

#10831: Captchas are not accessible for blind users
 Reporter:  PZajda                               |          Owner:  isis
     Type:  enhancement                          |         Status:  new
 Priority:  Medium                               |      Milestone:
Component:  Obfuscation/BridgeDB                 |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  bridgedb-reportbug, isis2015Q3Q4,    |  Actual Points:
  isisExB, isisExC, bridgedb-ui                  |
Parent ID:                                       |         Points:
 Reviewer:                                       |        Sponsor:

Comment (by isis):

 Replying to [comment:13 unknown_artist]:
 > I am planning to use https://pypi.python.org/pypi/captcha for generating
 captchas. As per the documentation, we can do something like this for
 generating audio captchas :
 > {{{
 > from captcha.audio import AudioCaptcha
 > audio = AudioCaptcha(voicedir='/path/to/voices')
 > audio.write('aT2bXvw7','aT2bXvw7.wav')
 > }}}
 > The above code snippet will generate an audio captcha whose correct
 answer is aT2bXvw7
 > The voice directory should contain single character named directories,
 for example :
 > * a/
 > * b/
 > * c/
 > These directories should contain 8 bit PCM .wav files. Each character
 directory may contain as many .wav files and one of them will be randomly
 chosen for captcha generation

 Hi unknown_artist!

 Thanks for looking into this! It looks good. We'd need to make the
 recordings as part of this ticket, since their default voice only includes
 characters 0-9. From their README, it looks like they'd appreciate an
 upstream contribution of voice files as well.

 We'll also need to update the interface at
 https://bridges.torproject.org/bridges to have some button people can
 click to hear audio, and probably have a hidden directive for screen
 readers before the header bar at the top of the page, e.g. something like:

 .screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    width: 1px;
    overflow: hidden;
    position: absolute !important;

 <span class="screen-reader-text">Instructions for those using screen
 readers: please use access key 'a' to play an audio captcha, enter the
 characters you hear into the form which is accessible via access key 't',
 and then press enter. Please be aware that the audio captcha is in

 The American Foundation for the Blind has [http://www.afb.org/info
 /accessible-forms/1235 some helpful tips for making web things easier] on
 people with braille terminals and screen readers.

 We may also want to put a screen reader note on the page which contains
 the actual bridges to let them know what the access key is for the "Select
 All" button to copy the bridge lines. (It also doesn't appear to have an
 access key right now.)

 Oh, all of the strings above should also be translated; you can do that by
 making them constants in `bridgedb/strings.py`.

 Let me know if you need any help!

Ticket URL: <https://trac.torproject.org/projects/tor/ticket/10831#comment:14>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online

More information about the tor-bugs mailing list