java的sha256解密
时间: 2023-09-03 13:15:02 浏览: 243
SHA256 是一种哈希算法,它是不可逆的,无法被解密。SHA256 只能用于数据的完整性验证和比对,不能用于加密解密。如果您需要加密解密,请使用对称加密算法(如 AES)或非对称加密算法(如 RSA)。
但是,如果您需要验证一个 SHA256 值是否与给定数据的 SHA256 值匹配,可以使用以下 Java 代码:
```java
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class SHA256Util {
public static String getSHA256(String data) {
try {
MessageDigest md = MessageDigest.getInstance("SHA-256");
md.update(data.getBytes());
byte[] digest = md.digest();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < digest.length; i++) {
sb.append(String.format("%02x", digest[i]));
}
return sb.toString();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
return null;
}
}
}
```
使用示例:
```java
String data = "hello world";
String sha256 = SHA256Util.getSHA256(data);
System.out.println(sha256); //输出:2ef7bde608ce5404e97d5f042f95f89f1c232871df8b5fbd25e1bd2490bcf24d
```
阅读全文