如何在Java中使用sha256对字符串进行哈希处理?
2022-08-31 05:26:13
如何在Java中对一些字符串进行哈希处理?sha256
如何在Java中对一些字符串进行哈希处理?sha256
SHA-256不是“编码” - 它是单向哈希。
你基本上将字符串转换为字节(例如使用),然后对字节进行哈希处理。请注意,哈希的结果也将是任意二进制数据,如果要在字符串中表示该数据,则应使用base64或十六进制...不要尝试使用构造函数。text.getBytes(StandardCharsets.UTF_8)
String(byte[], String)
例如:
MessageDigest digest = MessageDigest.getInstance("SHA-256");
byte[] hash = digest.digest(text.getBytes(StandardCharsets.UTF_8));
我认为最简单的解决方案是使用Apache通用编解码器:
String sha256hex = org.apache.commons.codec.digest.DigestUtils.sha256Hex(stringText);