Java设置密码输入密码scanner类
时间: 2023-07-08 07:43:41 浏览: 176
在Java中使用Scanner类输入密码时,由于输入内容是明文显示的,我们需要对其进行加密处理。以下是使用Scanner类输入密码并加密的示例代码:
```java
import java.util.Scanner;
public class PasswordInput {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter your password: ");
String password = scanner.nextLine();
// Encrypt the password
String encryptedPassword = encrypt(password);
System.out.println("Password entered: " + encryptedPassword);
}
private static String encrypt(String password) {
// Encrypt the password using your preferred encryption method
// For example, you can use MD5 or SHA-256 encryption
// Here is an example using MD5 encryption
try {
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] messageDigest = md.digest(password.getBytes());
BigInteger no = new BigInteger(1, messageDigest);
String hashText = no.toString(16);
while (hashText.length() < 32) {
hashText = "0" + hashText;
}
return hashText;
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException(e);
}
}
}
```
在控制台中运行该程序,将会提示用户输入密码,并且输入的密码将以加密形式显示在控制台中。需要注意的是,这里使用的是MD5加密,实际使用时需要根据实际需求选择合适的加密方式。
阅读全文