निजी कुंजी एन्क्रिप्शन प्रोटोकॉल में कुंजी का आदान-प्रदान कैसे किया जाता है?


12

Windows NT एक बिंदु से बिंदु प्रोटोकॉल जहां एक ग्राहक "सुरक्षित रूप से" एक सर्वर के साथ कुछ कुंजी वाले संदेशों की एक सरणी एन्क्रिप्ट करने के लिए एक स्ट्रीम सिफर का उपयोग करके संवाद कर सकते हैं इस्तेमाल किया । सर्वर भी एक ही कुंजी के साथ अपने जवाब को एन्क्रिप्ट । लेकिन यह इस कुंजी के बारे में कैसे पता है?कश्मीरkk

अधिक सामान्य: यदि ऐलिस और बॉब कुछ एन्क्रिप्शन / डिक्रिप्शन एल्गोरिथ्म का उपयोग करते हैं जो एक ही निजी कुंजी पर संचालित होता है , तो इस कुंजी का आदान-प्रदान करने का एक सुरक्षित तरीका क्या है? (एक अलग कुंजीकोर्स का उपयोग किए बिना)k

यह कुछ ऐसा है जिसे मैंने हमेशा निजी कुंजी क्रिप्टोग्राफी का अध्ययन करने के लिए खुद से पूछा है।


जवाबों:


6

अधिकांश निजी कुंजी एल्गोरिदम वर्तमान कंप्यूटिंग बुनियादी ढांचे को देखते हुए अपने प्रमुख कारकों में एक संख्या के गुणन की तरह कुछ संगणनाओं की व्यवहार्यता पर निर्भर करते हैं।

इसी समय, एन्क्रिप्शन और डिक्रिप्शन के लिए उपयोग किए जाने पर उनमें से अधिकांश कम्प्यूटेशनल रूप से गहन भी होते हैं और इसलिए निजी कुंजी का उपयोग करके संपूर्ण संदेश स्ट्रीम को एन्क्रिप्ट नहीं किया जाता है। बल्कि, संदेश को कुछ अन्य (कम गहन) एल्गोरिदम का उपयोग करके एन्क्रिप्ट किया गया है और उस एन्क्रिप्शन के लिए उपयोग की जाने वाली कुंजी को निजी कुंजी का उपयोग करके एन्क्रिप्ट किया गया है।

बेशक, जैसा कि आप बताते हैं, चाबियों का सुरक्षित आदान-प्रदान एक मुद्दा है जो कुछ हद तक हो सकता है:

  • डिफी-हेलमैन की एक्सचेंज : सुरक्षित रूप से विनिमय कुंजी के लिए मॉड्यूलर अर्थमेटिक का उपयोग करता है।
  • एकल / एकाधिक कुंजी वितरण केंद्र (KDC) : विश्वसनीय तृतीय पक्ष आधारित टिकटिंग प्रणाली का उपयोग करता है।
  • केर्बरोस ऑथेंटिकेशन प्रोटोकॉल : केडीसी पर आधारित एक अपेक्षाकृत जटिल प्रोटोकॉल।

7

जब भी ऐलिस और बॉब एक ​​ही निजी कुंजी पर सहमत होना चाहते हैं, तो सबसे लोकप्रिय तरीका डिफी-हेलमैन का उपयोग करना है । यह निम्नानुसार काम करता है:

  1. दो सार्वजनिक मान पहले चुने गए हैं जो और g = 17 कहते हैं । (ये आमतौर पर बहुत बड़ी अभाज्य संख्याएँ हैं और उस प्रोटोकॉल का उपयोग करने वाले सभी के लिए जानी जाती हैं)।n=13g=17

  2. a=3b=7

  3. A=gamodnB=gbmodnA=12B=4AB

  4. K=BamodnK=AbmodnK=12

Kng

