3
A
回答
2
不,Boost没有实现MD5。为此使用加密/散列库。
CryptoC++在我的经验很好。
的OpenSSL实现所有流行的消化,这是一个使用OpenSSL的样本:
#include <openssl/md5.h>
#include <iostream>
#include <iomanip>
// Print the MD5 sum as hex-digits.
void print_md5_sum(unsigned char* md) {
for(unsigned i=0; i <MD5_DIGEST_LENGTH; i++) {
std::cout << std::hex << std::setw(2) << std::setfill('0') << static_cast<int>(md[i]);
}
}
#include <string>
#include <vector>
#include <fstream>
int main(int argc, char *argv[]) {
using namespace std;
vector<string> const args(argv+1, argv+argc);
for (auto& fname : args) {
MD5_CTX ctx;
MD5_Init(&ctx);
ifstream ifs(fname, std::ios::binary);
char file_buffer[4096];
while (ifs.read(file_buffer, sizeof(file_buffer)) || ifs.gcount()) {
MD5_Update(&ctx, file_buffer, ifs.gcount());
}
unsigned char digest[MD5_DIGEST_LENGTH] = {};
MD5_Final(digest, &ctx);
print_md5_sum(digest);
std::cout << "\t" << fname << "\n";
}
}
相关问题
- 1. Laravel Un Hash哈希值?
- 2. 如何从使用PHP的torrent文件获取哈希信息?
- 3. PHP - 上传文件的哈希内容
- 4. 如何实现Hash#all?多维哈希?
- 5. perl使用哈希过滤另一个哈希内容
- 6. 哈希内容不变
- 7. 使用boost库的简单哈希表
- 8. 如何从哈希中获取下一个哈希元素?
- 9. 如何使用PowerShell中的文件内容获取文件名
- 10. perl:使用地图获取哈希值
- 11. 如何从网站获取哈希值?
- 12. 如何使用Perl从Windows命令行获取文件的SHA1哈希值?
- 13. 如何使用VBA获取文件的MD5十六进制哈希值?
- 14. CryptEncrypt获取哈希数据
- 15. jQuery的 - 获取URL哈希
- 16. 如何使用tika 1.6获取文本内容文件?
- 17. 如何使用django-salesforce获取Salesforce附件文件内容?
- 18. 如何获取文件内容的ParcelFileDescriptor?
- 19. 如何获取文件内容
- 20. 如何内哈希对象
- 21. 如何使用哈希
- 22. 从QString获取Sha1哈希
- 23. Spreadsheet_Excel_Writer获取文件内容
- 24. 哈希Powershell的内容输出到文件
- 25. Applescript获取文件夹中文件的哈希列表
- 26. Dropbox内容哈希作为文件指纹
- 27. 如何在ruby中使用哈希获取默认值
- 28. 如何使用f.select获取静态哈希值?
- 29. 如何使用java在redis db中获取哈希列表?
- 30. 如何使用Powershell获取证书的安全哈希算法
这仅是Linux,这就是问题对我来说。 – Croll
@joker crypto C++和OpenSsl都可以在windows上使用(也许大多数平台是你可以梦想的) – sehe
你的代码(以及其他任何示例)使用linux头文件,如果是这样,你能显示windows例子吗?将是美妙的 – Croll