Encoding.UTF8.GetString parses bytes as UTF8 code points.
The SHA256 hash is an arbitrary 256-bit number and does not correspond to any Unicode text.
You probably want to show the binary value in hexadecimal by calling BitConverter.ToString() .
You can also call Convert.ToBase64String() .
SLaks source share