...
Code Block | ||
---|---|---|
| ||
class Password { public static void main (String args[]) throws IOException { Console c = System.console(); if (c == null) { System.err.println("No console."); System.exit(1); } String username = c.readLine("Enter your user name: "); String password = c.readLine("Enter your password: "); boolean isValidUser = verify(username, password); // Clear the password password = null; System.gc(); if (!isValidUser) { throw new SecurityException("Invalid Credentials"); } // User is authorized, continue... } // Dummy verify method, always returns true private static final boolean verify(String username, String password) { return true; } } |
...
Code Block | ||
---|---|---|
| ||
class Password { public static void main (String args[]) throws IOException { Console c = System.console(); if (c == null) { System.err.println("No console."); System.exit(1); } String username = c.readLine("Enter your user name: "); char[] password = c.readPassword("Enter your password: "); boolean isValidUser = verify(username, password); // Clear the password Arrays.fill(password,' '); password = null; System.gc(); if (!isValidUser) { throw new SecurityException("Invalid Credentials"); } // User is authorized, continue... } // Dummy verify method, always returns true private static final boolean verify(String username, char[] password) { return true; } } |
...