A melhor forma: Captcha Alternatives


Se você já esteve na internet ultimamente, você já deve ter percebido que é praticamente impossível fazer qualquer coisa. Isto porque um monte de coisas importantes internet envolve formas, e um monte de formas estão tentando realmente difícil nos dias de hoje para fazer você prova ser humano. Isso é importante, porque se você não é humano poderia ser uma guesser senha ou um robô de spam tenta obstruir o formulário com porcaria inútil. Isso também acontece em lugares como fóruns de internet, onde a maioria dos seres humanos estão postando porcaria inútil qualquer maneira e um par de 'bots postar anúncios noiva russa poderia realmente adicionar alguma substância e classe em vez disso.

O teste da humanidade é geralmente realizado através do uso de algum tipo de sistema de validação visual ou auditiva, ou "captcha", ou, se você quiser obter técnico ", irritando o inferno fora de você." Você vê, nos primeiros dias, captcha parece simplesmente uma imagem com uma palavra sobre isso. Você digitou a palavra num campo de formulário na vizinhança e você deve estar bem.




Bem, spammers rapidamente percebeu que, com um pouco de "de software que podem ter seus robôs digitalizado arquivos de imagem, aplicar um algoritmo de reconhecimento de caracteres na mesma, e descobrir a palavra.

Então captcha teve de começar a usar o texto distorcido em uma tentativa de despistar tal software. Spammers, por sua vez, fizeram seu software mais sofisticado de ler, mesmo o texto distorcido. Captcha então tive que começar mesmo mutilar o texto, desenhar linhas através dele, com os personagens se sobrepõem, perfurando buracos nas letras, colocando as imagens por trás das letras, colocando as letras em cenários Saw macabro e forçando-os a lutar por suas vidas, etc. .


ReCaptcha e outros crimes

Isso nos leva a onde estamos hoje. A mídia captcha aparece como um teste de daltonismo octarino, e os usuários são muitas vezes têm de fazer duas ou três códigos captcha apenas para encontrar algo que você pode completar com sucesso. Logo a única maneira de fazer um captcha ilegível por um computador irá torná-lo ilegível por seres humanos também, e todo o sistema entrará em colapso.

Um dos meus exemplos favoritos de como o captcha lâminas tornaram-se é o serviço Google chamado ReCaptcha. Um projeto certamente soar altruísta, ReCaptcha usa captcha gerada para ajudar a digitalizar livros antigos.

Como funciona está puxando uma palavra que o seu software de reconhecimento de não reconhecer os personagens e coloca-o ao lado de uma palavra normal, ele sabe. A palavra regular é testado por ReCaptcha. Os resultados para a outra palavra, se você for consistente, dizendo ao sistema que a palavra não é reconhecido. Claro que, para evitar 'bots a partir do preenchimento do formulário, as duas palavras têm ainda de ser distorcida para torná-los quase ilegível.

Pense nisso por um minuto. Deixe as implicações afundar. Você vê o que há de errado com esta imagem? Deixe-me soletrar para você. Eu torná-lo real clara, de modo que o software interno de reconhecimento de caracteres conhecido como seu cérebro não terá problemas para interpretá-lo:

Spambots têm melhor software de reconhecimento de caracteres a partir do Google.

E 'bobo que as empresas gigantes como Google ainda está usando captcha qualquer maneira. A verdade é que existem alternativas viáveis ​​captcha já bloqueando spambots sem irritar a urina para fora dos seres humanos. Eu tenho implementado com sucesso um para mim.


  • jQuery: The escrever menos, fazer mais, Biblioteca JavaScript
  • A melhor forma - um plugin jQuery | JasonLau.biz

A melhor forma

Eu ainda sou relativamente novo para JavaScript, mas como eu o entendo esta jQuery robôs plugins Fools 'convertendo completamente diferentes elementos da página dos campos do formulário após o carregamento da página. Além disso, não há tag no código de HTML em qualquer ponto, o botão Enviar é mascarado como um botão normal, e como um bônus o plugin vem com praticamente tudo o necessário para validar o formulário (verifique se os campos obrigatórios estão preenchidos em que os campos de endereços de email parecem endereços de e-mail, etc.).

