MD5和SHA1 C ++散列库

时间:2011-01-13 09:24:07

标签: c++ hash md5 sha1

我正在尝试找到一个好的(并且记录良好的)哈希库来与我的C ++程序一起使用,我只需要从字符串中生成两个哈希值。

我尝试使用crypto++mhash而我无法让它们工作,同时使用http://www.zedwood.com/article/121/cpp-md5-function

如果这个库是跨平台的,我会很高兴的。

3 个答案:

答案 0 :(得分:4)

答案 1 :(得分:3)

在询问之前搜索,已经存在问题: What is the best encryption library in C/C++?

像OpenSSL和Crypto ++这样的解决方案是跨平台的,如果你“无法让它们工作”,你应该更具体一点:我使用OS xyz版本xyz,编译器xyz版本xyz,IDE xyz版本xyz ,试图从http://xyz获取工作库xyz版本xyz,它不起作用,因为xyz错误。

答案 2 :(得分:2)

请参阅我的回答here。原始样本取自here,并在std::string而非std::istream上运行。在cryptopp wiki上有很多好的样本,我会尝试寻找一些我用过的样本。

这是我的代码中的一个示例:

#include <cryptopp/md5.h>

byte digest[AES::BLOCKSIZE];
MD5().CalculateDigest(digest, (byte*)input.data(), input.size());

以下是其维基上cryptopp samples的列表。看看HashFunctions和HashFilter。