विषयसूची:
- आपूर्ति
- चरण 1: चर घोषित करना और इनपुट प्राप्त करना
- चरण 2: नई वर्णमाला बनाना
- चरण 3: संदेश को स्थानांतरित करना
- चरण 4: अतिरिक्त
वीडियो: पायथन में सीज़र सिफर कार्यक्रम: 4 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:18
सीज़र सिफर एक प्राचीन और व्यापक रूप से इस्तेमाल किया जाने वाला सिफर है जो एन्क्रिप्ट और डिक्रिप्ट करना आसान है। यह पूरी तरह से नया वर्णमाला बनाने के लिए वर्णमाला के अक्षरों को स्थानांतरित करके काम करता है (एबीसीडीईएफ 4 अक्षरों में स्थानांतरित हो सकता है और ईएफजीएचआईजे बन जाएगा)।
सीज़र सिफर्स सबसे सुरक्षित सिफर नहीं हैं, लेकिन छोटे कार्यों के लिए अच्छे हैं जैसे कि गुप्त नोट्स पास करना या पासवर्ड को थोड़ा मजबूत बनाना। कोड को समझना वास्तव में आसान है, लेकिन यदि आपके पास विशेष वर्णमाला याद नहीं है तो इसे एन्क्रिप्ट करना कठिन हो सकता है।
इस प्रक्रिया को आसान बनाने के लिए, हम कंप्यूटर की शक्ति का उपयोग कर सकते हैं, विशेष रूप से प्रोग्रामिंग भाषा पायथन।
यह निर्देश आपको दिखाएगा कि एक प्रोग्राम कैसे बनाया जाए जो संदेशों को आपके आदेश पर एक सिफर में परिवर्तित करता है।
आपूर्ति
आपको केवल एक पायथन दुभाषिया की आवश्यकता है: IDLE, Pycharm, और Thonny कुछ अच्छे, मुफ्त विकल्प हैं (मैंने Pycharm का उपयोग किया है)
पायथन का बुनियादी ज्ञान
चरण 1: चर घोषित करना और इनपुट प्राप्त करना
वास्तव में वर्णमाला, संदेश, शिफ्ट, आदि के स्ट्रिंग (पाठ) मानों को संग्रहीत करने के लिए हमें चर का उपयोग करने की आवश्यकता है। हम चर 'वर्णमाला', 'आंशिकऑन', 'आंशिक दो' और 'नई वर्णमाला' घोषित करके शुरू करते हैं। मैंने अपने कोड में कैमल केस में वेरिएबल्स के नाम लिखे हैं (पहला शब्द लोअरकेस और दूसरा अपरकेस है) लेकिन आप इसे किसी भी तरह से लिख सकते हैं, जब तक आप इसे बाकी कोड में भी बदलना याद रखें।. वर्णमाला चर का मान "abcdefghijklmnopqrstuvwxyz" है। अन्य सभी चर "" पर सेट हैं, जो एक खाली स्ट्रिंग है क्योंकि हमारे पास अभी तक उनके मान नहीं हैं।
यह जो कर रहा है वह आंशिक प्रणाली स्थापित कर रहा है, जिसका उपयोग हम वास्तव में बदलाव बनाने के लिए कर रहे हैं। इसे बाद के चरण में समझाया जाएगा।
इसके बाद हमें यूजर से मैसेज और शिफ्ट वैल्यू प्राप्त करनी होगी। हम ऐसा करने के लिए इनपुट फ़ंक्शन का उपयोग करते हैं। कोड का यह भाग उपयोगकर्ता से एक संदेश और एक संख्या के लिए वर्णमाला को स्थानांतरित करने के लिए कहता है।
कोड:
वर्णमाला = "abcdefghijklmnopqrstuvwxyz"
आंशिक एक = ""
आंशिक दो = ""
नई वर्णमाला = ""
संदेश = इनपुट ("कृपया वह संदेश दर्ज करें जिसका आप अनुवाद करना चाहते हैं:")। निचला ()
key = int (इनपुट ("कृपया वह नंबर दर्ज करें जिसे आप स्थानांतरित करना चाहते हैं:"))
चरण 2: नई वर्णमाला बनाना
अब स्थानांतरित वर्णमाला बनाने के लिए। ऐसा करने के लिए, हम आंशिक प्रणाली का उपयोग करेंगे। आंशिक प्रणाली वह है जहां कंप्यूटर वर्णमाला को दो भागों में विभाजित करता है (भागों को कहने का एक शानदार तरीका)। पहला आंशिक इतना लंबा है कि आपने कार्यक्रम को स्थानांतरित करने के लिए कहा था, और दूसरा शेष है। कंप्यूटर आंशिक स्विच करता है। कोड ठीक यही कर रहा है, पहले कथन के साथ, जो कहता है कि यदि शिफ्ट 0 है, तो नया वर्णमाला और पुराना वर्णमाला समान है क्योंकि आप कुछ भी स्विच नहीं कर रहे हैं।
उदाहरण के लिए:
अनुक्रम - 123456789
आंशिक एक - 123; आंशिक दो - 456789
नया क्रम - 456789123
कोड:
अगर कुंजी == 0:
नई वर्णमाला = वर्णमाला
एलिफ कुंजी> 0:
आंशिक एक = वर्णमाला [: कुंजी]
आंशिक दो = वर्णमाला [कुंजी:]
न्यूअल्फाबेट = आंशिक दो + आंशिक एक
अन्यथा:
आंशिक एक = वर्णमाला [:(26 + कुंजी)]
आंशिक दो = वर्णमाला [(26 + कुंजी):]
न्यूअल्फाबेट = आंशिक दो + आंशिक एक
चरण 3: संदेश को स्थानांतरित करना
अब हमारे पास हमारी वर्णमाला और नई वर्णमाला है। जो कुछ बचा है वह संदेश को कोड में बदलना है।
सबसे पहले, हम एक नया चर सेट करते हैं और इसे 'एन्क्रिप्टेड' कहते हैं और इसे "" पर सेट करते हैं। फिर हम वास्तव में जटिल फॉर-लूप लिखते हैं जो संदेश में प्रत्येक अक्षर की जांच करता है और इसे नए अक्षर में बदल देता है। यह परिणाम को आउटपुट करता है और वहां आपके पास एक सफलतापूर्वक परिवर्तित कोड है!
कोड:
एन्क्रिप्टेड = "" रेंज में मैसेज_इंडेक्स के लिए (0, लेन (संदेश)):
अगर संदेश [message_index] == "":
एन्क्रिप्टेड + = ""
श्रेणी में Alphabet_index के लिए (0, लेन (newAlphabet)):
अगर संदेश [message_index] == वर्णमाला [alphabet_index]:
एन्क्रिप्टेड + = नया वर्णमाला [वर्णमाला_इंडेक्स]
प्रिंट (एन्क्रिप्टेड)
चरण 4: अतिरिक्त
कोड फ़ाइल संलग्न है।
सिफारिश की:
Arduino ISP के रूप में -- AVR में बर्न हेक्स फ़ाइल -- एवीआर में फ्यूज -- प्रोग्रामर के रूप में Arduino: 10 कदम
Arduino ISP के रूप में || AVR में बर्न हेक्स फ़ाइल || एवीआर में फ्यूज || अरुडिनो प्रोग्रामर के रूप में:………………अधिक वीडियो के लिए कृपया मेरे YouTube चैनल को सब्सक्राइब करें……यह लेख आईएसपी के रूप में आर्डिनो के बारे में सब कुछ है। यदि आप हेक्स फ़ाइल अपलोड करना चाहते हैं या यदि आप एवीआर में अपना फ्यूज सेट करना चाहते हैं तो आपको प्रोग्रामर खरीदने की आवश्यकता नहीं है, आप कर सकते हैं
शेक्सपियर प्रोग्रामिंग भाषा में सरल जोड़ कार्यक्रम: १८ कदम
शेक्सपियर प्रोग्रामिंग लैंग्वेज में सिंपल एडिशन प्रोग्राम: शेक्सपियर प्रोग्रामिंग लैंग्वेज (एसपीएल) एक गूढ़ प्रोग्रामिंग भाषा का एक उदाहरण है, जो शायद सीखने में दिलचस्प और उपयोग में मजेदार है, लेकिन वास्तविक जीवन के अनुप्रयोगों में विशेष रूप से उपयोगी नहीं है। SPL एक ऐसी भाषा है जहाँ स्रोत कोड r
कंप्यूटर बिल्ड सैम और सीज़र: 9 कदम
कंप्यूटर बिल्ड सैम और सीज़र: इस तरह से कंप्यूटर बनाया जाता है
बिल सिफर पिरामिड स्पीकर: 9 कदम (चित्रों के साथ)
बिल सिफर पिरामिड स्पीकर: यह प्रोजेक्ट ग्रेविटी फॉल्स शो के बिल सिफर के पिरामिड डिजाइन से प्रेरित है और इसे डिजाइन टेक्नोलॉजी क्लास के लिए बनाया गया था। वर्तमान में उत्पाद अधूरा है और यह उत्पादन योजना के रूप में कार्य करता है। पृष्ठ को तब अपडेट किया जाएगा जब उत्पाद
Arduino के साथ Vigenere सिफर: 3 कदम
Arduino के साथ Vigenere Cipher: कुछ साल पहले, डैन ब्राउन द्वारा डिजिटल किले ने मेरा ध्यान खींचा और एक विशेष बात मेरे दिमाग में अटक गई। क्रिप्टोस, जिम सैनबोर्न द्वारा बनाई गई मूर्तिकला जिसमें सिफर टेक्स्ट होता है जिसके पहले दो भाग विजेनरे सिफर द्वारा एन्क्रिप्ट किए जाते हैं। मैं