नीचे सी # में अपने ही सिफर प्रोग्राम का उपयोग मेरी hobbiest समाधान को दर्शाता है। कार्यक्रम और स्रोत मुफ्त और उपलब्ध हैं।
के लॉक किए गए बॉक्स पहेली 'याद है एक सुरक्षा पर याद करते हुए अब पॉडकास्ट?
यहाँ प्रकरण है ... प्रकरण # 33 | 30 मार्च 2006 | 43 मिनट सममित ब्लॉक सिफर
https://www.grc.com/sn/sn-033.txt
स्टीव कहते हैं ... ... लियो और मैं पिछले सप्ताह के गूढ़/brainteaser जो दो निजी एक समय पैड का उपयोग करने का विचार का पता लगाया का जवाब "कुंजी," की तरह दो पैडलॉक्स, के बीच दो पक्षों को सुरक्षित रूप से संदेश भेजने के लिए, में से कोई भी जिसके पास अन्य की कुंजी होगी। फिर हम दोनों एक साथ सममित ब्लॉक सिफर के संचालन का वर्णन करके मौलिक क्रिप्टो प्रौद्योगिकी के लिए जारी अपने यात्रा जारी रखें ...
स्टीव और लियो पर सहमत हुए कि एक छिपकर बातें सुनेवाला ऐलिस सिफर पाठ को देखने पहले और बाद में एन्क्रिप्शन सकता है XOR और निकाले जाते हैं उसकी गुप्त कुंजी हालांकि, यदि एक जटिल, कम्यूटिव सिफर जो एन्क्रिप्ट करने के लिए सरल XORING का उपयोग नहीं करता है तो मैं सोचता हूं कि कुंजी एक्सचेंज सुरक्षित होगा और कुंजी एक्सचेंज काम करेगा।
उदाहरण के लिए ... बीओबी अपनी कुंजी के साथ संदेश को एन्क्रिप्ट करता है। एलआईसीई ने अपनी कुंजी के साथ बीओबी के एन्क्रिप्टेड उपरोक्त संदेश को एन्क्रिप्ट किया। एलआईसीई एन्क्रिप्टेड संदेश को वापस बीओबी पर भेजता है। बीओबी अपनी कुंजी के साथ एलआईसीई के उपरोक्त संदेश को डिक्रिप्ट करता है। बीओबी ऊपर एलआईसी भेजता है। एलआईसीई उसकी कुंजी के साथ उपरोक्त करता है। एलआईसीई अब बीओबी के मूल डिक्रिप्टेड सिफर टेक्स्ट को पढ़ सकता है और उन्हें एक्सचेंज करने के लिए की आवश्यकता नहीं थी। एल्गोरिदम सरल 'सादा पाठ और कुंजी का xor'ing नहीं है, तो एक छिपकली हमला काम नहीं करेगा।
यह सिफर एक कम्यूटिव, जटिल एल्गोरिदम है।
नोटपैड टेक्स्ट फ़ाइल से शुरू होता है जिसमें एक वर्ण, एक 'एम' होता है। मीटर हेक्स 6 डी 01101101 है। हेक्स सी 2 11000010 है 'बी' बॉब द्वारा एन्क्रिप्टेड है और फिर ऐलिस को भेजा गया है। ø हेक्स डी 8 11011000 ऐलिस का 'ए' का एन्क्रिप्शन है जो बॉब '£' को डिक्रिप्ट करता है और एलिस भेजता है। £ हेक्स ए 3 10100011 है जो एलिस उसकी कुंजी के साथ 'एम' करने का फैसला करता है। मीटर एलिस डिक्रिप्ट परिणाम एक सहेजने वाला ऐपर एन्क्रिप्शन से पहले एलिस के संदेश को देखता है। ईव्सड्रॉपर एन्क्रिप्शन के बाद एलिस के संदेश को देखता है। eavesdropper xors और ø। 11000010 ' 11011000' ø ' 00011010 हेक्स में eavesdropper का xor परिणाम = 1a। यदि कोई छिपकली हमला किया गया तो उसे 'ई' हेक्स 45 01001001 मिलेगा जो
एलिस की कुंजी का पहला अक्षर है।
इस लगता है पीजीपी की तुलना में एक सरल कुंजी विनिमय आदि सब आवश्यक है कि दोनों दलों के एक ही क्रिप्टो कार्यक्रम का उपयोग करें और एक प्रमाणक पर सहमत है।
मैं एक सबसे कठिन होने के लिए कबूल करता हूं। अगर कोई भी विन्डोज़ सी # .NET प्रोग्राम और/या सिफर के लिए स्रोत कोड चाहता है तो वे हो सकते हैं।
नीचे उदाहरण के साथ, यादृच्छिक कुंजी के साथ उदाहरण है।
प्लेन टेक्स्ट यह एक परीक्षण है।
बॉब के प्रमुख kZtOfS0kKqcRLjTNPh7OjcJKZZFLjmm5OVm02YlrBQN0zI9SxOD1zJjQcpetUbX
BOB'S CIPHER ऐलिस के पाठ। 1IÎ.8Ío # "ëìAùJ '
ऐलिस कुंजी O1yfuV7MpX3n4wtefUhr6YctRaeCcrrzH7LqLNRUQCMVZuL5Mr0Bw3qMeIT92hg
ऐलिस CIPHER BOB μRÖ³ # IOO के लिए पाठ, fzkÆaå
BOB डीकोड ऐलिस ऊपर जो नीचे =। øqqøð < ª> p & @ <, और एलिस के ऊपर वापस भेजता है जो एलिस का उपयोग कर रहा है ... यह एक परीक्षण है।
क्या कोई गंभीर कारण है कि ऐलिस सिर्फ K0 पर नहीं पकड़ सकता है और केवल बॉब से प्राप्त कुंजी के साथ डिक्रिप्ट करने के बाद के0 के साथ टोकन डिक्रिप्ट कर सकता है? –
@ लुनैटिक प्रायोगिकतावादी: हां। यह केवल एक सरलीकृत प्रोटोकॉल विवरण है। वास्तव में क्या होता है यह है कि ऐलिस कुंजी का एक गुच्छा उत्पन्न करता है और प्रत्येक टोकन को स्वयं एन्क्रिप्ट करता है। प्रत्येक टोकन अब दोगुना एन्क्रिप्टेड है। यदि बॉब टोकन एक्स को ऐलिस को प्रकट करना चाहता है, तो वह अपने केएक्स को भेजता है। यदि ऐलिस टोकन एक्स को बॉब को प्रकट करना चाहता है, तो वह उसे अपने केएक्स भेजती है। – camh