web-dev-qa-db-fra.com

Accessibilité et CAPTCHA

Je veux inclure un CAPTCHA dans mon application Web, mais je veux aussi m'assurer que mon application Web est accessible aux personnes handicapées ou handicapées. Comment dois-je procéder?

Par exemple, quelqu'un connaît-il des ressources sur la façon de rendre les CAPTCHA accessibles, ou comment atteindre des objectifs de sécurité similaires sans sacrifier l'accessibilité? Existe-t-il des meilleures pratiques en matière d'accessibilité et d'utilisation des CAPTCHA? Quelqu'un connaît-il des lectures sur la façon de se conformer aux exigences d'accessibilité pour les sites Web du gouvernement et de s'assurer qu'un site Web est utilisable par des personnes ayant des déficiences ou des handicaps, lors de l'utilisation d'un CAPTCHA?

J'ai vu que de nombreux sites proposent un CAPTCHA audio alternatif, que les personnes ayant une déficience visuelle (ou qui autrement ne peuvent pas lire le CAPTCHA) peuvent utiliser à la place. Par exemple, je sais que reCAPTCHA propose un CAPTCHA audio comme alternative à leur CAPTCHA visuel. Cependant, au-delà de la simple constatation de l'existence de ces alternatives, je suis totalement ignorant de la bonne façon d'assurer l'accessibilité. Un CAPTCHA audio est-il un bon moyen d'assurer l'accessibilité? Les CAPTCHA audio sont-ils pris en charge sur tous les navigateurs (sans plugins supplémentaires) et utilisables par tous les utilisateurs handicapés? Ou, y a-t-il de meilleures approches que vous recommanderiez? Existe-t-il des solutions existantes auxquelles je peux sous-traiter?

Mise à jour: Je me rends compte qu'il existe alternatives aux CAPTCHA qui peuvent être suffisants pour de nombreuses situations courantes, comme la lutte contre le spam. J'ai étudié de nombreuses alternatives standard, mais j'ai trouvé qu'elles ne conviennent pas dans ma situation particulière. Par conséquent, j'espère que vous vous concentrerez sur ce qui peut être fait pour l'accessibilité en supposant que je ai besoin d'utiliser un CAPTCHA. (La liste des alternatives aux CAPTCHA ne me sera probablement pas utile.)

13
D.W.

Nous avons mis en œuvre une solution qui mesurait le temps nécessaire pour soumettre.

  1. À l'arrivée sur la page avec le formulaire, définissez une variable de session avec l'heure en
  2. En frappant le code qui traite réellement le formulaire, vérifiez que le temps nécessaire pour remplir et soumettre n'a pas été stupidement rapide

Fonctionne très bien et est complètement accessible.

Voici une démo: http://www.frankdesignltd.co.uk/blog/using-sessions-to-stop-spam/

11
beingalex

Malheureusement, les CAPTCHA audio ne sont pas un bon moyen d'assurer l'accessibilité. Par exemple, la version actuelle de l'alternative audio dans reCAPTCHA cause beaucoup de problèmes aux utilisateurs aveugles. Vous pouvez voir une discussion dans le groupe reCAPTCHA Google .

Certains chercheurs de l'Université Towson travaillaient sur une alternative CAPTCHA accessible qui associe des images non textuelles avec du son (résumé PDF) . Le document a été publié par l'American Society for Engineering Education en 2009. Je n'ai vu aucune mise à jour depuis le document initial.

Les CAPTCHA sont une course aux armements, et en ce moment, il semble que les robots aient le dessus. Si vous essayez d'empêcher les fausses inscriptions d'utilisateurs, plutôt que de bloquer le contenu indésirable, il y a moins de place pour l'analyse de contenu. Avez-vous envisagé de collecter du contenu juste pour donner à ces outils quelque chose sur lequel travailler? Vous devez donc ajouter un champ de texte de forme libre à votre formulaire d'inscription avec une question ouverte, puis désactiver quelque chose comme Akismet ou Mollom.

8
cboyden