निजी कुंजी क्रिप्टोग्राफी में एक समस्या है-इन-द-मिडल अटैक और जो कि निजी कुंजी क्रिप्टोग्राफी पर सार्वजनिक कुंजी क्रिप्टोग्राफी चुनने के मुख्य कारणों में से एक है।


5

सबसे पहले, शब्दावली का एक बिंदु: आप जो वर्णन करते हैं वह सममित एन्क्रिप्शन है , और एक कुंजी जिसे प्रतिभागियों के बीच साझा किया जाता है, आमतौर पर एक गुप्त कुंजी के रूप में जाना जाता है; "निजी कुंजी" का अर्थ आमतौर पर सार्वजनिक-कुंजी क्रिप्टोग्राफी में एक कुंजी का हिस्सा होता है जिसे केवल एक प्रतिभागी जानता है।

एक गुप्त कुंजी को प्रसारित करने के दो तरीके हैं: इसे कुछ शारीरिक रूप से सुरक्षित फैशन में ले जाया जा सकता है, या इसे कुछ अन्य प्रकार के एन्क्रिप्शन, आमतौर पर सार्वजनिक-कुंजी क्रिप्टोग्राफ़ी का उपयोग करके ले जाया जा सकता है।

एक गुप्त कुंजी का आदान-प्रदान करने के तरीके हैं जिनके लिए एक गुप्त संचार चैनल की आवश्यकता नहीं है। सबसे लोकप्रिय डिफी-हेलमैन कुंजी विनिमय प्रोटोकॉल है। डिफी-हेलमैन का सिद्धांत यह है कि प्रत्येक प्रतिभागी अपनी कुंजी जोड़ी बनाता है, और एक गणितीय ऑपरेशन होता है जो एक सार्वजनिक कुंजी और एक निजी कुंजी से बड़ी संख्या का निर्माण करता है। इस गणितीय ऑपरेशन में एक बहुत ही दिलचस्प संपत्ति है: बड़ी संख्या का निर्माण ऐलिस की निजी कुंजी और बॉब की सार्वजनिक कुंजी या बॉब की निजी कुंजी और ऐलिस की सार्वजनिक कुंजी से किया जा सकता है; आपको एक ही नंबर मिलता है। इसलिए ऐलिस और बॉब अपनी सार्वजनिक कुंजी का आदान-प्रदान करते हैं, और दोनों पक्ष बड़ी संख्या में जानते हैं, जिसे बाद में एक गुप्त कुंजी के रूप में इस्तेमाल किया जा सकता है। एक eavesdropper सार्वजनिक कुंजी दोनों का पता लगा सकता है, लेकिन अकेले सार्वजनिक कुंजी से बड़ी संख्या का पता लगाना असंभव है।

डिफी-हेलमैन कुंजी विनिमय दो पक्षों को एक गुप्त विनिमय करने की अनुमति देता है, कोई फर्क नहीं पड़ता कि कौन सुन रहा है। हालांकि, यह ऐलिस को बॉब या इसके विपरीत प्रमाणित नहीं करता है। इसलिए यह एक आदमी के बीच में हमला करने के लिए उत्तरदायी है : मैलोरी ऐलिस के साथ प्रमुख आदान-प्रदान करता है (जो मानता है कि वह बॉब से बात कर रहा है) और बॉब के साथ अलग से (जो मानते हैं कि वह ऐलिस से बात कर रहा है), और इस तरह फैसला करना या कम से कम राज तो जानो।