Demorou um pouco "de tentativa e erro, especialmente desde que eu era virgem Javascript/jQuery para o projeto, mas eu consegui remover todas captcha a partir do site do meu trabalho, e pelo que eu vi não recebemos nenhum spam. Eu trabalho para uma empresa que tem feito pesquisas DoD SBIR e trabalho, por isso estamos, na verdade, um alvo de alto perfil para spam e phishing scams, tanto em casa e no exterior.

Eu incluí o link acima para ajudá-lo a obter a biblioteca jQuery, que é necessário para muitos de ponta plugins JavaScript, e um link para o site do criador "uma melhor forma", o que inclui a biblioteca de uma melhor documentação e completa. Eu vou te mostrar um exemplo de como eu implementei o script no formulário de contato em meu trabalho website.


Como usar uma forma melhor

ABF (porque eu vou ficar realmente cansado de escrever "uma melhor forma" uma e outra vez) tem três diferentes métodos de implementação. Você pode criar um formulário HTML inteira, sans tag em sua página e dar instruções sobre como ABF transformá-lo em uma forma de trabalho; você pode definir para carregar um arquivo HTML externo "ajax" em um predeterminado ; ou você pode chamar um arquivo "json" externo, que, como eu entendo que é basicamente um equivalente HTML que precisa ser analisado no código HTML padrão. Ou talvez você precisa do "ajax" HTML para ser analisado em "json" antes que o JavaScript pode trabalhar nele. Eu não sei, eu ainda estou aprendendo. De qualquer forma, eu escolhi o segundo método, o que parecia uma boa mistura de segurança e simplicidade.

Eu comecei com um formulário existente, com um script PHP para processar os dados do formulário, coloque em um arquivo de texto delimitado a ser importado mais tarde, em Excel, e-mail é a forma de lançamento e as partes apropriadas dentro da empresa. O PHP e HTML forma permanecem praticamente inalteradas; para que ABF é conectável.

Então, antes que eu precisava para carregar o meu arquivo javascript e chamá-los no cabeçalho da página HTML que exibe o formulário:

Após as configurações do módulo. Eu usei uma mudança mínima em caso de inadimplência. Há muito mais você pode fazer para personalizar a forma como a forma se comporta, mas esta é uma boa visão geral dos princípios.

"JQuery (document) .ready" é a forma básica de dizer jQuery "executar este quando a página é carregada até o ponto onde ele pode ser trabalhado." Isso garante que o script está sendo executado o mais rápido possível, mas não é um momento antes.

Linha 3 define uma variável à forma, ao mesmo tempo, dizendo-lhe para usar o com id "formulário de contato" como um recipiente para o formulário HTML.

Linhas 4-7 são as configurações. 4 diz o script onde o formulário é HTML. "Alert_type: 'html'", diz que se você pressionar o botão de envio e validação de formulário revela erros, o texto apropriado será impresso de acordo com o código HTML, em oposição a um pop-up JavaScript. Porque a sério, que quer um pop-up? Line 6 substitui a opção padrão para permitir que os campos do formulário, uma a uma, como o campo anterior é preenchido. Eu queria que as pessoas sejam capazes de saltar em torno de uma vez que nem todos os campos do formulário seria necessário. E a linha 7 inclui toda a informação de que, normalmente, seria ligada ao botão de envio. Porque não há nenhuma forma de tag, apresentar um regular botão não vai funcionar. Vou mostrar-lhe mais tarde como o formulário é enviado.

Note-se que "contact.php" é, na realidade, o nome da página. Eu tenho o código PHP que detecta se o formulário foi preenchido; Se o script PHP é executado e retorna processamento espero que a boa notícia de que a informação foi apresentada com sucesso para o usuário final. A razão para isso é simples: eu achava que era coisa quente quando eu descobri como usar a mesma página, e para apresentar o formulário e uma mensagem de sucesso. Agora eu sei que isso faz com que seja difícil de controlar o número de pessoas que realmente preencher o formulário para a conversão e que esse objectivo, mas este é um projeto para outro dia. Em qualquer caso, se a forma não foi preenchido, o código PHP imprime a parte mais importante: o .

