1.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2+++ b/rust/lib/crypto/hmac_tests.txt Tue Oct 17 20:36:37 2023 -0400
1.3@@ -0,0 +1,97 @@
1.4+# HMAC tests from NIST test data
1.5+
1.6+HMAC = SHA1
1.7+Input = "Sample message for keylen=blocklen"
1.8+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F
1.9+Output = 5FD596EE78D5553C8FF4E72D266DFD192366DA29
1.10+
1.11+HMAC = SHA1
1.12+Input = "Sample message for keylen<blocklen"
1.13+Key = 000102030405060708090A0B0C0D0E0F10111213
1.14+Output = 4C99FF0CB1B31BD33F8431DBAF4D17FCD356A807
1.15+
1.16+HMAC = SHA1
1.17+Input = "Sample message for keylen=blocklen"
1.18+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F60616263
1.19+Output = 2D51B2F7750E410584662E38F133435F4C4FD42A
1.20+
1.21+HMAC = SHA224
1.22+Input = "Sample message for keylen=blocklen"
1.23+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F
1.24+Output = C7405E3AE058E8CD30B08B4140248581ED174CB34E1224BCC1EFC81B
1.25+
1.26+HMAC = SHA224
1.27+Input = "Sample message for keylen<blocklen"
1.28+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B
1.29+Output = E3D249A8CFB67EF8B7A169E9A0A599714A2CECBA65999A51BEB8FBBE
1.30+
1.31+HMAC = SHA224
1.32+Input = "Sample message for keylen=blocklen"
1.33+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F60616263
1.34+Output = 91C52509E5AF8531601AE6230099D90BEF88AAEFB961F4080ABC014D
1.35+
1.36+HMAC = SHA256
1.37+Input = "Sample message for keylen=blocklen"
1.38+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F
1.39+Output = 8BB9A1DB9806F20DF7F77B82138C7914D174D59E13DC4D0169C9057B133E1D62
1.40+
1.41+HMAC = SHA256
1.42+Input = "Sample message for keylen<blocklen"
1.43+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F
1.44+Output = A28CF43130EE696A98F14A37678B56BCFCBDD9E5CF69717FECF5480F0EBDF790
1.45+
1.46+HMAC = SHA256
1.47+Input = "Sample message for keylen=blocklen"
1.48+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F60616263
1.49+Output = BDCCB6C72DDEADB500AE768386CB38CC41C63DBB0878DDB9C7A38A431B78378D
1.50+
1.51+HMAC = SHA384
1.52+Input = "Sample message for keylen=blocklen"
1.53+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F
1.54+Output = 63C5DAA5E651847CA897C95814AB830BEDEDC7D25E83EEF9195CD45857A37F448947858F5AF50CC2B1B730DDF29671A9
1.55+
1.56+HMAC = SHA384
1.57+Input = "Sample message for keylen<blocklen"
1.58+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F
1.59+Output = 6EB242BDBB582CA17BEBFA481B1E23211464D2B7F8C20B9FF2201637B93646AF5AE9AC316E98DB45D9CAE773675EEED0
1.60+
1.61+HMAC = SHA384
1.62+Input = "Sample message for keylen=blocklen"
1.63+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
1.64+Output = 5B664436DF69B0CA22551231A3F0A3D5B4F97991713CFA84BFF4D0792EFF96C27DCCBBB6F79B65D548B40E8564CEF594
1.65+
1.66+HMAC = SHA512
1.67+Input = "Sample message for keylen=blocklen"
1.68+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F
1.69+Output = FC25E240658CA785B7A811A8D3F7B4CA48CFA26A8A366BF2CD1F836B05FCB024BD36853081811D6CEA4216EBAD79DA1CFCB95EA4586B8A0CE356596A55FB1347
1.70+
1.71+HMAC = SHA512
1.72+Input = "Sample message for keylen<blocklen"
1.73+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F
1.74+Output = FD44C18BDA0BB0A6CE0E82B031BF2818F6539BD56EC00BDC10A8A2D730B3634DE2545D639B0F2CF710D0692C72A1896F1F211C2B922D1A96C392E07E7EA9FEDC
1.75+
1.76+HMAC = SHA512
1.77+Input = "Sample message for keylen=blocklen"
1.78+Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
1.79+Output = D93EC8D2DE1AD2A9957CB9B83F14E76AD6B5E0CCE285079A127D3B14BCCB7AA7286D4AC0D4CE64215F2BC9E6870B33D97438BE4AAA20CDA5C5A912B48B8E27F3
1.80+
1.81+# Additional HMAC tests from OpenSSL.
1.82+HMAC = SHA1
1.83+Input = "My test data"
1.84+Key = ""
1.85+Output = 61afdecb95429ef494d61fdee15990cabf0826fc
1.86+
1.87+HMAC = SHA256
1.88+Input = "My test data"
1.89+Key = ""
1.90+Output = 2274b195d90ce8e03406f4b526a47e0787a88a65479938f1a5baa3ce0f079776
1.91+
1.92+HMAC = SHA256
1.93+Input = "My test data"
1.94+Key = "123456"
1.95+Output = bab53058ae861a7f191abe2d0145cbb123776a6369ee3f9d79ce455667e411dd
1.96+
1.97+HMAC = SHA1
1.98+Input = "My test data"
1.99+Key = "12345"
1.100+Output = 7dbe8c764c068e3bcd6e6b0fbcd5e6fc197b15bb