コード例 #1
0
        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();
        }