आप जैसे पाठक MUO का समर्थन करने में मदद करते हैं। जब आप हमारी साइट पर लिंक का उपयोग करके खरीदारी करते हैं, तो हम संबद्ध कमीशन अर्जित कर सकते हैं। और पढ़ें।

पायथन का बेस 64 मॉड्यूल एन्कोडिंग और डिकोडिंग संदेशों के लिए एक शक्तिशाली उपकरण है। आप इसका उपयोग इंटरनेट पर सुरक्षित रूप से डेटा भेजने के लिए कर सकते हैं। शत्रुतापूर्ण हैकर्स से संवेदनशील डेटा को ढालने के लिए इस प्रकार के एन्कोडिंग का उपयोग करने के लिए वेबसाइटों, ऐप्स और संचार सेवाओं के लिए यह मानक प्रक्रिया है।

बेस 64 मॉड्यूल में कार्यों की एक जोड़ी है जिसका उपयोग आप संदेशों को एन्कोड और डीकोड करने के लिए कर सकते हैं, जिससे आपके डेटा ट्रांसफर में कुछ अतिरिक्त सुरक्षा जुड़ जाती है।

टिंकर और बेस 64 मॉड्यूल

टिंकर आपको डेस्कटॉप एप्लिकेशन बनाने की अनुमति देता है। यह विभिन्न प्रकार के विजेट जैसे बटन, लेबल और टेक्स्ट बॉक्स प्रदान करता है जो बहुत अधिक प्रयास किए बिना एप्लिकेशन विकसित करना आसान बनाता है। आप टिंकर के साथ अविश्वसनीय जीयूआई प्रोग्राम बना सकते हैं। आप शायद एक साधारण कैलकुलेटर बनाएँ, टू-डू सूची ऐप, या a टाइपिंग टेस्ट खेल. अपने सिस्टम में टिंकर को स्थापित करने के लिए, अपना टर्मिनल खोलें और टाइप करें:

पिप टिंकर स्थापित करें

BASE64 ASCII को बाइनरी डेटा को वापस बाइनरी में डिकोड करने के लिए फ़ंक्शन प्रदान करता है। यह मानक और URL-सुरक्षित एन्कोडिंग दोनों का समर्थन करता है जो सूचना के प्रसारण को अधिक सुरक्षित बनाता है। किसी स्ट्रिंग को बेस64 वर्ण में बदलने के लिए, प्रत्येक वर्ण का ASCII मान प्राप्त करें और उसके 8-बिट बाइनरी की गणना करें। अंकों को फिर से समूहीकृत करके और उन्हें उनके संबंधित दशमलव मानों में पुन: परिवर्तित करके 6 बिट्स के इस हिस्से को परिवर्तित करें। अंत में, प्रत्येक दशमलव के लिए Base64 मान प्राप्त करने के लिए Base64 एन्कोडिंग तालिका का उपयोग करें।

पायथन में संदेशों को कैसे एनकोड और डिकोड करें

आप इस प्रोजेक्ट का सोर्स कोड इसमें पा सकते हैं गिटहब रिपॉजिटरी.

दोनों मॉड्यूल आयात करके प्रारंभ करें। टिंकर उदाहरण को प्रारंभ करें और रूट विंडो प्रदर्शित करें। शीर्षक, पिक्सेल में आयाम और विंडो का पृष्ठभूमि रंग सेट करें।

से tkinter आयात *
आयात बेस 64

रूट = टीके ()
रूट.ज्यामिति ('750x400')
root.configure (पृष्ठभूमि ='एक्वा')
जड़ शीर्षक ("पायथन का उपयोग करके संदेशों को एनकोड और डिकोड करें")

एप्लिकेशन के बारे में उपयोगी जानकारी प्रदर्शित करने के लिए लेबल विजेट का उपयोग करें। लेबल एक मूल विंडो को स्वीकार करता है जिसमें आप इसे रखना चाहते हैं, वह पाठ जिसे इसे प्रदर्शित करना चाहिए, और फ़ॉन्ट शैली, रंग और पृष्ठभूमि रंग। उपयोग सामान बाँधना() पैरेंट विजेट में रखने से पहले विजेट को लेआउट ब्लॉक में व्यवस्थित करने के लिए। StringVar एक लेबल या प्रविष्टि जैसे विजेट के मान को नियंत्रित करना आसान बनाता है।

