Solucionando Spam com Captcha Inverso
Definitivamente spams são um problema terrível nos dia atuais… não pode ser solucionado com leis absurdas e desenvolver um algoritmo para bloqueio é um trabalho monstruoso. Então logo pensamos em soluções de terceiros como o Akismet (muito usado em blogs e formulários de contato em sites) ou captcha que também não é fácil de implementar a menos que utilize soluções como o Recaptcha .
Ótimo, então temos duas soluções simples que praticamente não temos que fazer quase nada, mas qual o grande problema? Askimet é pago para soluções comerciais e o captcha é altamente criticado por suas dificuldades com acessibilidade (está certo que é possível implementar soluções do captcha com aúdio mas complica mais ainda a implementação).
Mas na minha opinião o captcha não é ruim apenas para acessibilidade, mas também para qualquer usuário. E horrível tentar ler o que está escrito nas imagens, enviar o formulário e ver que errou, depois errar de novo e até sair da cadastro.
Absolutamente desistido de qualquer umas dessas soluções, acabei encontrando uma forma muito simples de solucionar as centenas de spams que recebíamos. O captach inverso.
Que consiste na técnica simples de colocar um campo de formulário como hidden, e normalmente os bots de spam não diferenciam dos outros campos e acabam preenchendo-o e enviando o formulário. O que temos que fazer é apenas ignorar todos os comentários que possuam o campo hidden preenchido.
No caso do blog aqui do escritório usamos o Mephisto para sistema de blog( desenvolvido em Rails), e implementar isso em Rails seria muito fácil, mas como quase tudo em Rails, existe uma solução desenvolvida em forma de plugin para o Mephisto. Cortesia de Sven Fuchs.
Para utilizar é bem simples( veja o post sobre o plugin no blog do autor ):
1 2 3 |
script/plugin install
http://svn.artweb-design.de/stuff/mephisto/mephisto_inverse_captcha/
|
Lembrando que “script/plugin install repostiorio” deve ser executado tudo em uma linha apenas, no terminal.
Em seguida basta alterar o seu template(partial) de comentários (_comments.liquid) do seu mephisto para algo como abaixo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<p>
{{ form.name }}
<label for="author">
<small> Nome (obrigatório)</small>
</label>
</p>
<p>
{{ form.sneaky_email }}
<label for="{{form.sneaky_email_codename}}">
<small> E-Mail</small>
</label>
</p>
<p id="comment-email">
Se consegue ler este trecho, o seu browser não trabalha bem com CSS. <br />
<strong>Não preencha nada aqui!</strong><br />
{{ form.email }}
</p>
|
No template acima estamos adicionando o campo sneaky_email_codename que deverá se visível ao usuário normal e o campo email será escondido, o plugin irá verificar quais campos estão preenchidos e colocar os valores nos locais corretos.
Esta solução é focada em Mephisto/Rails mas pode ser implementada facilmente em qualquer linguagem.
Até o momento esta solução tem sido perfeita para nós e amigável para nossos usuários, esperamos que seja útil para você também.
Comentário
CATEGORIAS
HomeDesign
SEO
Empreendimento
Cifras
Ruby e Rails
Flex
Photoshop
Flash
XHTML/CSS
JavaScript
Variados
Database
Firefox
Projetos
3D
Projetos
TextMate
Smalltalk
Mac
Livros
ARQUIVO
07/2010 (2)06/2010 (4)
05/2010 (4)
04/2010 (4)
03/2010 (5)
02/2010 (7)
01/2009 (4)
12/2009 (7)
11/2009 (4)
10/2009 (10)
09/2009 (7)
08/2009 (6)
07/2009 (12)
06/2009 (5)
05/2009 (6)
04/2009 (9)
03/2009 (14)
02/2009 (18)
01/2009 (14)
12/2008 (20)
11/2008 (18)
10/2008 (9)
09/2008 (12)
08/2008 (6)
07/2008 (12)
06/2008 (10)
05/2008 (15)
04/2008 (19)




PomoDo e Pomodoro Technique
comentado por Luis
Flash SlideShow
comentado por Gilmar
50% do software é design
comentado por Daniel Lopes
Vetores Grátis - VectorLab Pack
comentado por louis vuitton
Texturas legais
comentado por thomas sabo kommt