java密码的加密明码转成暗码
时间: 2023-06-13 20:08:02 浏览: 250
在Java中,可以使用以下方法将密码明文加密为密文:
1. 使用MessageDigest类的静态方法getInstance("SHA-256")获取SHA-256加密算法实例,SHA-256是一种安全的哈希算法,其生成的摘要长度为256位。
2. 将密码转换为字节数组。
3. 使用update方法将密码字节数组传递给MessageDigest实例。
4. 使用digest方法生成摘要,即密文。
下面是Java代码示例:
```java
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Scanner;
public class PasswordEncryption {
public static void main(String[] args) throws NoSuchAlgorithmException {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入密码:");
String password = scanner.nextLine();
MessageDigest md = MessageDigest.getInstance("SHA-256"); // 获取SHA-256实例
md.update(password.getBytes()); // 将密码转换为字节数组并传入实例
byte[] digest = md.digest(); // 生成摘要,即密文
// 将密文转换为十六进制字符串
StringBuilder sb = new StringBuilder();
for (byte b : digest) {
String hex = Integer.toHexString(0xff & b);
if (hex.length() == 1) {
sb.append('0');
}
sb.append(hex);
}
System.out.println("加密后的密码: " + sb.toString());
}
}
```
运行程序后,输入密码即可将其加密为密文。
阅读全文