Saltar al contenido

Enmascaramiento de la entrada de contraseña desde la consola: Java

Solución:

¿Un ejemplo completo ?. Ejecute este código: (NB: este ejemplo se ejecuta mejor en la consola y no desde dentro de un IDE, ya que el método System.console () podría devolver un valor nulo en ese caso).

import java.io.Console;
public class Main {

    public void passwordExample() {        
        Console console = System.console();
        if (console == null) {
            System.out.println("Couldn't get Console instance");
            System.exit(0);
        }

        console.printf("Testing password%n");
        char[] passwordArray = console.readPassword("Enter your secret password: ");
        console.printf("Password entered was: %s%n", new String(passwordArray));

    }

    public static void main(String[] args) {
        new Main().passwordExample();
    }
}

Usarías la clase Console

char[] password = console.readPassword("Enter password");  
Arrays.fill(password, ' ');

Al ejecutar readPassword, el eco se desactiva. Además, una vez validada la contraseña, es mejor sobrescribir los valores de la matriz.

Si ejecuta esto desde un ide, fallará, consulte esta explicación para obtener una respuesta completa: Explicado

Console console = System.console();
String username = console.readLine("Username: ");
char[] password = console.readPassword("Password: ");
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *