java sha256加密解密
时间: 2023-08-01 09:06:45 浏览: 93
Java中可以使用Java自带的MessageDigest类来进行SHA-256加密。
加密示例代码:
```java
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class SHA256Util {
public static String encrypt(String str) {
try {
MessageDigest md = MessageDigest.getInstance("SHA-256");
byte[] bytes = md.digest(str.getBytes());
StringBuilder sb = new StringBuilder();
for (byte b : bytes) {
String hex = Integer.toHexString(0xff & b);
if (hex.length() == 1) sb.append('0');
sb.append(hex);
}
return sb.toString();
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException(e);
}
}
public static void main(String[] args) {
String str = "Hello, world!";
String encryptedStr = encrypt(str);
System.out.println("Original String: " + str);
System.out.println("Encrypted String: " + encryptedStr);
}
}
```
解密SHA-256不可逆加密是不可能的,因为它是单向的。但是,我们可以将另一个字符串进行SHA-256加密,并将结果与加密后的字符串进行比较,以验证它们是否相等。
阅读全文