एफ़ाइन सिफर
E(x) = (ax + b) mod 26 से एनकोड और डिकोड करें। a और b दर्ज करें, और उपकरण जाँचता है कि a को पलटा जा सकता है, उसका मॉड्यूलर प्रतिलोम खोजता है और हर अक्षर की गणना करके दिखाता है; यदि आपको कुंजी नहीं पता, तो डिकोड मोड सभी 312 को आज़माता है और उन्हें इस आधार पर क्रमबद्ध करता है कि परिणाम कितने अंग्रेज़ी जैसे दिखते हैं।
26 के साथ कोई सार्व गुणनखंड नहीं होना चाहिए — नीचे के 12 मानों में से एक चुनें।
कोई भी पूर्ण संख्या; उसे mod 26 में लिया जाता है।
इस कुंजी की गणना
एनकोडिंग: E(x) = (5x + 8) mod 26
डिकोडिंग: D(y) = 21(y − 8) mod 26
21, 5 का प्रतिलोम है क्योंकि 5 × 21 = 105, जो 26 के किसी गुणज से 1 अधिक है।
हर मान्य a और उसका प्रतिलोम
| a | 1 | 3 | 5 | 7 | 9 | 11 | 15 | 17 | 19 | 21 | 23 | 25 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| a⁻¹ | 1 | 9 | 21 | 15 | 3 | 19 | 7 | 23 | 11 | 5 | 17 | 25 |
अक्षर-दर-अक्षर — पहले 12 अक्षर
| अक्षर | x | a·x + b | mod 26 | परिणाम |
|---|---|---|---|---|
| A | 0 | 8 | 8 | I |
| F | 5 | 33 | 7 | H |
| F | 5 | 33 | 7 | H |
| I | 8 | 48 | 22 | W |
| N | 13 | 73 | 21 | V |
| E | 4 | 28 | 2 | C |
| C | 2 | 18 | 18 | S |
| I | 8 | 48 | 22 | W |
| P | 15 | 83 | 5 | F |
| H | 7 | 43 | 17 | R |
| E | 4 | 28 | 2 | C |
| R | 17 | 93 | 15 | P |
एफ़ाइन सिफर का उपयोग कैसे करें
- 1. मोड चुनें और अपना पाठ दर्ज करें। एनकोड सादे पाठ को सिफर पाठ में बदलता है; डिकोड उसे पलटता है।
- 2. कुंजी तय करें। a, यानी गुणक, और b, यानी शिफ्ट, दर्ज करें। a फ़ील्ड के नीचे सूचीबद्ध 12 मानों में से एक होना चाहिए — उसे इस्तेमाल करने के लिए किसी एक पर क्लिक करें। b कोई भी पूर्ण संख्या हो सकती है; उसे mod 26 में घटा दिया जाता है।
- 3. गणना पढ़ें। परिणाम के नीचे का पैनल आपकी कुंजी के दोनों सूत्र, a का प्रतिलोम और हर अक्षर का अंकगणित देता है।
- 4. कुंजी नहीं है? सभी आज़माएँ। डिकोड मोड में सभी 312 कुंजियाँ आज़माएँ पर टिक करें। परिणाम इस आधार पर क्रमबद्ध होते हैं कि उनके अक्षरों की गिनती अंग्रेज़ी से कितनी मिलती है, और यह कुंजी इस्तेमाल करें उनमें से किसी को भी लोड कर देता है।
एफ़ाइन सिफर का सूत्र
अक्षरों को शून्य से क्रमांकित करें: A = 0, B = 1 … Z = 25। किसी अक्षर x को एनकोड करने के लिए उसे a से गुणा करें, b जोड़ें और 26 से भाग देने के बाद बचा शेषफल रखें: E(x) = (a·x + b) mod 26। किसी अक्षर y को डिकोड करने के लिए उन चरणों को उलटे क्रम में पलटें — b घटाएँ, फिर a⁻¹ से गुणा करें, जो a का मॉड्यूलर प्रतिलोम है: D(y) = a⁻¹·(y − b) mod 26। प्रतिलोम वह संख्या है जिसे a से गुणा करने पर शेषफल 1 बचता है। a = 5 के लिए यह 21 है, क्योंकि 5 × 21 = 105 = 4 × 26 + 1।
a के केवल 12 मान ही क्यों काम करते हैं
a से गुणा कभी भी दो अक्षरों को एक ही जगह नहीं भेजना चाहिए, वरना डिकोडिंग के दो उत्तर होंगे। ऐसा तब होता है जब a का 26 = 2 × 13 से कोई सार्व गुणनखंड हो। उदाहरण के लिए a = 2 के साथ A (0) और N (13) दोनों b पर पहुँचते हैं, क्योंकि 2 × 13 = 26, जो mod 26 में 0 है। इसलिए a विषम होना चाहिए और 13 नहीं होना चाहिए, जिससे नीचे की बारह संख्याएँ बचती हैं — ठीक वही जिनका mod 26 में प्रतिलोम होता है। b के 26 विकल्पों के साथ, इससे 12 × 26 = 312 कुंजियाँ बनती हैं, जिनमें से एक (a = 1, b = 0) कुछ नहीं बदलती।
| a | 1 | 3 | 5 | 7 | 9 | 11 | 15 | 17 | 19 | 21 | 23 | 25 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| a⁻¹ | 1 | 9 | 21 | 15 | 3 | 19 | 7 | 23 | 11 | 5 | 17 | 25 |
हल किया गया उदाहरण: a = 5, b = 8
a = 5 और b = 8 के साथ AFFINE CIPHER एनकोड होकर IHHWVC SWFRCP बनता है — यह उपकरण का नमूना है। AFFINE के अक्षर, चरण-दर-चरण:
| अक्षर | x | 5x + 8 | mod 26 | परिणाम |
|---|---|---|---|---|
| A | 0 | 8 | 8 | I |
| F | 5 | 33 | 7 | H |
| I | 8 | 48 | 22 | W |
| N | 13 | 73 | 21 | V |
| E | 4 | 28 | 2 | C |
डिकोड करने के लिए उपकरण a⁻¹ = 21 से गुणा करता है। I (8) बनता है 21 × (8 − 8) = 0, यानी A; H (7) बनता है 21 × (7 − 8) = −21, जो mod 26 में 5 है, यानी F। इस चरण पर ऋणात्मक मान सामान्य हैं — mod 26 का बस यह अर्थ है कि संख्या के 0 से 25 के बीच आने तक 26 जोड़ते या घटाते जाएँ।
दो जाने-पहचाने सिफर वेश बदले हुए एफ़ाइन सिफर हैं। a = 1 के साथ सूत्र x + b है, यानी b का सीज़र शिफ्ट; a = 25 और b = 25 के साथ यह एटबैश सिफर है, यानी उलटी पढ़ी गई वर्णमाला।
एफ़ाइन सिफर को कैसे तोड़ें
केवल 311 ऐसी कुंजियों के साथ जो कुछ बदलती हैं, सबसे सीधा हमला सभी को आज़माना है, जो ब्रूट-फ़ोर्स विकल्प एक सेकंड के अंश में कर देता है। कठिन हिस्सा सही उत्तर को पहचानना है, इसलिए उपकरण हर परिणाम को उसके अक्षरों की गिनती की सामान्य अंग्रेज़ी से काई-वर्ग तुलना के आधार पर क्रमबद्ध करता है। एक या उससे अधिक वाक्य पर सही कुंजी सबसे ऊपर आती है; छोटे वाक्यांश पर शायद न आए — अकेले IHHWVC SWFRCP के लिए असली कुंजी (5, 8) चौथे स्थान पर आती है — इसलिए पहली पंक्ति पर भरोसा करने के बजाय सूची में नीचे तक पढ़ें।
क्रिप्टविश्लेषक बीजगणित से बेहतर कर सकते हैं। एफ़ाइन सिफर एक एकल-वर्णमालीय प्रतिस्थापन है — हर अक्षर हमेशा उसी अक्षर में बदलता है — इसलिए आवृत्ति विश्लेषण सुझाता है कि कौन-से सिफर अक्षर E और T का प्रतिनिधित्व करते हैं, और ऐसे दो अनुमान दो समीकरण देते हैं। ऊपर की कुंजी के तहत E (4) बनता है C (2) और T (19) बनता है Z (25), इसलिए 4a + b ≡ 2 और 19a + b ≡ 25 (mod 26)। पहले को दूसरे में से घटाने पर 15a ≡ 23 मिलता है; 15 के प्रतिलोम 7 से गुणा करने पर a ≡ 161 ≡ 5 मिलता है, और फिर b ≡ 2 − 20 ≡ 8। ज्ञात सादे पाठ के दो अक्षर पूरी कुंजी को पुनः प्राप्त कर लेते हैं।
अक्सर पूछे जाने वाले प्रश्न
- एफ़ाइन सिफर क्या है?
- एक प्रतिस्थापन सिफर जो हर अक्षर की संख्या x को (a·x + b) mod 26 में बदल देता है, यानी हर अक्षर को a से गुणा किया जाता है और फिर b से शिफ्ट किया जाता है। कुंजी जोड़ी (a, b) है। क्योंकि कोई एक अक्षर हमेशा उसी सिफर अक्षर में बदलता है, यह एकल-वर्णमालीय है — सीज़र सिफर का देखने में अधिक मज़बूत रिश्तेदार, और तोड़ने में उससे कठिन नहीं।
- a का 26 के साथ सहअभाज्य होना क्यों ज़रूरी है?
- डिकोडिंग a के प्रतिलोम से mod 26 में गुणा करती है, और वह प्रतिलोम तभी मौजूद होता है जब a और 26 का कोई सार्व गुणनखंड न हो। यदि हो, तो दो अलग अक्षर एक ही अक्षर में एनकोड होते हैं और संदेश को निश्चितता से वापस नहीं पढ़ा जा सकता। यह हर सम संख्या और 13 को बाहर कर देता है, और 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 तथा 25 बचते हैं।
- मैं a का मॉड्यूलर प्रतिलोम कैसे खोजूँ?
- 1 से 25 के बीच वह संख्या खोजें जिसे a से गुणा करने पर 26 से भाग देने के बाद शेषफल 1 बचे। a = 7 के लिए यह 15 है, क्योंकि 7 × 15 = 105 = 4 × 26 + 1। केवल बारह स्थितियों के साथ ऊपर की तालिका से पढ़ लेना सबसे तेज़ है; बड़े मॉड्यूलस के लिए विस्तारित यूक्लिडीय एल्गोरिदम सीधे प्रतिलोम खोज देता है।
- एफ़ाइन सिफर में कितनी कुंजियाँ होती हैं?
- 312 — a के बारह विकल्प गुणा b के 26 विकल्प। उनमें से एक, a = 1 और b = 0, पाठ को अपरिवर्तित छोड़ती है, इसलिए 311 वास्तव में एनकोड करती हैं। यह इतनी कम हैं कि हर कुंजी हाथ से एक दोपहर में आज़माई जा सकती है, और कंप्यूटर से पल भर में।
- क्या सीज़र सिफर एक प्रकार का एफ़ाइन सिफर है?
- हाँ। a = 1 रखने पर सूत्र x + b हो जाता है, जो b का सीज़र शिफ्ट है; ROT13 है a = 1, b = 13। एटबैश भी एफ़ाइन है, a = 25 और b = 25 के साथ। दोनों उन 312 कुंजियों में हैं जिन्हें ब्रूट-फ़ोर्स आज़माता है।
- क्या एफ़ाइन सिफर सुरक्षित है?
- नहीं। यह ब्रूट-फ़ोर्स, आवृत्ति विश्लेषण, और ज्ञात सादे पाठ के केवल दो अक्षरों तक से टूट जाता है, जैसा ऊपर के बीजगणित से दिखता है। यह मॉड्यूलर अंकगणित का उत्कृष्ट अभ्यास है, लेकिन जो कुछ भी मायने रखता हो उसके लिए आधुनिक एन्क्रिप्शन चाहिए।