2010-05-18 20 views
6

मैं आरएसए के बारे में क्या समझता हूं कि ऐलिस सार्वजनिक और निजी कुंजी संयोजन बना सकता है, और उसके बाद सार्वजनिक कुंजी को बॉब पर भेज सकता है। और उसके बाद बॉब सार्वजनिक कुंजी का उपयोग करके कुछ एन्क्रिप्ट कर सकता है और एलिस इसे सार्वजनिक करने के लिए सार्वजनिक और निजी कुंजी कॉम्बो का उपयोग करेगा।सार्वजनिक कुंजी क्रिप्टोग्राफी कैसे काम करता है

हालांकि, एलिस को बॉब पर कुछ भेजने के लिए कैसे एन्क्रिप्ट किया जा सकता है? बॉब इसे कैसे डिक्रिप्ट करेगा? मैं पूछता हूं क्योंकि मैं उत्सुक हूं कि जब मैं अपनी बैंकिंग साइट पर लॉग ऑन करता हूं, तो मेरा बैंक मुझे अपने ऑनलाइन विवरणों जैसे डेटा भेजता है। मेरा ब्राउजर उस जानकारी को कैसे डिक्रिप्ट करता है? मेरे पास निजी कुंजी नहीं है।

उत्तर

3

सरल, आपको एक कुंजी चाहिए।

एसएसएल/टीएलएस कनेक्शन सेटअप के दौरान एक सममित सत्र कुंजी बनाकर इस समस्या को हल करता है। सार्वजनिक कुंजी क्रिप्टोग्राफी का उपयोग इस सत्र कुंजी को स्थापित करने के लिए किया जाता है, जिसका उपयोग तब द्वि-दिशात्मक डेटा संचार के लिए किया जाता है। Read more about TLS

4

Alice will use the public and private key combo to decrypt it

ऐलिस सिर्फ उसे निजी कुंजी के साथ यह डिक्रिप्ट जाएगा।

However, how can Alice encrypt something to be sent over to Bob? How would Bob decrypt it?

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

0

इस स्थिति में, ऐलिस डेटा को एन्क्रिप्ट करने के लिए बॉब की सार्वजनिक कुंजी का उपयोग करेगा और बॉब फिर उसे अपनी निजी कुंजी से डिक्रिप्ट करेगा।

अनिवार्य रूप से, एक सार्वजनिक कुंजी डेटा को एन्क्रिप्ट करता है और एक निजी कुंजी डेटा को डिक्रिप्ट करता है। चूंकि प्रत्येक उपयोगकर्ता के पास सार्वजनिक और निजी कुंजी दोनों होती है, इसलिए आप सुरक्षित रूप से किसी भी अन्य उपयोगकर्ता को डेटा भेज सकते हैं।

0

हालांकि, एलिस को बॉब पर कुछ भेजने के लिए कैसे एन्क्रिप्ट किया जा सकता है? बॉब इसे कैसे डिक्रिप्ट करेगा? मैं पूछता हूं क्योंकि मैं उत्सुक हूं कि जब मैं अपनी बैंकिंग साइट पर लॉग ऑन करता हूं, तो मेरा बैंक मुझे अपने ऑनलाइन विवरणों जैसे डेटा भेजता है। मेरा ब्राउजर उस जानकारी को कैसे डिक्रिप्ट करता है? मेरे पास निजी कुंजी नहीं है।

यह वह जगह है जहां आप गलत हैं; आप एक निजी कुंजी है। हैंडशेकिंग प्रक्रिया के हिस्से के रूप में, प्रत्येक पक्ष दो कुंजी उत्पन्न करता है: एक सार्वजनिक कुंजी और एक निजी कुंजी। ग्राहक सर्वर पर अपनी सार्वजनिक कुंजी भेजता है, जो क्लाइंट को भेजे गए सभी डेटा को एन्क्रिप्ट करने के लिए इसका उपयोग करेगा। इसी तरह, सर्वर दोनों कुंजी उत्पन्न करता है और क्लाइंट को अपनी सार्वजनिक कुंजी भेजता है, जो सर्वर पर भेजे गए सभी डेटा को एन्क्रिप्ट करने के लिए इसका उपयोग करेगा।