जब हमलावर संदेशों को इंटरसेप्ट और इंजेक्ट कर सकता है, तो प्रतिभागियों को एक-दूसरे को प्रमाणित करने के लिए अधिक क्रिप्टोग्राफी की आवश्यकता होती है। (एक निष्क्रिय हमलावर प्रभावी रूप से इसका मतलब है कि अंतर्निहित परिवहन प्रोटोकॉल प्रमाणीकरण प्रदान करता है।) आसान तरीका प्रत्येक प्रतिभागी के लिए एक दूसरे की सार्वजनिक कुंजी को पहले से ही जानना है। यदि ऐलिस बॉब की सार्वजनिक कुंजी जानता है:

  • ऐलिस बॉब को उसे एक चुनौती भेजकर प्रमाणित कर सकता है: बॉब की सार्वजनिक कुंजी के साथ एन्क्रिप्ट किया गया एक यादृच्छिक मूल्य (एक नॉनस )। अगर बॉब उस मूल्य को डिक्रिप्ट कर सकता है और उसे वापस भेज सकता है, तो ऐलिस जानती है कि वह वास्तव में बॉब से बात कर रही है।
  • बॉब अपनी सार्वजनिक कुंजी के साथ हस्ताक्षरित एक संदेश भेजकर ऐलिस के साथ प्रमाणित कर सकता है। ऐलिस जाँच करने के लिए हस्ताक्षर की पुष्टि करती है कि वह वास्तव में बॉब से बात कर रही है।

ऐसे कई संस्करण हैं जो इन विधियों में से एक (या अभी तक एक और संस्करण) का एक दिशा में उपयोग करते हैं और या तो एक ही दिशा में या दूसरी दिशा में एक ही विधि या केवल एक दिशा में प्रमाणित करते हैं। उदाहरण के लिए, SSL / TLS (HTTPS, SMTPS, IMAPS, जैसे कई -s प्रोटोकॉल के लिए क्रिप्टोग्राफी परत) कई अलग-अलग सिफर संयोजन का उपयोग कर सकते हैं, और आमतौर पर क्लाइंट को सर्वर प्रमाणित करते हैं, लेकिन क्लाइंट को भी प्रमाणित कर सकते हैं। डिफी-हेलमैन इस एप्लिकेशन के लिए धीमा और बोझिल है; सार्वजनिक वितरण के साथ सबसे व्यापक एल्गोरिथ्म RSA है

बेशक, ऐलिस और बॉब एक ​​दूसरे की सार्वजनिक कुंजी को पहले से नहीं जानते होंगे। इसलिए वे इसके बजाय एक विश्वास श्रृंखला पर भरोसा करते हैं: बॉब ऐलिस को अपनी सार्वजनिक कुंजी भेजता है, एक तीसरी पार्टी के हस्ताक्षरित बयान के साथ जो पुष्टि करता है कि यह कुंजी वास्तव में बॉब की सार्वजनिक कुंजी है। इस हस्ताक्षरित बयान को प्रमाणपत्र कहा जाता है और तीसरा पक्ष प्रमाणपत्र प्राधिकारी है । तीसरे पक्ष को बॉब के लिए जाना जा सकता है, या इसकी पहचान की पुष्टि एक चौथे पक्ष द्वारा की जा सकती है, और इसी तरह। आखिरकार विश्वास की यह श्रृंखला (… चार्ली के लिए डोमिनिक वाउच के लिए वाउच जो बॉब के लिए वाउच करता है) को कुछ पार्टी रॉन तक पहुंचना चाहिए जो बॉब पहले से ही भरोसा करते हैं, जिसका अर्थ है कि बॉब के पास रॉन की सार्वजनिक कुंजी है और रॉन को केवल वैध प्रमाण पत्र पर हस्ताक्षर करने के लिए भरोसा है।

