Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Mengira Hash MD5 Fail dalam C menggunakan OpenSSL?
Mengira Cincang MD5 daripada Fail dalam C
Dalam senario di mana menjaga integriti data adalah kritikal, algoritma cincang MD5 memainkan peranan yang penting. Untuk mengira cincangan MD5 fail dalam C , berikut ialah pelaksanaan yang mantap menggunakan OpenSSL:
Pelaksanaan:
#include <fstream> #include <openssl/md5.h> int main() { // Open the file std::ifstream file("input_file.txt"); // Create a buffer to store the file contents std::vector<char> buffer(std::istreambuf_iterator<char>(file), {}); // Calculate the MD5 hash unsigned char hash[MD5_DIGEST_LENGTH]; MD5((unsigned char*) buffer.data(), buffer.size(), hash); // Convert the hash to a string std::stringstream ss; for (int i = 0; i < MD5_DIGEST_LENGTH; i++) { ss << std::hex << std::setfill('0') << std::setw(2) << (int) hash[i]; } std::string md5_hash = ss.str(); // Print the MD5 hash std::cout << "MD5 hash: " << md5_hash << std::endl; return 0; }
Pelaksanaan ini membuka fail, membaca kandungannya ke dalam penimbal, dan mengira cincangan MD5 menggunakan perpustakaan OpenSSL. Cincang kemudian ditukar kepada rentetan heksadesimal dan dipaparkan.
Atas ialah kandungan terperinci Bagaimana untuk Mengira Hash MD5 Fail dalam C menggunakan OpenSSL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!