O teste de Turing Público Completamente Automatizado para diferenciar computadores e humanos (CAPTCHA) tornou-se enraizado na navegação na Internet desde que os computadores pessoais ganharam impulso no mercado de eletrônicos de consumo. Desde que as pessoas estão online, os desenvolvedores da web procuram maneiras de bloquear bots de spam. O serviço CAPTCHA distingue entre atividade humana e de bot para manter os bots afastados. Infelizmente, seus métodos são menos precisos. Na tentativa de proteger os humanos, os desenvolvedores tornaram grande parte da web inacessível para pessoas com deficiência.
Métodos de autenticação, como CAPTCHA, normalmente usam classificação de imagens, quebra-cabeças, amostras de áudio ou testes baseados em cliques para determinar se o usuário é humano. Embora os tipos de desafios estejam bem documentados, a sua lógica não é de conhecimento público. As pessoas só podem adivinhar o que é necessário para “provar” que são humanas.
O que é CAPTCHA? Um CAPTCHA é um teste de Turing reverso que assume a forma de um teste de desafio-resposta. Por exemplo, se instruir os usuários a “selecionar todas as imagens com escadas”, eles deverão escolher as escadas dos corrimãos, calçadas e faixas de pedestres. Alternativamente, eles podem ser solicitados a inserir o texto que veem, adicionar a soma das faces dos dados ou completar um quebra-cabeça deslizante. Os CAPTCHAs baseados em imagens são responsáveis pelas experiências compartilhadas mais frustrantes que os usuários da Internet têm – decidir se devem selecionar um quadrado quando apenas uma pequena parte do objeto em questão está nele.
Independentemente do método, um computador ou algoritmo determina, em última análise, se o candidato é humano ou máquina. Este serviço de autenticação gerou muitas ramificações, incluindo reCAPTCHA e hCAPTCHA. Levou até à criação de empresas inteiras, como GeeTest e Arkose Labs. O sistema automatizado reCAPTCHA de propriedade do Google exige que os usuários cliquem em uma caixa de seleção chamada “Não sou um robô” para autenticação. Ele executa uma análise adaptativa em segundo plano para atribuir uma pontuação de risco. hCAPTCHA é uma alternativa baseada em classificação de imagens. Outros métodos de autenticação incluem autenticação multifator (MFA), códigos QR, números de identificação pessoal temporários (PINs) e biometria. Não seguem a fórmula desafio-resposta, mas servem propósitos fundamentalmente semelhantes. Essas ramificações pretendem ser melhores que as originais, mas muitas vezes não atendem aos padrões modernos de acessibilidade. Veja o hCaptcha, por exemplo, que usa um cookie para permitir que você ignore totalmente o teste de resposta ao desafio. É uma ótima ideia na teoria, mas não funciona na prática. Você deve receber um código único por e-mail, enviado para um número específico por SMS. Os usuários relatam receber inúmeras mensagens de erro, forçando-os a preencher o texto padrão CAPTCHA. Isto só estará disponível se o site o tiver ativado explicitamente durante a configuração. Se não estiver configurado, você deverá completar um desafio de imagem que não reconhece leitores de tela. Mesmo quando o processo inicial funciona, a autenticação subsequente depende de um cookie entre sites de terceiros, que a maioria dos navegadores bloqueia automaticamente. Além disso, o código expira após um curto período, então você terá que refazer todo o processo se demorar muito para passar para a próxima etapa. Por que as equipes usam CAPTCHA e métodos de autenticação semelhantes? CAPTCHA é comum porque é fácil de configurar. Os desenvolvedores podem programá-lo para aparecer e ele conduz o teste automaticamente. Dessa forma, eles podem se concentrar em assuntos mais importantes e, ao mesmo tempo, evitar spam, fraude e abuso. Supõe-se que essas ferramentas tornem mais fácil para os humanos usarem a Internet com segurança, mas muitas vezes impedem que pessoas reais façam login. Esses testes resultam em uma experiência geral ruim do usuário. Um estudo descobriu que os usuários desperdiçaram mais de 819 milhões de horas em mais de 512 bilhões de sessões de reCAPTCHA v2 em 2023. Apesar de tudo, os bots prevalecem. Os modelos de aprendizado de máquina podem resolver CAPTCHA baseado em texto em frações de segundo com mais de 97% de precisão. Um estudo de 2024 sobre o reCAPTCHA v2 do Google – que ainda é amplamente utilizado apesar do lançamento do reCAPTCHA v3 – descobriu que os bots podem resolver a classificação de imagens CAPTCHA com até 100% de precisão, dependendo do objeto que têm a tarefa de identificar. Os pesquisadores usaram um modelo gratuito e de código aberto, o que significa que os malfeitores poderiam facilmente replicar seu trabalho. Por que os desenvolvedores da Web deveriam parar de usar CAPTCHA? Métodos de autenticação como CAPTCHA apresentam um problema de acessibilidade. Os avanços do aprendizado de máquina forçaram esses serviços a se tornarem cada vez mais complexos. Mesmo assim, eles não são infalíveis. Os bots obtêmacerta mais do que as pessoas. A pesquisa mostra que eles podem completar o reCAPTCHA em 17,5 segundos, alcançando 85% de precisão. Os humanos demoram mais e são menos precisos. Muitas pessoas falham nos testes CAPTCHA e não têm ideia do que fizeram de errado. Por exemplo, um aviso instruindo os usuários a “selecionar todas as praças com semáforos” parece bastante simples, mas fica complicado se uma parte do poste estiver em outra praça. Eles deveriam selecionar essa caixa ou é isso que um algoritmo faria? Embora as capacidades dos bots tenham crescido enormemente, os humanos permaneceram os mesmos. À medida que os testes ficam cada vez mais difíceis, eles se sentem menos inclinados a realizá-los. Uma pesquisa mostra que quase 59% das pessoas deixarão de usar um produto após várias experiências ruins. Se a autenticação for muito complicada ou complicada, eles poderão parar totalmente de usar o site. As pessoas podem ser reprovadas nesses testes por vários motivos, inclusive técnicos. Se eles bloquearem cookies de terceiros, tiverem um proxy local em execução ou não atualizarem o navegador há algum tempo, eles poderão continuar falhando, independentemente de quantas vezes tentarem. Problemas de autenticação com CAPTCHA Pelas razões mencionadas acima, a maioria dos tipos de CAPTCHA são inerentemente inacessíveis. Isto é especialmente verdadeiro para pessoas com deficiência, uma vez que estes testes de desafio-resposta não foram concebidos tendo em mente as suas necessidades. Alguns dos problemas comuns incluem o seguinte: Problemas relacionados ao uso de recursos visuais e leitores de tela Os leitores de tela não podem ler CAPTCHAs visuais padrão, como o teste de texto distorcido, uma vez que as palavras confusas e distorcidas não são legíveis por máquina. Os métodos de classificação de imagens e quebra-cabeças deslizantes são igualmente inacessíveis. Em uma pesquisa WebAIM realizada de 2023 a 2024, os usuários de leitores de tela concordaram que o CAPTCHA era o item mais problemático, classificando-o acima de links ambíguos, mudanças inesperadas de tela, texto alternativo ausente, pesquisa inacessível e falta de acessibilidade do teclado. A sua posição no topo manteve-se praticamente inalterada durante mais de uma década, ilustrando a sua história de inacessibilidade. Questões relacionadas à audição e ao processamento de áudio CAPTCHAs de áudio são relativamente incomuns porque as práticas recomendadas de desenvolvimento web desaconselham a reprodução automática de áudio e enfatizam a importância dos controles do usuário. No entanto, ainda existem CAPTCHAs de áudio. Pessoas com deficiência auditiva ou surdas podem encontrar uma barreira ao tentar fazer esses testes. Mesmo com tecnologia assistiva, a distorção intencional de áudio e o ruído de fundo tornam essas amostras um desafio para a compreensão de indivíduos com distúrbios de processamento auditivo. Questões relacionadas ao motor e à destreza Os testes que exigem habilidades motoras e de destreza podem ser desafiadores para pessoas com deficiências motoras ou físicas. Por exemplo, alguém com tremor nas mãos pode achar difícil os quebra-cabeças deslizantes. Além disso, os testes de classificação de imagens que carregam mais imagens até que não reste nenhuma que atenda aos critérios podem representar um desafio. Questões relacionadas à cognição e linguagem À medida que os CAPTCHAs se tornam cada vez mais complexos, alguns desenvolvedores recorrem a testes que exigem uma combinação de pensamento criativo e crítico. Aqueles que exigem que os usuários resolvam um problema de matemática ou completem um quebra-cabeça podem ser desafiadores para pessoas com dislexia, discalculia, distúrbios de processamento visual ou deficiências cognitivas. Por que a tecnologia assistiva não preenche a lacuna Os CAPTCHAs são intencionalmente projetados para serem interpretados e resolvidos por humanos, portanto, tecnologias assistivas, como leitores de tela e controles de viva-voz, podem ser de pouca ajuda. O ReCAPTCHA, em particular, representa um problema porque analisa a atividade em segundo plano. Se sinalizar os dispositivos de acessibilidade como bots, servirá um CAPTCHA potencialmente inacessível. Mesmo que essa tecnologia pudesse preencher a lacuna, os desenvolvedores web não deveriam esperar que isso acontecesse. Os padrões da indústria determinam que eles devem seguir os princípios de design universal para tornar seus sites tão acessíveis e funcionais quanto possível. Os problemas de acessibilidade do CAPTCHA poderiam ser perdoados se fosse uma ferramenta de segurança eficaz, mas está longe de ser infalível, uma vez que os bots acertam mais do que os humanos. Porquê continuar a utilizar um método que é ineficaz e cria barreiras para as pessoas com deficiência? Existem alternativas melhores. Princípios para autenticação acessível A ideia de que os humanos deveriam superar consistentemente os algoritmos está ultrapassada. Existem melhores métodos de autenticação, como a autenticação multifator (MFA). O mercado de autenticação de dois fatores valerá cerca de US$ 26,7 bilhões até 2027, ressaltando sua popularidade. Esta ferramentaé mais eficaz que um CAPTCHA porque impede o acesso não autorizado, mesmo com credenciais legítimas.
Certifique-se de que sua técnica de MFA esteja acessível. Em vez de fazer com que os visitantes do site transcrevam códigos complexos, você deve enviar notificações push ou mensagens SMS. Confie no preenchimento automático do código de verificação para capturar e inserir o código automaticamente. Alternativamente, você pode introduzir um recurso “lembrar este dispositivo” para ignorar a autenticação em dispositivos confiáveis. A abordagem de autenticação de dois fatores da Apple foi projetada desta forma. Um dispositivo confiável exibe automaticamente um código de verificação de seis dígitos, para que não seja necessário procurá-lo. Quando solicitado, os usuários do iPhone podem tocar na sugestão que aparece acima do teclado do celular para preenchimento automático.
O logon único é outra opção. Este serviço de autenticação de sessão e usuário permite que as pessoas façam login em vários sites ou aplicativos com um único conjunto de credenciais de login, minimizando a necessidade de verificação repetida de identidade. “Links mágicos” de uso único são uma excelente alternativa ao reCAPTCHA e PINs temporários. Em vez de lembrar um código ou resolver um quebra-cabeça, o usuário clica em um botão. Evite impor prazos porque, de acordo com o Critério de Sucesso 2.2.3 das WCAG, os utilizadores não devem enfrentar limites de tempo, uma vez que as pessoas com deficiência podem necessitar de mais tempo para concluir ações específicas. Alternativamente, você pode usar o Cloudflare Turnstile. Ele autentica sem mostrar um CAPTCHA, e a maioria das pessoas nem precisa marcar uma caixa ou apertar um botão. O software funciona emitindo um pequeno desafio JavaScript nos bastidores para diferenciar automaticamente entre bots e humanos. O Cloudflare Turnstile pode ser incorporado em qualquer site, o que o torna uma excelente alternativa às tarefas de classificação padrão. Teste e avaliação de designs de autenticação acessíveis Testar e avaliar seus métodos de autenticação alternativos acessíveis é essencial. Muitos projetos parecem bons no papel, mas não funcionam na prática. Se possível, reúna feedback de usuários reais. Um beta aberto pode ser uma forma eficaz de maximizar a visibilidade. Lembre-se de que as considerações gerais de acessibilidade não se aplicam apenas às pessoas com deficiência. Incluem também aqueles que são neurodivergentes, não têm acesso a um dispositivo móvel ou utilizam tecnologia assistiva. Certifique-se de que seus projetos alternativos considerem esses indivíduos.
Realisticamente, você não pode criar um sistema perfeito, pois cada pessoa é única. Muitas pessoas têm dificuldade para seguir processos de várias etapas, resolver equações, processar instruções complexas ou lembrar senhas. Embora os princípios universais de web design possam melhorar a flexibilidade, nenhuma solução pode atender às necessidades de todos. Independentemente da técnica de autenticação usada, você deve apresentar aos usuários diversas opções de autenticação antecipadamente. Eles conhecem melhor suas capacidades, então deixe-os decidir o que usar em vez de tentar projetar demais uma solução que funcione para todos os casos extremos. Resolva o problema de acessibilidade com alterações de design Uma pessoa com tremores nas mãos pode não conseguir completar um quebra-cabeça deslizante, enquanto alguém com distúrbio de processamento de áudio pode ter problemas com amostras de áudio distorcidas. No entanto, você não pode simplesmente substituir os CAPTCHAs por alternativas porque muitas vezes são igualmente inacessíveis. Os códigos QR, por exemplo, podem ser difíceis de ler para aqueles com controle motor fino reduzido. Pessoas com deficiência visual podem ter dificuldade para encontrá-lo na tela. Da mesma forma, a biometria pode representar um problema para pessoas com deformidades faciais ou amplitude de movimento limitada. Abordar o problema da acessibilidade requer pensamento criativo. Você pode começar visitando os tutoriais de acessibilidade da Web Accessibility Initiative para desenvolvedores entenderem melhor o design universal. Embora esses tutoriais se concentrem mais no conteúdo do que na autenticação, você ainda pode usá-los a seu favor. A nota preliminar do Grupo W3C sobre a inacessibilidade do CAPTCHA fornece orientações mais relevantes. Começar é tão fácil quanto pesquisar as melhores práticas. Compreender o básico é essencial porque não existe uma solução universal para web design acessível. Se você deseja otimizar a acessibilidade, considere obter feedback das pessoas que realmente visitam seu site. Leitura adicional
“O CAPTCHA: Perspectivas e Desafios”, Darko Brodić e Alessia Amelio “Projetando texto acessível sobre imagens: melhores práticas, técnicas e recursos”, Hannah Milan “Em busca do melhor CAPTCHA”, David Bushell “Modelo de pontuação proposto pelo WCAG 3.0: uma mudançaem Avaliação de Acessibilidade”, Mikhail Prosmitskiy