File encryption and decryption Project in C++ in Hindi | with source code

 हेलो दोस्तों !

आज की इस पोस्ट में हम file को encrypt और decrypt करने का project C++ की मदद से बनाना सीखेंगे। तो दोस्तों अगर आप इस प्रोजेक्ट को अच्छी तरह समझना चाहते है तो इस पोस्ट को अंत तक जरूर पढ़े। 

इस पोस्ट के मुख्य टॉपिक्स निन्म है -

  1. Project overview. 
  2. Important concepts.
  3. Important functions.
  4. Project logic.
  5. Project source code.
  6. Project explanation video.

1.Project overview :-

तो दोस्तों सबसे पहले हम file को encrypt और decrypt करने का project का ओवरव्यू देख लेते है की प्रोजेक्ट क्या करेगा। 


C++ project to encrypt and decrypt a file in hindi



दोस्तों हमने इस project को vs code पर C++ language की मदद से बनाया है। यह एक सिंपल सा प्रोजेक्ट है जो किसी file को encrypt और decrypt करने का काम करेगा। इस प्रोजेक्ट के अंदर हमने तीन यूजर डिफाइन फंक्शन्स को बनाया है। जिनको हम main फंक्शन से कॉल करके उनसे वो ऑपरेशन  कराया जाएगा जिस काम के लिए उन्हें बनाया गया है। 

अगर हम बात करें उन तीन यूजर डिफाइन फंक्शन की तो उनमें से पहला encryptFile() फंक्शन है ,दूसरा decryptFile() फंक्शन है और तीसरा showFile() फंक्शन है। तो जैसा की इनके नाम से ही पता चलता है की ये क्या करेंगे। पहला फंक्शन फाइल को एन्क्रिप्ट करेगा तो दूसरा फंक्शन फाइल को डिक्रिप्ट तो तीसरा फाइल को शो करेगा क्या फाइल एन्क्रिप्ट या डिक्रिप्ट हुई की नहीं। 

2.Important concepts :-

तो दोस्तों अब हम इस project में यूज़ किये गए कुछ important concepts को जान लेते है। 

दोस्तों वैसे तो हमने file को encrypt और decrypt करने के इस project में काफी सारे कॉन्सेप्ट्स का यूज़ किया है लेकिन वो बेसिक कॉन्सेप्ट्स है इसलिए हम उनकी बात नहीं करेंगे। हम यहाँ केवल कुछ important कॉन्सेप्ट्स को जानेंगे जो की निन्म है -
  • class - Data members and methods
  • file handling- reading and write on file
  • looping- while loop, do while loop
  • conditional statement - if else, switch case

तो दोस्तों ये है इम्पोर्टेन्ट कॉन्सेप्ट्स जो आपको आने चाहिए अगर आप इस प्रोजेक्ट को अच्छी तरह समझना चाहते है। क्योंकि आपको ये सारे कॉन्सेप्ट्स प्रोजेक्ट के सोर्स कोड में देखने को मिल जायेंगे। 

3.Important functions :-

दोस्तों अब हम इस प्रोजेक्ट में यूज़ किये गए कुछ इम्पोर्टेन्ट फंक्शन्स को जान लेते है। 

तो दोस्तों वैसे तो हमने इस प्रोजेक्ट के अंदर कुछ बेसिक फंक्शन्स का यूज़ किया है जैसे cout() ,cin() तो हम इन बेसिक फंक्शन्स की बात नहीं करेंगे। हम यह कुछ इम्पोर्टेन्ट फंक्शन्स की बात करेंगे जो की बेसिक नहीं है। तो ये है वो फंक्शन्स -
  1. open() 
  2. close()
  3. remove()

1.open() :-

दोस्तों यह फंक्शन फाइल को ओपन करने का काम करता है यह दोआर्गुमेंट लेता है पहला उस फाइल का नाम जिसे ओपन करना है और दूसरा मोड की किस मोड में इस फाइल को ओपन करना है यानी की रीड मोड में या write मोड में। इस फंक्शन का यूज़ करने के लिए आपको fstream क्लास के objects की मदद से इस फंक्शन को कॉल करना होता है। 

2.close() :-

