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