java sha256加解密
时间: 2023-09-28 12:07:52 浏览: 87
Java中可以使用MessageDigest类实现SHA256加密,示例代码如下:
加密:
```java
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Arrays;
public class SHA256Util {
public static String sha256(String str) throws NoSuchAlgorithmException {
MessageDigest md = MessageDigest.getInstance("SHA-256");
byte[] hash = md.digest(str.getBytes());
StringBuilder sb = new StringBuilder();
for (int i = 0; i < hash.length; i++) {
sb.append(Integer.toString((hash[i] & 0xff) + 0x100, 16).substring(1));
}
return sb.toString();
}
public static void main(String[] args) {
try {
String input = "hello world";
String hash = sha256(input);
System.out.println("Input: " + input);
System.out.println("SHA-256 Hash: " + hash);
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
}
}
```
解密:
SHA256是一种单向加密算法,不支持解密。如果要进行验证,需要将输入的明文再次进行SHA256加密,然后与存储的加密结果比较是否一致。如果一致,则说明验证通过。
阅读全文