दोस्तों यह फंक्शन फाइल को क्लोज करने का काम करता है यह केवल एक आर्गुमेंट लेता है जोकि उस फाइल का नाम होता है जिसे क्लोज करना है। इस फंक्शन का यूज़ करने के लिए आपको fstream क्लास के objects की मदद से इस फंक्शन को कॉल करना होता है। 

3.remove() :-

दोस्तों यह फंक्शन किसी फाइल को डिलीट करने का काम करता है यह फंक्शन केवल एक आर्गुमेंट लेता है जो की उस फाइल का नाम होता है जिसे डिलीट करना है। इस फंक्शन को यूज़ करने से पहले सुनिश्चित कर ले की वह फाइल क्लोज है या नहीं। अगर वह फाइल ओपन होगी तो फाइल डिलीट नहीं होगी। 

4.Project logic :-

दोस्तों अब हम इस project का logic देख लेते है की file को कैसे encrypt और decrypt किया जायेगा। 

Encryption logic :-

तो दोस्तों सबसे पहले हम फाइल एन्क्रिप्शन लॉजिक को समझ लेते है। दोस्तों फाइल को एन्क्रिप्ट करने के लिए सबसे पहले हम उस फाइल को रीड मोड में ओपन करेंगे। जिसे एन्क्रिप्ट करना है। साथ में हम एक और टेम्पररी फाइल को write मोड में ओपन करेंगे। इसके बाद हम main फाइल से एक-एक करैक्टर को रीड करेंगे और उन्हें एन्क्रिप्ट करके टेम्पररी फाइल में write करते जायेंगे। जब main फाइल का सारा कंटेंट एन्क्रिप्ट हो जायेगा तो हम दोनों फाइल को क्लोज कर देंगे। 

इसके बाद फिर से हम दो फाइल को ओपन करेंगे पहली हमारी main फाइल है जिसे अब write मोड में ओपन करना है और दूसरी टेम्पररी फाइल जिसके अंदर encrypted कंटेंट है उसे हम रीड मोड में ओपन करेंगे। इसके बाद हम टेम्पररी फाइल के सारे कंटेंट को अपनी main फाइल में कॉपी कर देंगे।

जिससे हमारी main फाइल एन्क्रिप्ट हो जाएगी। अब हम दोनों फाइल को क्लोज कर देंगे। और लास्ट में हम टेम्पररी फाइल को डिलीट कर देंगे। फिर मैसेज प्रिंट करा देंगे की फाइल सक्सेस्स्फुल्ली एन्क्रिप्ट हो चुकी है। 

Decryption logic :-

तो दोस्तोंअब हम फाइल decryption लॉजिक को समझ लेते है। दोस्तों फाइल को decrypt करने के लिए सबसे पहले हम उस फाइल को रीड मोड में ओपन करेंगे। जिसे डिक्रिप्ट करना है। साथ में हम एक और टेम्पररी फाइल को write मोड में ओपन करेंगे। इसके बाद हम main फाइल यानी की एन्क्रिप्टेड फाइल से एक-एक करैक्टर को रीड करेंगे और उन्हें डिक्रिप्ट करके टेम्पररी फाइल में write करते जायेंगे। जब main फाइल का सारा कंटेंट decrypt हो जायेगा तो हम दोनों फाइल को क्लोज कर देंगे। 

इसके बाद फिर से हम दो फाइल को ओपन करेंगे पहली हमारी main फाइल है जिसे अब write मोड में ओपन करना है और दूसरी टेम्पररी फाइल जिसके अंदर decrypted कंटेंट है उसे हम रीड मोड में ओपन करेंगे। इसके बाद हम टेम्पररी फाइल के सारे कंटेंट को अपनी main फाइल में कॉपी कर देंगे।

जिससे हमारी main फाइल decrypt हो जाएगी। अब हम दोनों फाइल को क्लोज कर देंगे। और लास्ट में हम टेम्पररी फाइल को डिलीट कर देंगे। फिर मैसेज प्रिंट करा देंगे की फाइल सक्सेस्स्फुल्ली डिक्रिप्ट हो चुकी है। 

5.Project source code :-

दोस्तों अब हम इस प्रोजेक्ट का source code देख लेते है। 