लेबल (रूट, टेक्स्ट ='पायथन संदेश एनकोडर और डिकोडर', फ़ॉन्ट ='एरियल 25 बोल्ड', एफजी ='सफ़ेद', बीजी ="बैंगनी")।सामान बाँधना()
टेक्स्ट = स्ट्रिंगवार ()
कुंजी = स्ट्रिंगवार ()
मोड = स्ट्रिंगवार ()
परिणाम = स्ट्रिंगवार ()

एक समारोह परिभाषित करें सांकेतिक शब्दों में बदलना () जो संदेश के साथ एन्कोडिंग और डिकोडिंग के लिए एक कुंजी स्वीकार करता है। एक खाली सूची को परिभाषित करें और संदेश की लंबाई तक पुनरावृति करें। कुंजी के सूचकांक को ऑपरेशन के मापांक के रूप में सेट करें और इसके मान को चर key_c में संग्रहीत करें। उपयोग ऑर्ड () चरित्र और उपयोग के यूनिकोड मूल्य प्राप्त करने के लिए सीआरआर () निर्दिष्ट मान का प्रतिनिधित्व करने वाले वर्ण को प्राप्त करने के लिए।

इस मान को सूची में जोड़ें। सूची के प्रत्येक तत्व को एक खाली स्ट्रिंग के साथ जोड़ें और इसका उपयोग करें सांकेतिक शब्दों में बदलना () स्ट्रिंग के utf-8 एन्कोडेड संस्करण को वापस करने की विधि। base64.urlsafe_b64encode () मेथड इस इनपुट को एनकोड करता है और - को + और _ को / से रिप्लेस करता है।

डीईएफ़एन्कोड(मूल संदेश):
एन सी = []

के लिए मैं में रेंज (लेन (संदेश)):
key_c = कुंजी [i% लेन (कुंजी)]
enc.append (chr ((ord (संदेश [i]) + ord (key_c))% 256))

वापस करना base64.urlsafe_b64एन्कोड("".जॉइन (enc).encode()).decode()

एक समारोह परिभाषित करें डिकोड () जो संदेश के साथ एन्कोडिंग और डिकोडिंग के लिए एक कुंजी स्वीकार करता है। एक खाली सूची को परिभाषित करें और संदेश को डिकोड करें। संदेश की लंबाई तक इरेट करें और ऑपरेशन के मॉड्यूलस को इंडेक्स के रूप में सेट करें और इसके मान को key_c में स्टोर करें। जैसा कि नीचे दिखाया गया है, यूनिकोड स्ट्रिंग संदेश डिकोड के वर्ण को जोड़ें। डीकोडेड स्ट्रिंग वापस करें।

डीईएफ़व्याख्या करना(मूल संदेश):
दिसम्बर = []
संदेश = base64.urlsafe_b64decode (संदेश) .decode ()

के लिए मैं में रेंज (लेन (संदेश)):
key_c = कुंजी [i% लेन (कुंजी)]
दिसम्बर.परिशिष्ट (chr((256 + ord (संदेश [i]) - ord (key_c))% 256))

वापस करना"".जॉइन (दिसंबर)

एक समारोह परिभाषित करें तरीका() जो एंट्री विजेट में उपयोगकर्ता द्वारा दर्ज मोड प्राप्त करता है और चयन के अनुसार उपयुक्त फ़ंक्शन को कॉल करता है। यदि उपयोगकर्ता वैध प्रतिक्रिया दर्ज नहीं करता है, तो एक त्रुटि संदेश प्रदर्शित करें।

डीईएफ़तरीका():
अगर (mode.get() == 'इ'):
Result.set (एनकोड (key.get(), Text.get()))
elif (mode.get() == 'डी'):
Result.set (डिकोड (key.get(), Text.get()))
अन्य:
परिणाम सेट('अवैध मोड')

एक समारोह परिभाषित करें बाहर निकलना() पृष्ठभूमि में चल रहे दुभाषिया को मारने और समाप्त करने के लिए। एंट्री फ़ील्ड की सामग्री को साफ़ करने के लिए फ़ंक्शन रीसेट() को परिभाषित करें।

डीईएफ़बाहर निकलना():
जड़ नष्ट ()

डीईएफ़रीसेट():
टेक्स्ट सेट ("")
चाबीगुछा("")
मोड.सेट ("")
परिणाम सेट("")

संदेश, कुंजी, मोड और टेक्स्ट के लिए लेबल और एंट्री विजेट परिभाषित करें। वह मूल विंडो निर्दिष्ट करें जिसमें आप उन्हें रखना चाहते हैं, फ़ॉन्ट शैली, पाठ और पृष्ठभूमि का रंग। उन्हें व्यवस्थित करने के लिए निर्देशांक भी निर्धारित करें।

