Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Proyecto] Validación de contraseña

import java.util.regex.Pattern;
import java.util.regex.Matcher;


public class ValidacionDeClave {

    public static boolean validarClave(String clave) {
       //LONGITUD MINIMA DE 8 CARACTERES
       if (clave.length() < 8) {
           return false;
       }

       //DEBE CONTENER AL MENOS UNA LETRA MAYUSCULA
        Pattern patMayus = Pattern.compile("[A-Z]");
        Matcher matMayus = patMayus.matcher(clave);
        if (!matMayus.find()) {
            return false;
        }

        //DEBE CONTENER AL MENOS UNA LETRA MINUSCULA
        Pattern patMinus = Pattern.compile("[a-z]");
        Matcher matMinus = patMinus.matcher(clave);
        if (!matMinus.find()) {
            return false;
        }

        //DEBE TENER AL MENOS UN DIGITO
        Pattern patDigito = Pattern.compile("[0-9]");
        Matcher matDigito = patDigito.matcher(clave);
        if (!matDigito.find()) {
            return false;
        }

        //DEBE CONTENER AL MENOS UN CARACTER ESPECIAL
        Pattern patEspecial = Pattern.compile("[!@#$%^&*()<>:?,;']");
        Matcher matEspecial = patEspecial.matcher(clave);

        if (!matEspecial.find()) {
            return false;
        }

        //NO CONTENER ESPACIOS EN BLANCOS
        if (clave.contains(" ")) {
            return false;
        }

        //SI PASA TODAS LA VALIDACIONES
        return true;
    }



    public static void main(String[] args) {

        String claveEjemplo = "Passw0rd!";

        if (validarClave(claveEjemplo)) {
            System.out.println("La clave es valida.");
        }
        else {
            System.out.println("La clave NO cumple con los requisitos.");

            System.out.println("Requisitos:");
            System.out.println("- Minimo 8 caracteres.");
            System.out.println("- Al Menos una Mayuscula y una Minuscula");
            System.out.println("- Al Menos un Digito.");
            System.out.println("- Al Menos un Caracter Especial.");
            System.out.println("- Sin Espacios en Blancos.");
        }

    }
}
1 respuesta

Hola Mar, espero que estés bien

Gracias por compartir tu código. Parece que has implementado una función para validar contraseñas de acuerdo con ciertos criterios de seguridad. Sin embargo, la actividad que estás mencionando parece estar enfocada en verificar si una contraseña ingresada coincide con una contraseña predefinida, como "123456".

Para adaptar tu código a esta actividad específica, puedes simplificarlo de la siguiente manera:

import java.util.Scanner;

public class ValidacionDeClave {

    public static void main(String[] args) {
        // Contraseña predefinida
        String contrasenaCorrecta = "123456";
        
        // Crear un objeto Scanner para leer la entrada del usuario
        Scanner scanner = new Scanner(System.in);
        
        // Pedir al usuario que ingrese la contraseña
        System.out.print("Ingrese la contraseña: ");
        String contrasenaIngresada = scanner.nextLine();
        
        // Verificar si la contraseña ingresada es correcta
        if (contrasenaIngresada.equals(contrasenaCorrecta)) {
            System.out.println("¡Acceso permitido!");
        } else {
            System.out.println("¡Acceso denegado!");
        }
        
        // Cerrar el scanner
        scanner.close();
    }
}

Este código solicita al usuario que ingrese una contraseña y luego compara la entrada con una contraseña predefinida. Si coinciden, muestra "¡Acceso permitido!", de lo contrario, muestra "¡Acceso denegado!".

Espero que esto te ayude a completar la actividad. ¡Bons estudios!