En ce qui me concerne, les CAPTCHA sont morts. Il y a eu tellement d'investissements et de recherches pour vaincre les CAPTCHA basés sur l'image et l'audio que vous devez les rendre presque illisibles (ou inaudibles), et les méchants peuvent encore embaucher une douzaine de personnes dans le 3ème monde pour les résoudre quand même.

J'ai trouvé que la meilleure méthode consiste à inclure un champ de formulaire factice:

<form method="POST" action="/target">
    <input type="hidden" name="userid" value="1337" />
    <div class="formField" id="contactFieldName">
        Name: <input type="text" name="name" value="" />
    </div>
    <div class="formField" id="contactFieldEmail">
        Email: <input type="text" name="name" value="" />
    </div>
    <div class="formField" id="contactFieldSubject">
        Subject: <input type="text" name="subject" value="" />
    </div>
    <div class="formField" id="contactFieldFoo">
        Foo: <input type="text" name="foo" value="" />
    </div>
    <textarea rows="15" cols="80" name="message"></textarea>
</form>

Ensuite, dans le CSS:

#contactFieldFoo {
    display: none;
}

Enfin, dans votre script cible, assurez-vous que le champ "foo" est vide. Cela garantit que tous les robots collecteurs de spam sont ignorés, ce qui est (étonnamment) la plupart d'entre eux.

6
Polynomial

J'ai trouvé ne analyse utile de l'accessibilité de plusieurs CAPTCHA , y compris reCAPTCHA, AOL CAPTCHA et Google CAPTCHA. Il met en évidence certains problèmes à surveiller, notamment l'ordre dans lequel les icônes et les champs de saisie de texte sont présentés et les implications pour le flux de travail d'une personne qui utilise un lecteur d'écran.

Avertissements: L'analyse a été écrite il y a plus de 3 ans, donc je ne sais pas si ses commentaires restent applicables. De plus, il n'est pas clair s'il existe une bibliothèque/un logiciel/une boîte à outils disponibles sur le marché qu'un concepteur d'applications Web peut utiliser s'il développe une nouvelle application Web et a besoin d'un CAPTCHA accessible. (reCAPTCHA est facilement disponible, mais l'analyse évalue son accessibilité comme médiocre. L'analyse évalue AOL et CAPTCHA de Google beaucoup mieux, mais ceux-ci ne sont généralement pas disponibles pour autres.)

3
D.W.

J'ai récemment lu pas mal de choses sur Convivialité et accessibilité de Captcha, et j'ai découvert que la méthode "pot de miel" semblait être la plus utile & secure alternative jusqu'à présent par opposition à toutes les autres alternatives.

Maintenant Je sais que vous voulez utiliser le Captcha et rien d'autre dans votre cas. De toutes mes lectures, il semble en effet que ReCaptcha semble la meilleure alternative alors: non seulement il utilise des mots qui sont déjà connus pour être méconnus par l'OCR et alors uniquement utilisé dans captcha, qui est assez sûr et également utilisable car ces mots sont des mots existants et pas seulement des chaînes de caractères aléatoires.

Maintenant, vous devez soyez conscient que cela prend environ 10 secondes. en moyenne pour résoudre une image (texte) Captcha tandis que cela prend environ 28 secondes en moyenne pour résoudre un captcha audio quand il est audible. Cela rend le Captcha audio pas très utilisable bien que ce soit la seule alternative jusqu'à présent pour les personnes handicapées.

Quelques lectures qui pourraient vous être utiles:

http://cdn.ly.tl/publications/text-based-captcha-strengths-and-weaknesses.pdf

http://haacked.com/archive/2007/09/11/honeypot-captcha.aspx

https://wiki.umn.edu/pub/UmmCSciSeniorSeminar/Spring2012Talks/CodySutherland.pdf

http://www.ijcns.com/pdf/ijpc45-51.pdf

http://cups.cs.cmu.edu/soups/2008/proceedings/p44Yan.pdf

http://theory.stanford.edu/~jcm/papers/captcha-study-oakland10.pdf

1
Ivan