public static string GetSHA256hash(string input, string _input_charset) { byte[] clearBytes = Encoding.UTF8.GetBytes(input); SHA256 sha256 = new SHA256Managed(); sha256.ComputeHash(clearBytes); byte[] hashedBytes = sha256.Hash; sha256.Clear(); string output = BitConverter.ToString(hashedBytes).Replace("-", "").ToLower(); return output; }
先用SHA256Managed計算HASH,然后用BitConverter.ToString轉為16進制字符串。這個字符串REPLACE掉“-”后長度為64.
要不要REPLACE,和TOLOWER,看簽名要求。