você está aqui: Home  → Arquivo de Mensagens Programação Shell Linux: Inscrições Abertas

Teste de Segurança da senha em JavaScript

Colaboração: André Lourenço Pedroso

Data de Publicação: 13 de Dezembro de 2006

Alguns de vocês devem ter visto no Hotmail(tm), por exemplo, um recuro onde é feito um teste da senha, mostrando o seu nivél de segurança.

Para aqueles que acharam esse recurso interessante, mostro nesse pequeno artigo um exemplo em JavaScript.

Os testes seguem a seguinte lógica:

  • Baixa segurança - Senha que contem um tipo de caracter.
  • Média segurança - Senha que tenha mais de quatro digitos e contenha no mínimo dois tipos de caracteres.
  • Alta segurança - Senha que tenha mais de sete digitos e contenha no mínimo três tipos de caracteres diferentes.
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>';
				}
			}
		}
	}
}


Veja a relação completa dos artigos de André Lourenço Pedroso