Introduce a distinct class name for the MD5 Hasher

This commit is contained in:
hashlag
2025-08-09 16:58:02 +03:00
parent c4ddd78d59
commit f19ea0bc1c
2 changed files with 14 additions and 14 deletions

View File

@@ -150,7 +150,7 @@ private:
}
};
struct Hash
struct Md5Hash
{
std::string ToHexString() const
{
@@ -170,10 +170,10 @@ struct Hash
std::array<uint8_t, 16> RawDigest;
};
class Hasher
class Md5Hasher
{
public:
Hasher()
Md5Hasher()
: BlockSize_(0)
, Word_(0)
, WordBytesPacked_(0)
@@ -188,7 +188,7 @@ public:
MessageSizeBytes_ += UpdateImpl(begin, end);
}
Hash Finish()
Md5Hash Finish()
{
uint64_t messageSizeBytesMod64 = MessageSizeBytes_ % 64;
@@ -228,7 +228,7 @@ public:
UpdateImpl(encodedMessageSizeBits,
encodedMessageSizeBits + std::size(encodedMessageSizeBits));
Hash result;
Md5Hash result;
int_fast8_t i = 0;
for (int_fast8_t reg = 0; reg < 4; ++reg)

View File

@@ -2,7 +2,7 @@
#include "Md5.hpp"
using namespace Chaos;
using namespace Chaos::Md5;
TEST(Md5Tests, RFCTest)
{
@@ -10,7 +10,7 @@ TEST(Md5Tests, RFCTest)
{
std::string operator()(const char * in) const
{
Md5::Hasher hasher;
Md5Hasher hasher;
hasher.Update(in, in + strlen(in));
return hasher.Finish().ToHexString();
}
@@ -31,7 +31,7 @@ TEST(Md5Tests, PartialUpdateTest)
{
{
// "a"
Md5::Hasher hasher;
Md5Hasher hasher;
{
const char * in = "a";
@@ -48,7 +48,7 @@ TEST(Md5Tests, PartialUpdateTest)
{
// "abc"
Md5::Hasher hasher;
Md5Hasher hasher;
{
const char * in = "ab";
@@ -65,7 +65,7 @@ TEST(Md5Tests, PartialUpdateTest)
{
// "message digest"
Md5::Hasher hasher;
Md5Hasher hasher;
{
const char * in = "me";
@@ -92,7 +92,7 @@ TEST(Md5Tests, PartialUpdateTest)
{
// "12345678901234567890123456789012345678901234567890123456789012345678901234567890"
Md5::Hasher hasher;
Md5Hasher hasher;
{
const char * in = "12345678901234567890";
@@ -124,7 +124,7 @@ TEST(Md5Tests, LongInputTest)
{
std::string operator()(const char * in) const
{
Md5::Hasher hasher;
Md5Hasher hasher;
hasher.Update(in, in + strlen(in));
return hasher.Finish().ToHexString();
}
@@ -143,7 +143,7 @@ TEST(Md5Tests, LongInputPartialUpdateTest)
{
{
// 2500 zeros ('0').
Md5::Hasher hasher;
Md5Hasher hasher;
std::string in(750, '0');
@@ -159,7 +159,7 @@ TEST(Md5Tests, LongInputPartialUpdateTest)
{
// 1000 'a' followed by 1000 'b'.
Md5::Hasher hasher;
Md5Hasher hasher;
std::string inA(1000, 'a');
std::string inB(1000, 'b');