private static void TestHMACAPI() { const string originalMessage = "Original message to hash"; const string originalMessage2 = "Or1ginal message to hash"; Console.WriteLine($"Original Message 1: {originalMessage}"); Console.WriteLine($"Original Message 2: {originalMessage2}"); Console.WriteLine(); var key = HMac.GenerateKey(); var hmacMd5Message = HMac.ComputeHMACMD5(Encoding.UTF8.GetBytes(originalMessage), key); var hmacMd5Message2 = HMac.ComputeHMACMD5(Encoding.UTF8.GetBytes(originalMessage2), key); var hmacSha1Message = HMac.ComputeHMACSha1(Encoding.UTF8.GetBytes(originalMessage), key); var hmacSha1Message2 = HMac.ComputeHMACSha1(Encoding.UTF8.GetBytes(originalMessage2), key); var hmacSha256Message = HMac.ComputeHMACSha256(Encoding.UTF8.GetBytes(originalMessage), key); var hmacSha256Message2 = HMac.ComputeHMACSha256(Encoding.UTF8.GetBytes(originalMessage2), key); var hmacSha512Message = HMac.ComputeHMACSha512(Encoding.UTF8.GetBytes(originalMessage), key); var hmacSha512Message2 = HMac.ComputeHMACSha512(Encoding.UTF8.GetBytes(originalMessage2), key); Console.WriteLine(); Console.WriteLine($"MD5 HMAC Message 1: {Convert.ToBase64String(hmacMd5Message)}"); Console.WriteLine($"MD5 HMAC Message 2: {Convert.ToBase64String(hmacMd5Message2)}"); Console.WriteLine(); Console.WriteLine(); Console.WriteLine($"SHA1 HMAC Message 1: {Convert.ToBase64String(hmacSha1Message)}"); Console.WriteLine($"SHA1 HMAC Message 2: {Convert.ToBase64String(hmacSha1Message2)}"); Console.WriteLine(); Console.WriteLine(); Console.WriteLine($"SHA256 HMAC Message 1: {Convert.ToBase64String(hmacSha256Message)}"); Console.WriteLine($"SHA256 HMAC Message 2: {Convert.ToBase64String(hmacSha256Message2)}"); Console.WriteLine(); Console.WriteLine(); Console.WriteLine($"SHA512 HMAC Message 1: {Convert.ToBase64String(hmacSha512Message)}"); Console.WriteLine($"SHA512 HMAC Message 2: {Convert.ToBase64String(hmacSha512Message2)}"); Console.WriteLine(); }