From 7f9430e0e6cf055dbf848ed3da76b355169d7e12 Mon Sep 17 00:00:00 2001 From: hashlag Date: Tue, 6 Jan 2026 04:30:07 +0300 Subject: [PATCH] Update HmacTests: add Sha1HmacTest --- ChaosTests/Mac/HmacTests.cpp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/ChaosTests/Mac/HmacTests.cpp b/ChaosTests/Mac/HmacTests.cpp index 57c7239..c26317b 100644 --- a/ChaosTests/Mac/HmacTests.cpp +++ b/ChaosTests/Mac/HmacTests.cpp @@ -1,10 +1,12 @@ #include #include "Hash/Md5.hpp" +#include "Hash/Sha1.hpp" #include "Mac/Hmac.hpp" using namespace Chaos::Mac::Hmac; using namespace Chaos::Hash::Md5; +using namespace Chaos::Hash::Sha1; TEST(HmacTests, RfcTest) { @@ -51,6 +53,28 @@ TEST(HmacTests, RfcTest) } } +TEST(HmacTests, Sha1HmacTest) +{ + struct Helper + { + std::string operator()(const char * key, const char * data) const + { + Hmac hmac(key, key + strlen(key)); + hmac.Update(data, data + strlen(data)); + return hmac.Finish().ToHexString(); + } + }; + + Helper hmacSha1; + + { + const char * key = "Two Generals'"; + const char * data = "Attack at dawn."; + + ASSERT_EQ("20ccda1c4de0e206f3a47056f2abd40f731ff3db", hmacSha1(key, data)); + } +} + TEST(HmacTests, LongKeyTest) { struct Helper