using System.Security.Cryptography;
public static void Main()
Console.WriteLine(SHA256HexHashString("{\"CorporateID\":\"BCAAPI2016\",\"SourceAccountNumber\":\"0201245680\",\"TransactionID\":\"00000001\",\"TransactionDate\":\"2016-01-30\",\"ReferenceID\":\"12345/PO/2016\",\"CurrencyCode\":\"IDR\",\"Amount\":\"100000.00\",\"BeneficiaryAccountNumber\":\"0201245681\",\"Remark1\":\"Transfer Test\",\"Remark2\":\"Online Transfer\"}"));
private static string ToHex(byte[] bytes, bool upperCase)
StringBuilder result = new StringBuilder(bytes.Length * 2);
for (int i = 0; i < bytes.Length; i++)
result.Append(bytes[i].ToString(upperCase ? "X2" : "x2"));
return result.ToString();
private static string SHA256HexHashString(string StringIn)
using (var sha256 = anaged.Create())