ऐसे प्रोटोकॉल हैं जो सार्वजनिक-कुंजी क्रिप्टोग्राफी पर भरोसा नहीं करते हैं। विशेष रूप से, Kerberos प्रोटोकॉल का उपयोग क्लाइंट और सर्वर के बीच संबंध स्थापित करने के लिए यूनिक्स-आधारित और विंडोज-आधारित नेटवर्क दोनों में किया जाता है। Kerberos एक केंद्रीय प्रमाणीकरण सर्वर का उपयोग करता है जिसे कुंजी वितरण केंद्र (KDC) कहा जाता है । KDC के पास उपयोगकर्ता का पासवर्ड डेटाबेस में संग्रहित होना चाहिए, और क्लाइंट आमतौर पर पासवर्ड के लिए उपयोगकर्ता को संकेत देता है। पासवर्ड को उजागर करने से बचने के लिए, प्रोटोकॉल सीधे पासवर्ड का उपयोग नहीं करता है, लेकिन एक क्रिप्टोग्राफिक हैश या अधिक आम तौर पर पासवर्ड के लिए लागू एक प्रमुख व्युत्पन्न फ़ंक्शन है।

इस साझा रहस्य के साथ, क्लाइंट और केडीसी एक सुरक्षित चैनल स्थापित करते हैं और केडीसी क्लाइंट को "टिकट" भेजता है। टिकट में एक सत्र कुंजी (यानी एक नवनिर्मित गुप्त कुंजी) होती है, साथ ही उस कुंजी की एक प्रति भी होती है जिसे KDC और सर्वर के बीच साझा की गई एक अन्य सममित कुंजी के साथ एन्क्रिप्ट किया जाता है जिसे ग्राहक संपर्क करना चाहता है। क्लाइंट तब इस एन्क्रिप्टेड कॉपी को सर्वर पर फॉरवर्ड करता है। सर्वर सत्र कुंजी प्राप्त करने के लिए इस संदेश को डिक्रिप्ट करता है, और एक गैर बनाता है कि यह सत्र कुंजी के साथ एन्क्रिप्ट करता है और क्लाइंट को वापस भेजता है। क्लाइंट तब सर्वर के साथ एक सुरक्षित चैनल शुरू करता है, सत्र कुंजी के साथ एन्क्रिप्ट किया गया है, और यह दिखाते हुए शुरू होता है कि यह नॉनस को डिक्रिप्ट कर सकता है: यह क्लाइंट को सर्वर को प्रमाणित करता है। एक केर्बरोस सत्र की स्थापना नीडम-श्रोएडर प्रोटोकॉल का एक प्रकार है ।

Ographers इस अर्थ में कि क्रिप्टोग्राफर्स ने बहुत कोशिश की है, लेकिन जिस तरह से उन्होंने ऐसा करने के लिए पाया है, उसके लिए कंप्यूटिंग शक्ति की एक अविश्वसनीय राशि की आवश्यकता होती है।


3

निजी कुंजी का आदान - प्रदान करने के लिए सार्वजनिक-कुंजी क्रिप्टोग्राफी का उपयोग करने का एक संभावित तरीका है । हालांकि, जब यह संभव नहीं है, तो कुछ विशिष्ट कुंजी विनिमय प्रोटोकॉल हैं, शायद सबसे अच्छी तरह से ज्ञात डिफी-हेलमैन प्रोटोकॉल है


3

हमेशा तुच्छ समाधान होता है: उपयोगकर्ता मिलते हैं और चाबियाँ बदलते हैं। यह कई मामलों के लिए बहुत व्यावहारिक नहीं है, लेकिन संभव है।

डिफी-हेलमैन (डीएच) की-एक्सचेंज प्रोटोकॉल के अलावा, क्वांटम कुंजी वितरण प्रोटोकॉल भी हैं। सबसे प्रसिद्ध QKD प्रोटोकॉल में से एक बेनेट- ब्रासर्ड प्रोटोकॉल, BB84 है

P=NP

दूसरी तरफ, MITM हमला BB84 के लिए एक समस्या है, और एक को यह मान लेना चाहिए कि उपयोगकर्ताओं को इस समस्या को दूर करने के लिए प्रमाणित चैनल का उपयोग करना चाहिए (लेकिन इसके लिए उन्हें प्रमाणीकरण कुंजी को फिर से निर्धारित करने की आवश्यकता होती है, और हम एक वर्ग में वापस आ जाते हैं)।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.