A descrição acima é na verdade tudo o que você vê quando você visualizar o código fonte da página. Se você selecionar a forma e ver a seleção de fonte você verá o formulário HTML. Parece um formulário HTML padrão, sans tag é claro, e os campos do formulário são dadas propriedades especiais, atribuindo-lhes classes CSS. Aqui, por exemplo, o campo de e-mail:

A classe criativo chamado "texto" é o que realmente puxa a partir do arquivo CSS externo e faz com que o campo parece tudo muito. Mas estamos preocupados com as outras duas classes, que não são utilizados por razões estéticas em tudo. "Abrequired" ABF disse que o campo é, duh, necessário. A tentativa de enviar o formulário com o campo vazio irá exibir o texto de erro abaixo. E "abemail" é uma maneira rápida de se certificar de que o campo de informação é formatada como um endereço de e-mail, pois ele contém "@" e mais tarde "." Note também que o script é configurado por padrão para eliminar a maioria dos peixes sequências de caracteres (phishy?), E você pode adicionar mais opções para bloquear qualquer outra coisa que você deseja bloquear, como os palavrões. Se há pessoas xingando através dos módulos que você pode ter outros problemas, mas ele está lá, se necessário.

Para um último olhar para o botão de envio:

Note-se que o seu "tipo" é um botão padrão em vez de apresentar um item. Faz sentido. Uma forma atual elemento não faz nada, porque adivinhem? Não há nenhuma forma! Em seguida, o script ABF usa a classe "absubmit" para interpretar este botão um clique de forma semelhante, com o comportamento definido nos atributos acima para enviar os dados do formulário de que necessita para ir.


Porque é hora, é hora no tempo com o seu tempo e sua notícia é CAPTCHA'd ...

Não se cercar de captcha. Eu vi todos os desenvolvedores de JavaScript bons, e se você pode mover canto captcha de sua vida, então você também, eu vou virar a cabeça a cada dia tão satisfeitos.

e Presto!

Bem, mais ou menos. Eu quebrei algumas coisas e teve que ser vesgo documentação por um longo tempo antes de você chegar a este trabalho com sucesso. No entanto, eu tenho um pouco de experiência "de web design e conseguiu remover completamente captcha por um site de pequenas empresas, e até agora nenhuma de spam automatizado conseguiu passar.

Então, se eu posso fazer isso, então por que, por exemplo, o site TurboTax espera por você para passar horas e horas preenchendo impostos, detalhe após detalhe, e, de repente, no final, você joga um captcha para você, apenas no caso de você é um computador com nada melhor para fazer? Por CAPTCHAs ainda o padrão? Esperamos que no futuro estes métodos alternativos será mais sofisticado e mais totalmente suportado, e podemos olhar para trás um captcha como um sonho ruim. Deus sabe o que eles estão começando a parecer com algo que você veria em seus pesadelos.

Note-se, no final, que eu não sou afiliado de qualquer forma com o criador da ABF, por isso eu não posso fazer qualquer uma dessas coisas como garantia juridicamente vinculativo a sua utilidade para uma finalidade específica, expressa ou implícita, e tenho certeza que ele faz ou ele terá que verificar seu site para a sua renúncia.

No entanto, espero que seja útil, e, na ausência deste, espero que tenha gostado do anti-captcha discurso retórico, porque quem não gosta de um bom discurso anti-captcha muito? Sinta-se livre para deixar um comentário, mas primeiro você precisa para resolver o seguinte teste para verificar se você é humano.

Mostre sua humanidade!

estatísticas
vista questionário

(0)
(0)
Próximo artigo Causas osteomielite

Comentários - 0

Sem comentários

Adicionar um comentário

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Caracteres restantes: 3000
captcha