2011-01-13 174 views
6

我正试图找到一个很好的(且有据可查的)哈希库来使用我的C++程序,我只需要从一个字符串生成两个哈希。MD5和SHA1 C++哈希库

我试着crypto++mhash和我没有设法使他们的工作,也与http://www.zedwood.com/article/121/cpp-md5-function

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

+2

[C/C++中最好的加密库是什么?](http://stackoverflow.com/questions/180870/what-is-the-best-encryption-library-in-c-c) – 2011-01-13 09:41:47

回答

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。

3

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

解决方案,如OpenSSL和加密+是跨平台的,如果你“没有管理,以使他们的工作”,你本来应该更具体,如:我使用OS xyz版本xyz,编译器xyz版本xyz,IDE xyz版本xyz,试图从http://xyz获得工作库xyz版本xyz,并且它不起作用,因为xyz错误。