तो दोस्तों ये है इस प्रोजेक्ट का source code हमने इस प्रोजेक्ट को विसुअल स्टूडियो कोड पर बनाया है और g++ कम्पाइलर से compile किया है इसलिए अगर आप इसे प्रोजेक्ट के सोर्स कोड को किसी दूसरे C++ कम्पाइलर से compile करेंगे तो शायद आपको कुछ एरर देखने को मिल सकती है। 

Note :- कृपया हैडर फाइल में जो स्पेस है उसे अपने सिस्टम में इस तरह से हटा दे। 

#include < iostream >
#include < cstdio >
#include < fstream >

Source code :-


#include < iostream >
#include < cstdio >
#include < fstream >
using namespace std;

class Encryption
{
    bool check = false;
    char ch;
    string fileName = "sample.txt";

public:
    void encryptFile();
    void decryptFile();
    void showFile();
};

void Encryption::encryptFile()
{
    fstream fin, fout;
    fin.open(fileName, fstream::in);
    fout.open("sample2.txt", fstream::out);
    while (fin >> noskipws >> ch)
    {
        ch = ch + 100;
        fout << ch;
    }
    fin.close();
    fout.close();
    fin.open("sample2.txt", fstream::in);
    fout.open(fileName, fstream::out);
    while (fin >> noskipws >> ch)
    {
        fout << ch;
    }
    fin.close();
    fout.close();
    remove("sample2.txt");
    cout << "\nFile is successfully encrypted\n\n";
    check = true;
}

void Encryption::decryptFile()
{
    fstream fin, fout;
    fin.open(fileName, fstream::in);
    fout.open("sample2.txt", fstream::out);
    while (fin >> noskipws >> ch)
    {
        ch = ch - 100;
        fout << ch;
    }
    fin.close();
    fout.close();
    fin.open("sample2.txt", fstream::in);
    fout.open(fileName, fstream::out);
    while (fin >> noskipws >> ch)
    {
        fout << ch;
    }
    fin.close();
    fout.close();
    remove("sample2.txt");
    cout << "\nFile is successfully decrypted\n\n";
    check = false;
}

void Encryption::showFile()
{
    fstream fout;
    cout << endl;
    fout.open(fileName, fstream::in);
    while (fout >> noskipws >> ch)
    {
        cout << ch;
    }
    fout.close();
    cout << endl<< endl;
}

int main()
{
    int choose;
    Encryption file;
    cout << "\nWELCOME TO FILE ENCRYPTION PROJECT\n\n";
    do
    {
        cout << "Press 1 to encrypt file\n";
        cout << "Press 2 to decrypt file\n";
        cout << "Press 3 to show file\n";
        cout << "Press 4 to exit\n";
        cout << "Please choose any option: ";
        cin >> choose;
        switch (choose)
        {
        case 1:
            file.encryptFile();
            break;
        case 2:
            file.decryptFile();
            break;
        case 3:
            file.showFile();
            break;
        case 4:
            break;
        default:
            cout << "\nInvalid option try again\n";
            break;
        }
    } while (choose != 4);

    return 0;
}

6.Project explanation video :-

दोस्तों अगर आपको इस प्रोजेक्ट का आउटपुट देखना है या इस प्रोजेक्ट को और अच्छी तरह समझना है तो आप हमारी वीडियो यूट्यूब पर देख सकते है। हमने इस वीडियो में इस प्रोजेक्ट को अच्छी तरह से एक्सप्लेन भी किया है और साथ में प्रोजेक्ट को रन करके भी दिखाया है की यह प्रोजेक्ट कैसे वर्क कर रहा है। तो अगर आप इस वीडियो को देखना चाहते है तो नीचे क्लिक करके देख सकते है। 

file encryption and decryption project in c++ video

इन पोस्ट को भी पढ़े -


Author :- तो दोस्तों अब हमारी यह पोस्ट ख़त्म होती है हम आशा करते है की आपको हमारी यह पोस्ट जरूर पसंद आई होगी। और आप file को encrypt और decrypt करने का project C++  से बनाना सीख गए होंगे। तो दोस्तों आज के लिए बस इतना ही फिर मिलेंगे ऐसी ही किसी और मज़ेदार पोस्ट में तब तक के लिए अलविदा !

Post a Comment

0 Comments