लेबल (रूट, फ़ॉन्ट ='एरियल 17 बोल्ड', पाठ ='संदेश', एफजी ='काला', बीजी ="एक्वा".जगह (एक्स =60, वाई =100)
प्रविष्टि (रूट, फ़ॉन्ट ='एरियल 15', पाठ चर = पाठ, बीजी ='सफ़ेद'.जगह (एक्स =450, वाई =100)

लेबल (रूट, फ़ॉन्ट ='एरियल 17 बोल्ड', पाठ ='चाबी', एफजी ='काला', बीजी ="एक्वा".जगह (एक्स =60, वाई =130)
प्रविष्टि (रूट, फ़ॉन्ट ='एरियल 15', पाठ चर = कुंजी, बीजी ='सफ़ेद'.जगह (एक्स =450, वाई =130)

लेबल (रूट, फ़ॉन्ट ='एरियल 17 बोल्ड', पाठ ='मोड (ई-एनकोड, डी-डिकोड)', एफजी ='काला', बीजी ="एक्वा".जगह (एक्स =60, वाई =160)
प्रविष्टि (रूट, फ़ॉन्ट ='एरियल 15', टेक्स्ट वेरिएबल = मोड, बीजी ='सफ़ेद'.जगह (एक्स =450, वाई =160)

लेबल (रूट, फ़ॉन्ट ='एरियल 17 बोल्ड', पाठ ='मूलपाठ', एफजी ='काला', बीजी ="एक्वा".जगह (एक्स =60, वाई =190)
प्रविष्टि (रूट, फ़ॉन्ट ='एरियल 15 बोल्ड', पाठ चर = परिणाम, बीजी ='सफ़ेद'.जगह (एक्स =450, वाई =190)

इसी तरह, परिणाम देखने के लिए तीन बटन परिभाषित करें, फ़ील्ड्स को रीसेट करें और प्रोग्राम को रोकें। बटन में एक विशेष पैरामीटर होता है जिसे कमांड कहा जाता है जो एक फ़ंक्शन लेता है और इसे क्लिक पर निष्पादित करता है।

बटन (रूट, फ़ॉन्ट ='एरियल 15 बोल्ड', पाठ ='परिणाम', पैडएक्स =2, बीजी ='हल्का ग्रे', कमांड = मोड)। जगह (एक्स =100, वाई =240)
बटन (रूट, फ़ॉन्ट ='एरियल 15 बोल्ड', पाठ ='रीसेट', चौड़ाई =6, कमांड = रीसेट, बीजी ='हरा', पैडएक्स =2.जगह (एक्स =300, वाई =240)
बटन (रूट, फ़ॉन्ट ='एरियल 15 बोल्ड', पाठ ='रुकना', चौड़ाई =6, कमांड = बाहर निकलें, बीजी ='लाल', पैडएक्स =2, पद्य =2.जगह (एक्स =500, वाई =240)

मुख्य घेरा() फ़ंक्शन पायथन को टिंकर इवेंट लूप चलाने के लिए कहता है और जब तक आप विंडो बंद नहीं करते तब तक ईवेंट (जैसे बटन प्रेस) सुनें।

रूट.मेनलूप ()

संदेश एनकोडर / डिकोडर इन एक्शन

प्रोग्राम चलाने पर, प्रोग्राम एक विंडो प्रदर्शित करता है जहाँ आपको एक संदेश, एक कुंजी और एक मोड दर्ज करना होता है। 2009 की कुंजी के साथ एनकोडिंग मोड का चयन करने पर, संदेश उपयोग करना में बदल जाता हुँ f8KRwpvCnlLChcKjwp5Sf8KW.

इसी तरह, एन्कोडेड संदेश को कॉपी करने और उसी के साथ डिकोडिंग के लिए इनपुट पर वापस पेस्ट करने पर, आपको मूल संदेश वापस मिल जाता है।

साइबर सुरक्षा पायथन का उपयोग करना

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

साइबर सुरक्षा विशेषज्ञ अक्सर किसी एप्लिकेशन की निगरानी के लिए वेब एप्लिकेशन फायरवॉल बनाने के लिए पायथन का उपयोग करते हैं। वे मशीन लर्निंग का उपयोग करके खतरे का पता लगाने का विश्लेषण कर सकते हैं। इस आर्किटेक्चर के साथ, कस्टम पैठ परीक्षण बनाना और सुरक्षा प्रोटोकॉल को मान्य करना बहुत आसान है।