sha256加密 java
时间: 2023-08-28 09:06:37 浏览: 93
实现 SHA-256 加密可以使用 Java 的 MessageDigest 类。以下是一个示例代码:
```java
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class SHA256Example {
public static void main(String[] args) {
String passwordToHash = "password123";
String salt = "randomsalt";
String hashedPassword = getSHA256Hash(passwordToHash + salt);
System.out.println(hashedPassword);
}
private static String getSHA256Hash(String input) {
try {
MessageDigest messageDigest = MessageDigest.getInstance("SHA-256");
byte[] hash = messageDigest.digest(input.getBytes("UTF-8"));
StringBuilder hexString = new StringBuilder();
for (byte b : hash) {
String hex = Integer.toHexString(0xff & b);
if (hex.length() == 1) hexString.append('0');
hexString.append(hex);
}
return hexString.toString();
} catch (NoSuchAlgorithmException | UnsupportedEncodingException e) {
e.printStackTrace();
return null;
}
}
}
```
在上面的示例中,我们使用 `getSHA256Hash` 方法来获取输入字符串的 SHA-256 哈希值。要注意的是,在 `getSHA256Hash` 方法中,我们使用 UTF-8 编码将输入字符串转换为字节数组,并使用 `MessageDigest` 类的 `digest` 方法计算哈希值。最后,我们将哈希值转换为十六进制字符串并返回。
阅读全文