我正在使用 Crypto++ 从给定的密码生成 MD4-Hash。但生成的哈希似乎不正确。我想我在某处滥用了 CryptoPP 功能。
CryptoPP::Weak1::MD4 hash2;
byte digest2[CryptoPP::Weak1::MD4::DIGESTSIZE];
hash.CalculateDigest(digest2, (byte*)password, strlen(password));
CryptoPP::HexEncoder encoder2;
std::string output2;
encoder2.Attach(new CryptoPP::StringSink(output2));
encoder2.Put(digest,sizeof(digest2));
encoder2.MessageEnd();
printf("END %s \n", output2.c_str());
我的变量密码包含值“test”。打印输出为:
结束 3CC942AE509EC070B2548515E00F8CE8
一些 MD4 哈希生成器测试的预期值是:
db346d691d7acc4dc2625db19f9e3f52
有任何想法吗?