How to hash some String with SHA-256 in Java?
cryptographic-hash-function, cryptography, java, sha256
Solution
SHA-256 isn't an "encoding" - it's a one-way hash.
You'd basically convert the string into bytes (e.g. using `text.getBytes(StandardCharsets.UTF_8)`) and then hash the bytes. Note that the result of the hash would also be arbitrary binary data, and if you want to represent that in a string, you should use base64 or hex... don't try to use the `String(byte[], String)` constructor.
e.g.
MessageDigest digest = MessageDigest.getInstance("SHA-256");
byte[] hash = digest.digest(text.getBytes(StandardCharsets.UTF_8));
Problem
How can I hash some `String` with `SHA-256` in Java?