
क्लासिक सिफर: Caesar, ROT13, Atbash और Affine
सीज़र, रोट13, ऐटबैश, अफ़ाइन और कीवर्ड कूट कैसे काम करते हैं, अक्षर गिनकर इन्हें कैसे तोड़ें और आज इनमें से कोई भी सुरक्षित क्यों नहीं है।
लोग दो हज़ार से भी अधिक वर्षों से संदेशों को खुले में छिपाते आए हैं। शुरुआती तरकीबों में हर अक्षर को एक तय नियम के अनुसार किसी दूसरे अक्षर से बदल दिया जाता था। इनका इस्तेमाल करना मज़ेदार है और ये क्रिप्टोग्राफी की एक बेहतरीन शुरुआत हैं, लेकिन धैर्यवान हमलावर पेंसिल लेकर इनमें से हर एक को तोड़ सकता है। यह गाइड बताती है कि पाँच क्लासिक सिफर कैसे काम करते हैं और आज इनमें से कोई भी आपकी सुरक्षा क्यों नहीं कर सकता।
सादा पाठ, कूट पाठ और कुंजियाँ
मूल संदेश सादा पाठ होता है। उसका बदला हुआ रूप कूट पाठ होता है। सिफर वह नियम है जो एक को दूसरे में बदलता है, और कुंजी वह गुप्त जानकारी है जो तय करती है कि किस तरह का बदलाव करना है।
1800 के दशक से चली आ रही एक अच्छी आदत यह मानना है कि दुश्मन सिफर की विधि जानता है और केवल कुंजी ही गुप्त है। नीचे दी गई हर बात को इसी कसौटी पर परखना चाहिए: अगर किसी को पता हो कि आपने क्या किया, लेकिन आपकी कुंजी न पता हो, तो क्या वह फिर भी आपका संदेश पढ़ सकता है?
Caesar शिफ्ट: वर्णमाला को आगे खिसकाएँ
सीज़र शिफ़्ट हर अक्षर को एक तय मात्रा से आगे खिसकाता है। 3 का शिफ़्ट इस्तेमाल करने पर A को D, B को E लिखा जाता है, जबकि Z घूमकर C पर लौट आता है। रोमन लेखक स्वेटोनियस के अनुसार, जूलियस सीज़र ने सैन्य पत्रों में इसका इस्तेमाल किया था।
जगहों की संख्या ही कुंजी होती है। जिसे यह संख्या पता हो, वह अक्षरों को पीछे खिसका सकता है। समस्या यह है कि कुंजियाँ बहुत कम हैं: केवल 25 उपयोगी शिफ़्ट होते हैं। हमलावर बस उन सभी को आज़मा सकता है—यह बल-प्रयोग खोज है, जिसे हाथ से करने में एक मिनट और कंप्यूटर पर लगभग बिल्कुल समय नहीं लगता।
रोट13
रोट13 सीज़र शिफ़्ट को 13 जगहों पर स्थिर कर देता है। वर्णमाला 26 अक्षरों की होने के कारण, 13-13 जगहों के दो शिफ़्ट आपको फिर शुरुआत पर ले आते हैं। कूटबद्ध करना और कूट खोलना एक ही प्रक्रिया है। फ़ोरमों में इसका इस्तेमाल स्पॉइलर छिपाने के लिए किया जाता था, क्योंकि यह अचानक देखने से रोकता है, किसी चीज़ की असली सुरक्षा नहीं करता।
Atbash: प्रतिबिंबित वर्णमाला
Atbash वर्णमाला को अपने नीचे उल्टे क्रम में लिखता है, इसलिए A का जोड़ा Z, B का Y, C का X और इसी तरह आगे होता है। यह हिब्रू वर्णमाला से आया है और कुछ प्राचीन ग्रंथों में दिखाई देता है।
ROT13 की तरह इसमें कोई कुंजी नहीं होती और यह खुद को उलट देता है: आईने को फिर आईने में देखो और तुम अपनी जगह वापस पहुँच जाते हो। इसलिए यह ताले की बजाय एक पहेली है। जैसे ही कोई इसका पैटर्न पहचान लेता है, इससे लिखा गया हर संदेश खुल जाता है।
Affine cipher: पहले गुणा, फिर शिफ्ट
हर अक्षर को एक संख्या दो: A = 0 से Z = 25 तक। एफ़ाइन सिफ़र उस संख्या को a से गुणा करता है, उसमें b जोड़ता है और 26 पर फिर से चक्र शुरू करता है:
E(x) = (a·x + b) mod 26
a = 1 रखने पर आप फिर से साधारण सीज़र शिफ्ट पर पहुँच जाते हो। गुणा करने से पास-पास के अक्षर बहुत दूर चले जाते हैं, इसलिए संदेश ज़्यादा उलझा हुआ दिखता है।
लेकिन इसमें एक पेंच है। डिक्रिप्शन के काम करने के लिए, हर सिफ़रटेक्स्ट अक्षर ठीक एक प्लेनटेक्स्ट अक्षर से आना चाहिए। ऐसा तभी होता है जब a और 26 का कोई समान गुणनखंड न हो। इसलिए a = 3 और a = 5 काम करते हैं, लेकिन a = 2 या a = 13 काम नहीं करते, क्योंकि वे दो अलग-अलग अक्षरों को एक ही जगह भेज देंगे। a के केवल 12 मान ही मान्य हैं, और b के 26 मानों के साथ कुल 312 कुंजियाँ बनती हैं। 25 से बेहतर, लेकिन कंप्यूटर के लिए अब भी बहुत कम।
Keyword substitution: कोई भी पूरी तरह अलग क्रम
हर अक्षर को किसी नियम से आगे क्यों खिसकाना? प्रतिस्थापन सिफ़र में कुंजी कोई भी उलटी-पुलटी वर्णमाला हो सकती है। इस उलटफेर को याद रखना आसान बनाने के लिए पहले एक कीवर्ड लिखो, दोहराए गए अक्षर हटाओ, फिर बचे हुए अक्षरों को क्रम से जोड़ दो। कीवर्ड ZEBRAS से कुंजी वर्णमाला ZEBRASCDFGHIJKLMNOPQTUVWXY बनती है, इसलिए A, Z में बदल जाता है, B, E में, C, B में और इसी तरह आगे।
संभव उलटफेरों की संख्या 26 फैक्टोरियल है, यानी लगभग 4 × 10²⁶। उन सभी को आज़माना असंभव जैसा है, इसलिए सदियों तक प्रतिस्थापन सिफ़र को अटूट समझा गया। लेकिन वह अटूट नहीं था।
आज इनमें से कोई भी सुरक्षित क्यों नहीं है
प्रतिस्थापन सिफ़रों की एक घातक आदत होती है: कोई अक्षर हमेशा उसी अक्षर में बदलता है। इसलिए भाषा का आकार बना रहता है। अंग्रेज़ी में E सबसे ज़्यादा दिखाई देता है, फिर T, A और O, जबकि Q और Z बहुत कम दिखाई देते हैं। इस्लामी दुनिया के विद्वानों ने लगभग नौवीं सदी में आवृत्ति विश्लेषण का वर्णन किया था: सिफ़र-पाठ में अक्षरों को गिनो, सबसे आम अक्षर को E से मिलाओ, और बाकी अक्षरों को भरने के लिए शब्दों के पैटर्न का उपयोग करो (एक अक्षर वाला शब्द शायद A या I होता है)।
लंबे संदेश बेहतर आँकड़े देते हैं, इसलिए बहुत बड़ी कुंजी-संख्या भी मदद नहीं करती। आधुनिक सिफ़रों को इस तरह बनाया जाता है कि सिफ़र-पाठ में ऐसे कोई पैटर्न दिखाई न दें, और उनकी सुरक्षा ऐसी कुंजियों पर निर्भर करती है जिन्हें अनुमान से ढूँढ़ना बहुत कठिन हो। किसी भी असली काम के लिए अच्छी तरह जाँचे गए आधुनिक उपकरणों का उपयोग करो, अपनी खुद की विधि कभी मत बनाओ।
इसे लैब में कैसे आज़माएँ
Codes & Ciphers लैब में एक घुमाने वाला कूट-चक्र और अक्षर गिनने व अनुमान जाँचने के औज़ार मिलते हैं। मुफ़्त के पहले विश्व में आगे बढ़ने का अच्छा क्रम:
- सीज़र शिफ्ट से शुरू करें और एक कूट तोड़ने की कोशिश करें।
- ROT13 में खुद को पलट देने वाला तरीका देखें, फिर Atbash आज़माएँ।
- Affine: पहले गुणा, फिर शिफ्ट में जाँचें कि कौन-से गुणक काम करते हैं।
- कीवर्ड प्रतिस्थापन में उलझी हुई कुंजी बनाएँ।
यह ऐतिहासिक कूटों का एक सरल शिक्षण मॉडल है। इसका मकसद कुंजियों और हमलों की समझ बनाना है, असली संदेशों की सुरक्षा करना नहीं।
- कुंजी से तय होता है कि अक्षर कैसे बदले जाएँगे; मान लो कि हमलावर विधि जानता है।
- Caesar में केवल 25 उपयोगी कुंजियाँ होती हैं, और ROT13 तथा Atbash में कोई गुप्त कुंजी नहीं होती।
- Affine का गुणक 26 के साथ कोई समान गुणनखंड साझा नहीं कर सकता, इसलिए 12 मान मान्य रहते हैं।
- Keyword substitution में कुंजियों की संख्या बहुत बड़ी होती है, लेकिन अक्षर-आवृत्ति विश्लेषण के सामने यह टूट जाता है।
Caesar शिफ्ट
हर अक्षर उतनी ही दूरी तक आगे बढ़ता है. लगभग 6 मिनट। मुफ़्त, कोई अकाउंट नहीं, आपके ब्राउज़र में चलता है।
इस गाइड से और मुफ़्त पाठ
Novareka पर सिमुलेशन शिक्षण मॉडल हैं, जिन्हें जानबूझकर सरल बनाया गया है। वे दिखाते हैं कि कोई विचार कैसे व्यवहार करता है; वे पेशेवर, चिकित्सीय या इंजीनियरिंग सलाह का विकल्प नहीं हैं।
पढ़ते रहें
सभी गाइड →
व्याख्या
व्याख्या
व्याख्या
