Translate

Generador de contraseñas seguras




En este tutorial enseño cómo hacer un programa que genere contraseñas preguntando al usuario cuántos carácteres en minúsculas, mayúsculas, y caracteres especiales quiere para crear una contraseña.

public static void main(String[] args) {



//Declaramos las variables que vamos a usar

        GeneradorContrasenyas generador = new GeneradorContrasenyas();
//número de caracteres

        String LetrasMay, LetrasMin, CaracteresEsp, numeros, resultado = "";

        int numeroCaracteres;
//Esta variable indica el número de carácteres que vamos a usar en cada variable

        LetrasMin = "abcdefghijhlmnñopqrtuwxyz";
//Declaramos el abecedario en minúscula

        LetrasMay = "ABCDEFGHIJQLMNÑOPQRTSUVWXYZ";
//Declaramos el abecedario en mayúscula

        CaracteresEsp = "+-*/=%&#!?^“‘~|<>()[]{}:;.,";
//Declaramos los carácteres especiales

        numeros = "1234567890";//Declaramos los números

        Scanner sca = new Scanner(System.in);
//Declaramos la variable Scanner para qye nos pida los números











        System.out.println("Cuantos carácteres minúsculas vas a usar?");

        numeroCaracteres = sca.nextInt();

        resultado=generador.aleatorio(resultado, LetrasMin, numeroCaracteres);

      

        System.out.println("Cuantos carácteres mayúsculas vas a usar?");

        numeroCaracteres = sca.nextInt();

        resultado=generador.aleatorio(resultado, LetrasMay, numeroCaracteres);

      

        System.out.println("Cuantos carácteres especiales vas a usar?");

        numeroCaracteres = sca.nextInt();

        resultado=generador.aleatorio(resultado, CaracteresEsp, numeroCaracteres);

        System.out.println("Cuantos  carácteres numéricos vas a usar?");

        numeroCaracteres = sca.nextInt();

        resultado=generador.aleatorio(resultado, numeros, numeroCaracteres);

        System.out.println(""+resultado);

      

        String arrayPalabras[]=resultado.split("");

        Collections.shuffle(Arrays.asList(arrayPalabras));

        resultado="";

        for(int i=0;arrayPalabras.length>i;i++){

            resultado=resultado+arrayPalabras[i];

        }

            System.out.println(""+resultado);

      

      



    }

//Este es el método generados de númeris aleatorios



    public String aleatorio(String resultado, String palabras, int numero) {

        String[] arrayPalabra = palabras.split("");

        int numeroAleatorio = 0;

        for (int i = 0; i < numero; i++) {

            numeroAleatorio = (int) (Math.random() * (arrayPalabra.length - 1) + 0);



            resultado = resultado + arrayPalabra[numeroAleatorio];

        }

        return resultado;

    }



A aquí os dejo el vídeo explicando el anterior código:


Eso ha sido todo por el tutorial de hoy espero que hayáis aprendido algo y hasta la próxima!

No hay comentarios:

Publicar un comentario

Buscar en este blog

Popular Posts

Follow by Email