хвид для лоадера (хвид с гитхаба по сссылке) #include <iostream> #include <string> #include <sstream> #include <fstream> #include <vector> #include <openssl/sha.h> #include <curl/curl.h> #include <cstdlib> std::string getHardwareID() { std::string volumeSerial; FILE* pipe = popen("vol C:", "r"); if (!pipe) return "ERROR"; char buffer[128]; while (fgets(buffer, sizeof(buffer), pipe) != nullptr) { volumeSerial = buffer; } pclose(pipe); unsigned char hash[SHA256_DIGEST_LENGTH]; SHA256((unsigned char*)volumeSerial.c_str(), volumeSerial.size(), hash); std::ostringstream oss; for (int i = 0; i < SHA256_DIGEST_LENGTH; ++i) { oss << std::hex << (int)hash[i]; } return oss.str(); } size_t WriteCallback(void* contents, size_t size, size_t nmemb, std::string* userp) { size_t totalSize = size * nmemb; userp->append((char*)contents, totalSize); return totalSize; } bool checkHardwareID(const std::string& userHwid) { std::string url = "ССЫЛКА НА РАВ ФАЙЛА С ХВИДАМИ"; CURL* curl; CURLcode res; std::string readBuffer; curl_global_init(CURL_GLOBAL_DEFAULT); curl = curl_easy_init(); if (curl) { curl_easy_setopt(curl, CURLOPT_URL, url.c_str()); curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback); curl_easy_setopt(curl, CURLOPT_WRITEDATA, &readBuffer); res = curl_easy_perform(curl); curl_easy_cleanup(curl); if (res != CURLE_OK) { std::cerr << "Error: " << curl_easy_strerror(res) << std::endl; return false; } std::istringstream responseStream(readBuffer); std::string line; while (std::getline(responseStream, line)) { if (line == userHwid) { std::cout << "\nещкере" << std::endl; return true; } } std::cout << "\nті хакєр что лі?" << std::endl; return false; } return false; } int main() { std::string userHwid = getHardwareID(); checkHardwareID(userHwid); return 0; } Получение HWID #include <iostream> #include <string> #include <sstream> #include <openssl/sha.h> #include <cstdlib> std::string getHWID() { std::string volumeSerial; FILE* pipe = popen("vol C:", "r"); if (!pipe) return "ERROR"; char buffer[128]; while (fgets(buffer, sizeof(buffer), pipe) != nullptr) { volumeSerial = buffer; } pclose(pipe); unsigned char hash[SHA256_DIGEST_LENGTH]; SHA256((unsigned char*)volumeSerial.c_str(), volumeSerial.size(), hash); std::ostringstream oss; for (int i = 0; i < SHA256_DIGEST_LENGTH; ++i) { oss << std::hex << (int)hash[i]; } return oss.str(); } int main() { std::string hwid = getHWID(); std::cout << "HWID: " << hwid << std::endl; std::cin.get(); return 0; }