एन्क्रिप्शन जानकारी को कैसे सुरक्षित रखता है, सममित और असममित कुंजियों में क्या अन्तर है, और हस्ताक्षर व प्रमाणपत्र कैसे काम आते हैं।
एन्क्रिप्शन क्या है?
एन्क्रिप्शन एक एल्गोरिदम और कुंजी की सहायता से पढ़ने योग्य जानकारी, जिसे मूलपाठ या plaintext कहते हैं, को कूटपाठ या ciphertext में बदलता है। डिक्रिप्शन उचित कुंजी से मूलपाठ वापस प्राप्त करता है।
इसका उद्देश्य गोपनीयता है: कूटपाठ मिल जाने पर भी आवश्यक गुप्त कुंजी के बिना कोई मूल जानकारी न पढ़ सके।
कल्पना कीजिए कि आप एक बन्द बक्से में पत्र भेज रहे हैं। बक्सा कई हाथों से गुजर सकता है, लेकिन सही चाबी वाला व्यक्ति ही उसे खोल सकता है। यह उपमा पहुँच को समझाती है; वास्तविक एन्क्रिप्शन गणित से डेटा बदलता है।
एन्क्रिप्शन कुंजी क्या है?
कुंजी वह मान है जो क्रिप्टोग्राफिक प्रक्रिया को नियंत्रित करता है। एल्गोरिदम सार्वजनिक हो सकता है, जबकि आवश्यक कुंजी गुप्त रहती है। सुरक्षा का आधार कुंजियों की रक्षा और सुरक्षित विधि का सही उपयोग होना चाहिए।
पासवर्ड को सामान्यतः सीधे एन्क्रिप्शन कुंजी नहीं बनाया जाता। सॉफ्टवेयर पासवर्ड-आधारित कुंजी व्युत्पत्ति फलन से उससे कुंजी बना सकता है। कमजोर पासवर्ड का अनुमान लगाया जा सकता है, भले ही मूल सिफर मजबूत हो।
सममित एन्क्रिप्शन क्या है?
सममित एन्क्रिप्शन में एन्क्रिप्ट और डिक्रिप्ट करने के लिए एक ही गुप्त कुंजी काम आती है। दोनों पक्षों को उसे सुरक्षित रखना होता है।
उदाहरण के लिए, एन्क्रिप्ट की गई आर्काइव साझा करने वाले दो लोगों को उसकी गुप्त कुंजी चाहिए। उसी असुरक्षित माध्यम से आर्काइव के साथ कुंजी भेज देने पर सुरक्षा का उद्देश्य विफल हो जाता है।
सममित एन्क्रिप्शन बड़ी मात्रा में डेटा के लिए कुशल है। AES एक प्रचलित सममित सिफर है। पूरी एन्क्रिप्शन विधि यह भी तय करती है कि सिफर और उससे जुड़े मानों का उपयोग कैसे होगा।
असममित एन्क्रिप्शन क्या है?
असममित या सार्वजनिक-कुंजी एन्क्रिप्शन में सम्बन्धित कुंजियों की एक जोड़ी होती है: सार्वजनिक कुंजी साझा की जा सकती है, जबकि निजी कुंजी गुप्त रखनी होती है।
मान लीजिए ऐलिस बॉब को एक गोपनीय सन्देश भेजना चाहती है:
- बॉब उपयुक्त कुंजी-जोड़ी बनाता है और अपनी निजी कुंजी गुप्त रखता है।
- ऐलिस उसकी सार्वजनिक कुंजी प्राप्त करती है और जाँचती है कि वह वास्तव में बॉब की ही है।
- ऐलिस उपयुक्त एन्क्रिप्शन विधि से उस सार्वजनिक कुंजी का उपयोग करती है।
- बॉब अपनी निजी कुंजी से सन्देश डिक्रिप्ट करता है।
सुरक्षित विधि और पर्याप्त कुंजी आकार होने पर सार्वजनिक कुंजी से निजी कुंजी निकालना व्यावहारिक रूप से सम्भव नहीं होना चाहिए।
पहचान की जाँच जरूरी है। हमलावर अपनी सार्वजनिक कुंजी दे दे, तो ऐलिस ऐसा सन्देश एन्क्रिप्ट कर सकती है जिसे हमलावर पढ़ सके। विश्वसनीय फिंगरप्रिन्ट या डिजिटल प्रमाणपत्र कुंजी की प्रामाणिकता जाँचने में सहायता कर सकता है।
RSA का उपयोग RSA-OAEP जैसी एन्क्रिप्शन विधियों में हो सकता है। दूसरे सार्वजनिक-कुंजी एल्गोरिदम अलग काम करते हैं: कुछ साझा रहस्य स्थापित करते हैं, कुछ हस्ताक्षर बनाते हैं। हर कुंजी-जोड़ी हर काम के लिए उपयुक्त नहीं होती।
बक्से का उदाहरण कैसे काम करता है?
मान लीजिए बॉब चाहता है कि ऐलिस उसे बक्से में एक निजी पत्र भेजे।
साझा गुप्त कुंजी होने पर ऐलिस बक्सा बन्द करती है और बॉब उसी चाबी की दूसरी प्रति से उसे खोलता है। पहले उन्हें वह कुंजी सुरक्षित रूप से साझा करनी होगी। उसकी प्रति पाने वाला कोई भी व्यक्ति बक्सा खोल सकता है।
सार्वजनिक और निजी कुंजी की जोड़ी के लिए ऐसे विशेष ताले की कल्पना कीजिए जिसमें दो अलग चाबियाँ हों। बॉब सबको उस चाबी की प्रतियाँ देता है जो केवल ताला बन्द कर सकती है। ताला खोलने वाली चाबी वह अपने पास रखता है।
ऐलिस पत्र बक्से में रखकर बॉब की सार्वजनिक बन्द करने वाली चाबी लगाती है। वह उसी चाबी से बक्सा दोबारा नहीं खोल सकती। बॉब अपनी निजी खोलने वाली चाबी से पत्र पढ़ता है।
सार्वजनिक बन्द करने वाली चाबी सार्वजनिक एन्क्रिप्शन कुंजी को दर्शाती है, और निजी खोलने वाली चाबी निजी डिक्रिप्शन कुंजी को। यह दो अलग क्षमताओं वाला काल्पनिक ताला है; साधारण दरवाजे का ताला ऐसा नहीं होता। वास्तविक एन्क्रिप्शन डेटा पर ये प्रक्रियाएँ गणित से करता है।
ऐलिस को उपयोग से पहले जाँचना होगा कि सार्वजनिक कुंजी बॉब की ही है। हमलावर की दी हुई कुंजी सन्देश को हमलावर के लिए सुरक्षित करेगी।
दोनों प्रकार साथ में क्यों काम आते हैं?
कई प्रणालियाँ सार्वजनिक-कुंजी क्रिप्टोग्राफी और सममित एन्क्रिप्शन को साथ उपयोग करती हैं।
सार्वजनिक-कुंजी विधियाँ साझा रहस्य स्थापित या सुरक्षित करती हैं, जबकि सममित एन्क्रिप्शन अधिकांश डेटा सँभालता है। इससे पहले से कोई रहस्य साझा करने की जरूरत घटती है और डेटा की सुरक्षा कुशल रहती है।
सामान्य प्रमाणपत्र-आधारित TLS 1.3 कनेक्शन में सर्वर प्रमाणपत्र और हस्ताक्षर से अपनी प्रामाणिकता सिद्ध करता है। दोनों पक्ष कुंजी-सहमति से साझा रहस्य स्थापित करते हैं, फिर सममित प्रमाणीकृत एन्क्रिप्शन से संचार सुरक्षित होता है। कुंजी-सहमति साझा रहस्य निकालती है; यह पूरी बातचीत को प्रमाणपत्र की सार्वजनिक कुंजी से एन्क्रिप्ट करके भेजना नहीं है।
क्या हस्ताक्षर करना एन्क्रिप्शन के समान है?
नहीं। एन्क्रिप्शन गोपनीयता सुरक्षित करता है। डिजिटल हस्ताक्षर से दूसरे लोग जाँच सकते हैं कि डेटा सम्बन्धित निजी कुंजी से हस्ताक्षरित हुआ था और बदला नहीं है।
हस्ताक्षरकर्ता निजी हस्ताक्षर कुंजी उपयोग करता है, और जाँचकर्ता उसकी सम्बन्धित सार्वजनिक कुंजी। हस्ताक्षर करना अलग प्रक्रिया है; इसका सामान्य अर्थ “निजी कुंजी से एन्क्रिप्ट करना” नहीं है।
NFC टैग पर हस्ताक्षरित योग्यता-विवरण सबके लिए पढ़ने योग्य रह सकता है। हस्ताक्षर उसकी प्रामाणिकता और अखण्डता सुरक्षित करता है, गोपनीयता नहीं। उसे एन्क्रिप्ट करना अलग सवाल का उत्तर होगा: विवरण कौन पढ़ सकता है?
दस्तावेज के हैश पर हस्ताक्षर कैसे होता है?
योग्यता-विवरण के साथ लगी एक छोटी फिंगरप्रिन्ट पर्ची की कल्पना कीजिए। क्रिप्टोग्राफिक हैश दस्तावेज के ठीक उसी डेटा से यह फिंगरप्रिन्ट बनाता है, जिसे डाइजेस्ट कहते हैं। हैश-और-हस्ताक्षर विधि में जारीकर्ता अपनी निजी कुंजी से डाइजेस्ट पर हस्ताक्षर करता है और दस्तावेज के साथ हस्ताक्षर भेजता है।
इस RSA PKCS#1 v1.5 उदाहरण में जाँचकर्ता सार्वजनिक कुंजी से हस्ताक्षरित डाइजेस्ट प्राप्त करता है और मिले हुए दस्तावेज का नया हैश स्वतंत्र रूप से निकालता है। दोनों हैश बिल्कुल समान होने चाहिए। दस्तावेज बदलने पर नया हैश हस्ताक्षरित डाइजेस्ट से नहीं मिलता और जाँच विफल हो जाती है।
उदाहरण के लिए “परिणाम: उत्तीर्ण” को “परिणाम: अनुत्तीर्ण” करने से डाइजेस्ट बदल जाता है। मूल डाइजेस्ट का हस्ताक्षर बदले हुए दस्तावेज की जाँच में विफल होगा। हमलावर नया हैश निकाल सकता है, लेकिन सुरक्षित हस्ताक्षर विधि में निजी कुंजी के बिना वैध नया हस्ताक्षर नहीं बना सकता।
क्या RSA जाँच में हैश बिल्कुल समान होना चाहिए?
हाँ। इस RSA PKCS#1 v1.5 उदाहरण में प्राप्त डाइजेस्ट और नए निकाले गए हैश का बिल्कुल समान होना आवश्यक है। दस्तावेज पढ़ने योग्य रहता है; हस्ताक्षर उसके डाइजेस्ट की प्रामाणिकता सिद्ध करता है। दूसरी हस्ताक्षर विधियाँ अलग तरह से जाँच करती हैं।
देखें RFC 8017, खण्ड 8.2.2।
योग्यता-विवरण पढ़ने योग्य रह सकता है। हस्ताक्षर डेटा को बदलने या उसकी प्रतिलिपि बनाने से रोकने के बजाय बदलाव का पता लगाता है। सॉफ्टवेयर सामान्यतः हस्ताक्षर और जाँच की प्रक्रियाओं के भीतर हैश निकालता है; API माँगे तभी अलग से अतिरिक्त हैश निकालें।
हैशिंग और एनकोडिंग में क्या अन्तर है?
- एनकोडिंग डेटा का रूप बदलती है ताकि उसे रखा या भेजा जा सके। Base64 बिना किसी रहस्य के उलटी की जा सकती है और गोपनीयता नहीं देती।
- हैशिंग डेटा का डाइजेस्ट बनाती है। क्रिप्टोग्राफिक हैश इस तरह बनाया जाता है कि डाइजेस्ट से मूल इनपुट निकालना और समान हैश वाले अलग इनपुट खोजना कठिन हो। यह उलटी की जा सकने वाली एन्क्रिप्शन नहीं है; अनुमान योग्य इनपुट आजमाकर जाँचे जा सकते हैं।
- एन्क्रिप्शन उचित कुंजी से उलटी करके मूल डेटा पाने के लिए बनाई जाती है।
अकेला हैश सन्देश की प्रामाणिकता सिद्ध नहीं करता: सन्देश बदल सकने वाला हमलावर उसका हैश भी बदल सकता है।
क्या एन्क्रिप्शन छेड़छाड़ का पता लगाती है?
केवल एन्क्रिप्शन से हमेशा बदलाव का पता नहीं चलता। प्रमाणीकृत एन्क्रिप्शन गोपनीयता के साथ ऐसी जाँच जोड़ती है जो बदले हुए सुरक्षित डेटा को अस्वीकार कर दे। AES-GCM और ChaCha20-Poly1305 इसके उदाहरण हैं।
इन विधियों में nonce जैसे मानों का सही उपयोग भी जरूरी है। जहाँ nonce का अनोखा होना आवश्यक है, वहाँ उसे दोहराने से सुरक्षा टूट सकती है। इन जरूरतों को सँभालने वाली नियमित रूप से अद्यतन क्रिप्टोग्राफिक लाइब्रेरी और स्थापित प्रोटोकॉल उपयोग करें।
एन्क्रिप्शन क्या सुरक्षित नहीं कर सकती?
एन्क्रिप्शन प्राप्तकर्ता को डिक्रिप्ट की गई जानकारी की प्रतिलिपि बनाने से नहीं रोक सकती। संक्रमित उपकरण, स्क्रीनशॉट या चोरी हुए खुले सत्र से उजागर मूलपाठ भी इससे नहीं बचता।
कौन किससे बात कर रहा है, कब और लगभग कितना डेटा भेज रहा है—ऐसा मेटाडेटा दिख सकता है। परिवहन एन्क्रिप्शन एक कनेक्शन सुरक्षित करती है; शुरू से अन्त तक एन्क्रिप्शन का उद्देश्य सन्देश केवल संवाद के दोनों सिरों पर पढ़ने योग्य रखना है।
जरूरी डिक्रिप्शन कुंजी खो जाए और पुनर्प्राप्ति की व्यवस्था न हो, तो डेटा वापस पाना असम्भव हो सकता है। इसलिए कुंजी का सुरक्षित भण्डारण, बैकअप और पहुँच-नियन्त्रण भी व्यवस्था का हिस्सा हैं।
जहाँ जानकारी निजी रखनी हो वहाँ एन्क्रिप्शन उपयोगी है, लेकिन उसकी सुरक्षा पूरी व्यवस्था पर निर्भर है: विधि, कुंजियाँ, उपकरण और जानकारी पढ़ने की अनुमति वाले लोग।
सन्दर्भ
हस्ताक्षर और गोपनीयता का अन्तर समझाने में मेरी पुरानी NFC दस्तावेज-प्रमाणीकरण टिप्पणियों का भी उपयोग हुआ है।
AI प्रकटीकरण: यह लेख AI (ChatGPT) की सहायता से लिखा गया है। त्रुटियों और छूटी हुई बातों की ओर ध्यान दिलाने के लिए आपका स्वागत है।