कई स्थितियों में, असममित कुंजी एल्गोरिथ्म केवल आदान-प्रदान करने एक और कुंजी है, जो एक सममित एल्गोरिथ्म के लिए प्रयोग किया जाता है।

7

असल में, प्रक्रिया है:

  1. ग्राहक सर्वर से कनेक्ट और सर्वर का सुरक्षा प्रमाणपत्र के लिए पूछता है। प्रमाणपत्र में सर्वर की पहचान के बारे में सार्वजनिक कुंजी और जानकारी होती है।
  2. क्लाइंट मानना ​​सर्वर की पहचान से खुश है, यह एक यादृच्छिक संख्या पी उत्पन्न करता है और इसे सर्वर की सार्वजनिक कुंजी से एन्क्रिप्ट करता है।
  3. केवल सर्वर पी (इसकी निजी कुंजी के साथ - किसी के साथ साझा नहीं किया गया है) को डिक्रिप्ट कर सकता है, इसलिए जब ग्राहक सर्वर पर एन्क्रिप्टेड यादृच्छिक संख्या भेजता है, तो सर्वर इसे अस्वीकार करता है।
  4. क्लाइंट और सर्वर दोनों का उपयोग पी एक सममित एन्क्रिप्शन एल्गोरिथ्म में इस्तेमाल के लिए एक सममित कुंजी, ज्ञान है कि केवल क्लाइंट और सर्वर पी कुंजी उत्पन्न करने के लिए प्रयोग किया जाता का मूल्य जानते में सुरक्षित उत्पन्न करने के लिए।
0

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

प्रमाण पत्र और विश्वव्यापी पीकेआई का उपयोग महत्वपूर्ण है। आप निश्चित रूप से सुनिश्चित करना चाहते हैं कि यदि आप बैंक को अपने बैंक पिन देते हैं, तो दूसरी ओर वास्तव में आपका बैंक है और कोई अन्य व्यक्ति नहीं है। यह हल हो जाएगा, क्योंकि प्रत्येक कंप्यूटर पर अच्छी तरह से ज्ञात संगठनों (जैसे वेरीसिगन) की सार्वजनिक कुंजी की एक छोटी संख्या होती है और बैंक आपको न केवल अपने सर्वर की सार्वजनिक कुंजी भेजता है, बल्कि प्रमाण पत्र भी भेजता है। प्रमाणपत्र उदाहरण के लिए वेरीसाइन द्वारा हस्ताक्षरित एक संदेश है, जो कहता है "यह सार्वजनिक कुंजी वास्तव में बैंक XYZ से है"। इसलिए क्योंकि आपके पास वेरिसाइन की सार्वजनिक कुंजी है, आप पहले सत्यापित कर सकते हैं कि बैंक का सर्वर प्रमाणपत्र सही है। तो आप सुनिश्चित हो सकते हैं कि आप वास्तव में अपने बैंक के साथ संवाद करते हैं।

2

मैंने इसे नहीं बनाया, लेकिन किसी ने इस वीडियो को मेरे साथ साझा किया और इससे सिद्धांत को और अधिक समझ में मदद मिली। हमेशा के रूप में शैतान विवरण (कार्यान्वयन) में है।

http://www.youtube.com/watch?v=YEBfamv-_do

2
एक सामान्य टिप्पणी मैं काफी अन्य माइक्रोसॉफ्ट सी # प्रमाण पत्र के लिए तैयारी कर रहा है जबकि इस तरह के डिजिटल हस्ताक्षर और प्रमाण पत्र के रूप में PKI के तत्वों के साथ थोड़ी देर के लिए सार्वजनिक कुंजी क्रिप्टोग्राफी को समझने के लिए संघर्ष करना पड़ा पर

मैं cgi.com पर एक संक्षिप्त और विस्तृत पीडीएफ के रूप में एक स्पष्टीकरण में आया। मुझे पता है कि यह वापस पुराने एलिस और बॉब के लिए वापस आ गया है! लेकिन यह वास्तव में मेरे चित्रों और नोट्स के साथ चीजों को मंजूरी दे दी है और अंत में कुछ विचारों को उत्तेजित करने वाले प्रश्न भी हैं। निश्चित रूप से इसकी अनुशंसा करते हैं।

http://www.cgi.com/files/white-papers/cgi_whpr_35_pki_e.pdf

पर जाएं
संबंधित मुद्दे