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!

Gracias por visitar mi blog de informática, mi nombre es Tomás y soy formador y desarrollador web. Si quiere usted dejarme alguna sugerencia, ayuda o quiere un servicio de formación estoy escuchando ofertas en tomas.gonzalez@infogonzalez.com, en Facebook a https://www.facebook.com/Infogonzalez estoy deseando escucharle. Su duda o sugerencia NO molesta.

Deja un comentario

Información básica sobre protección de datos Ver más

  • Responsable: Tomas Gonzalez.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

Tomas Gonzalez
Este sitio web utiliza cookies, si necesitas más información puedes visitar nuestra política de privacidad    Ver
Privacidad
Creative Commons License
Except where otherwise noted, the content on this site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
A %d blogueros les gusta esto: