Senhas seguras: algumas técnicas e script para teste

Script para testar a segurança da senha digitada pelo usuário, semelhante ao utilizado no cadastro do Hotmail(tm).

[ Hits: 26.665 ]

Por: André Lourenço Pedroso em 01/02/2007 | Blog: http://apedroso.blogspot.com


O script em JavaScript



Agora vamos ao que interessa, o script.

Crie um arquivo 'testasenha.js' e salve o código abaixo. Ele validará algumas dicas para criação de boas senhas, passadas anteriormente.

function TestaSenha(valor) {
   var d = document.getElementById('seguranca');
   ERaz = /[a-z]/;
   ERAZ = /[A-Z]/;
   ER09 = /[0-9]/;
   ERxx = /[@!#$%&*+=?|-]/;

   if(valor.length == ''){
      d.innerHTML = '<h4>Seguranca da senha: !</h4>';
   } else {
      if(valor.length < 5){
         d.innerHTML = '<h4>Seguranca da senha: <font color=\'red\'> BAIXA</font></h4>';
      } else {
         if(valor.length > 7 && valor.search(ERaz) != -1 && valor.search(ERAZ) != -1 && valor.search(ER09) != -1 || valor.length > 7 && valor.search(ERaz) != -1 && valor.search(ERAZ) != -1 && valor.search(ERxx) || valor.length > 7 && valor.search(ERaz) != -1 && valor.search(ERxx) != -1 && valor.search(ER09) || valor.length > 7  && valor.search(ERxx) != -1 && valor.search(ERAZ) != -1 && valor.search(ER09)){
            d.innerHTML = '<h4>Seguranca da senha: <font color=\'green\'> ALTA</font></h4>';
         } else {
            if(valor.search(ERaz) != -1 && valor.search(ERAZ) != -1 || valor.search(ERaz) != -1 && valor.search(ER09) != -1 || valor.search(ERaz) != -1 && valor.search(ERxx) != -1 ||valor.search(ERAZ) != -1 && valor.search(ER09) != -1 ||valor.search(ERAZ) != -1 && valor.search(ERxx) != -1 ||valor.search(ER09) != -1 && valor.search(ERxx) != -1){
               d.innerHTML = '<h4>Seguranca da senha: <font color=\'orange\'> MEDIA</font></h4>';
            } else {
               d.innerHTML = '<h4>Seguranca da senha: <font color=\'red\'> BAIXA</font></h4>';
            }
         }
      }
   }
}

Com isso já é possível fazer bastante coisa, mas para aqueles com mais dúvidas, na próxima página colocaremos esse script para rodar.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. O script em JavaScript
   3. Fazendo acontecer
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

IBM apresenta Maqetta, uma contribuição open source para HTML5

Codificação e decodificação entre ASCII, hexadecimal e unicode

Instalando Adobe Flash 10 em distros amd64 (Ubuntu, Mandriva, Fedora)

EditorConfig - Padronização de código para seus projetos

Camada de Transporte TCP/IP e Aplicação

  
Comentários
[1] Comentário enviado por lennon.jesus em 01/02/2007 - 16:52h

Gostei do script.

Há muito estava querendo implementar este tipo de solução mas estava com preguiça de escrever ou de procurar algo.

Parabéns e obrigado.

Abraços,
Lennon Jesus.

[2] Comentário enviado por CerberusBH em 02/02/2007 - 01:52h

Também gostei!
Mas no meu caso, só funcionou quando corrigi para ó código abaixo:

<div id='seguranca'>Seguranca da senha: !</div>

Valeu!
Até mais!

[3] Comentário enviado por dtux em 02/02/2007 - 07:52h

III qdo a senha vai ser alta, testei varias combinações mas numca deu alta!!! tem com verificar!!!flw

[4] Comentário enviado por fernandosilva em 02/02/2007 - 08:09h

Mas que maneiro....

Seu script é muito bom ele me ajudou muito.

Obrigado

[5] Comentário enviado por Druide em 04/02/2007 - 02:06h

Diego, nesse script, para a senha ficar alta precisará ter no mínimo 7 caracteres, números, e letras maíúsculas e minúsculas, ou então alguns caracteres especiais.

Legal esse script, pena que não dá para verificar por um dicionário para aprimorar ainda mais, mas mesmo assim já ajuda para não ter senhas tão simples como a maioria das pessoas costumam fazer.

[6] Comentário enviado por alff em 05/02/2007 - 13:03h

Bela contribuição André, o script que você disponibilizou será muito de bom proveito para mim (risos)... Procurei feito doido por algo parecido e não encontrei, e olhe sò estava bem aqui debaixo do meu nariz.

Parabéns!

[7] Comentário enviado por heckjp em 05/02/2007 - 13:25h

Otimo seu artigo..rapido..simples...pratico...Uma otima dica para quem quer fazer teste de segurança em senhas de usuario de seu site..parabens

[8] Comentário enviado por gusfreire em 05/02/2007 - 17:40h

O Script parece que é muito bom, mas comigo não funcionou não.

[9] Comentário enviado por gusfreire em 05/02/2007 - 17:59h

Foi mal cara me precipitei e não dei muita idéia pro comentário do CerberusBH depois que eu coloquei <div id='seguranca'>Seguranca da senha: !</div> funcionou perfeitamente.
Valeu

[10] Comentário enviado por abeljnr em 05/02/2007 - 19:12h

legal hein cara...

quando tiver um tempo, irei testar, mas tenho certeza q isso e mto pratico...

abracos...

[11] Comentário enviado por gusfreire em 06/02/2007 - 14:23h

apedroso eu testei no Internet Explorer 6, nem cheguei a testar no firefox

[12] Comentário enviado por paulo_justin em 07/02/2007 - 11:25h

Muito Pratico!!!

Valeu

[13] Comentário enviado por nanukano em 07/02/2007 - 18:54h

Testei do jeito que foi posto e funcionou bem. Vou precisar mudar algumas senhas. Valeu mesmo.

[14] Comentário enviado por alonzoalucard em 05/04/2007 - 09:01h

excelente !!!

[15] Comentário enviado por Teixeira em 15/04/2007 - 19:53h

Muito bom o artigo!
Uma técnica que tenho usado para "montar" uma senha é concatenar palavras de uso incomum e em seguida intercalar números aleatórios em posições imprevisíveis. A cada intervalo de tempo, mudo a senha de acordo com uma substring cujo tamanho eu mesmo determino.
Vai um exemplo abaixo:
MARACATU + ZOONOSE + COROLARIO + SIBILANTE
31/03/2007 + 14/03/1949 + 123456789
Então:
M3A1R0A3C2A0T0U7Z1O4O0N3O1S9E4C9O1R2O3L4A5R6I7O8S9I0B0I0 L0A0N0T0E00
A senha de janeiro, por exemplo, poderia ser M3A1R0A3
A de fevereiro poderia ser A1R0A3C2, ou qualquer outra, na sequência ou mesmo fora dela.
A string é claro, deve ficar de posse do proprietário em lugar seguro (preferencialmente fora do computador) e não se deve utilizr datas que correspondam a dados pessoais.
A data de nascimento do papagaio do vizinho é uma boa pedida.
O que pessoalmente acho importante é adotar uma senha alfanumérica de 6 a 8 dígitos.
Parece confuso? Mas a idéia é justamente essa!
[]'s Teixeira

[16] Comentário enviado por kenshisk em 01/06/2007 - 12:33h

Nossa tenho um jeito muitoooo mais facil(eu acho) bem se alguem ver essa senha(minha antiga) vai conseguir decorar? Tivstfo.ToftihurdfrStsujo1987
sabem o que está escrito ae? simplesmente Ricardo.RodriguesdeAraujo1987
pra quem sabe digitar é so passar a mão uma tecla pra direita, o normal é asdf eu simplesmente faço sdfg, se sua senha é "muitodificil" fica "muiyofigivil" entenderam?

[17] Comentário enviado por apedroso em 16/07/2007 - 13:37h

Olá pessoal.

Agora tenho um blog onde colocarei mais artigos, scripts e dicas:

http://apedroso.blogspot.com

Falow!!!

Andre Pedroso
http://apedroso.blogspot.com

[18] Comentário enviado por comfaa em 28/10/2008 - 11:59h

muito bom !!



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts