En los sistemas actuales, incluso no solos los web, es muy usual, que las calves de los usuarios para acceder contengan valores que sean difícil de poder ser descubiertas por personas y algoritmos que se encargan de descifrar la contraseña.

En el ejemplo que a continuación les brindamos, es un sencillo algoritmo en lenguaje javascript, utilizando las funciones nativas del propio lenguaje, podremos validar que una contraseña ingresada cumpla con los requerimientos de una contraseña fuerte.

Primeramente los criterios que tomaremos para validar que la contraseña sea fuerte son los siguientes:

  • Tiene ocho caracteres como mínimo.
  • Letras mayúsculas.
  • Letras minúsculas.
  • Números.
  • Símbolos del teclado (todos los caracteres del teclado que no se definen como letras o números) y espacios.

Para el proceso de validación se utiliza el código ASCII, comparimos en el siguiente enlace la tabla de ASCII de la wikipedia: códigos ASCII.

para conocer el código ASCII de un carácter de una cadena en javascript utilizamos la función: charCodeAt

A continuación la función en javascript:

                function validar_clave(contrasenna)
		{
			if(contrasenna.length >= 8)
			{		
				var mayuscula = false;
				var minuscula = false;
				var numero = false;
				var caracter_raro = false;
				
				for(var i = 0;i<contrasenna.length;i++)
				{
					if(contrasenna.charCodeAt(i) >= 65 && contrasenna.charCodeAt(i) <= 90)
					{
						mayuscula = true;
					}
					else if(contrasenna.charCodeAt(i) >= 97 && contrasenna.charCodeAt(i) <= 122)
					{
						minuscula = true;
					}
					else if(contrasenna.charCodeAt(i) >= 48 && contrasenna.charCodeAt(i) <= 57)
					{
						numero = true;
					}
					else
					{
						caracter_raro = true;
					}
				}
				if(mayuscula == true && minuscula == true && caracter_raro == true && numero == true)
				{
					return true;
				}
			}
			return false;
		}

Puedes descarga el ejemplo en el siguiente enlace: descargar ejemplo de validar contraseña fuerte.

Compartir en: