2009-05-13 15 views
48

के बीच अंतर वेब ब्राउज़र में उपयोग किए जाने वाले https प्रोटोकॉल और SSL प्रमाणपत्र के बीच क्या अंतर है?https प्रोटोकॉल और एसएसएल प्रमाणपत्र

क्या ये दोनों क्लाइंट (ब्राउज़र) और सर्वर के बीच संचार को एन्क्रिप्ट करने के लिए उपयोग नहीं किए जाते हैं?

+0

तो मान लीजिए कि पहले से ही SSL पोर्ट (https) पर चल रहा एक वेबपैप है। आप इस वेबैप के लिए प्रमाणपत्र क्यों लेना चाहते हैं? – user32262

उत्तर

35

एक समाधान के दो टुकड़े।

https प्रोटोकॉल है जो परिभाषित करता है कि क्लाइंट और सर्वर एक सुरक्षित कनेक्शन पर कैसे बातचीत करने जा रहे हैं।

एसएसएल प्रमाणपत्र दस्तावेज है कि वे सर्वर प्रामाणिकता पर सहमत होने के लिए उपयोग करेंगे।

45

एचटीटीपीएस HTTP (हाइपरटेक्स्ट ट्रांसफर प्रोटोकॉल) प्लस एसएसएल (सिक्योर सॉकेट लेयर) है। SSL का उपयोग करने वाले किसी प्रोटोकॉल का उपयोग करने के लिए आपको प्रमाणपत्र की आवश्यकता है।

एसएसएल मनमाने ढंग से प्रोटोकॉल को सुरक्षित रूप से संवाद करने की अनुमति देता है। यह ग्राहकों को यह सुनिश्चित करने में सक्षम बनाता है कि वे वास्तव में उन सर्वर के साथ संचार कर रहे हैं, जो वे उम्मीद करते हैं, न कि मध्य-मध्य में और (बी) नेटवर्क यातायात को एन्क्रिप्ट करते हैं ताकि ग्राहक और सर्वर के अलावा अन्य पार्टियां संचार को न देख सकें।

एक SSL प्रमाणपत्र में एक सार्वजनिक कुंजी और प्रमाणपत्र जारीकर्ता शामिल है। न केवल ग्राहक सर्वर के साथ संवाद करने के लिए प्रमाण पत्र का उपयोग कर सकते हैं, ग्राहक यह सत्यापित कर सकते हैं कि प्रमाणपत्र को आधिकारिक प्रमाणपत्र प्राधिकरण द्वारा क्रिप्टोग्राफ़िक रूप से हस्ताक्षरित किया गया था। उदाहरण के लिए, यदि आपका ब्राउज़र वेरीसिगन सर्टिफिकेट अथॉरिटी पर भरोसा करता है, और वेरीसिगन मेरे एसएसएल प्रमाणपत्र पर हस्ताक्षर करता है, तो आपका ब्राउज़र निस्संदेह मेरे एसएसएल प्रमाणपत्र पर भरोसा करेगा। http://en.wikipedia.org/wiki/Transport_Layer_Security

+3

"एसएसएल का उपयोग करने वाले किसी भी प्रोटोकॉल का उपयोग करने के लिए आपको प्रमाणपत्र की आवश्यकता है।" : नहीं! जॉन वेल्डन के नीचे बहुत सटीक और जानकार उत्तर देखें। –

+0

@ जीन-फ्रैंकोइस, वास्तव में, जॉन वेल्डन का जवाब विशेष रूप से अधिक सटीक नहीं है। सबसे पहले, कड़ाई से बोलते हुए आपको * एसएसएल/टीएलएस का उपयोग करने के लिए प्रमाणपत्र की आवश्यकता नहीं है (पीएसके, केर्बेरोज और यहां तक ​​कि अज्ञात सिफर सुइट्स देखें)। दूसरा, सख्ती से बोलते हुए, "एसएसएल प्रमाणपत्र" जैसी कोई चीज़ नहीं है: एसएसएल/टीएलएस के लिए उपयोग किए जाने वाले सही गुण/एक्सटेंशन के साथ यह X.50 9 प्रमाणपत्रों में से अधिकांश समय है। इसके अतिरिक्त, एसएसएल में प्रमाण पत्र प्रमाणीकरण सर्वर तक ही सीमित नहीं हैं, इनका उपयोग ग्राहकों को प्रमाणीकृत करने के लिए भी किया जा सकता है (जब यह कॉन्फ़िगरेशन उपयोग किया जाता है)। – Bruno

+0

उपरोक्त मेरी टिप्पणी दोबारा पढ़ें। मैंने कहा नहीं, आपको प्रमाण पत्र की आवश्यकता नहीं है! मैं मानता हूं कि वे X.50 9 Certs हैं, लेकिन चूंकि अधिकांश इसे SSL प्रमाणपत्र के रूप में संदर्भित करते हैं, चलिए सरल हो जाएं और इसे कॉल करें। एक सामान्य उत्तर के लिए, जॉन वेल्डन आपके जैसा अकादमिक नहीं था लेकिन फिर भी एक अच्छा था। –

4

HTPS नए HTTPS है:

यहाँ कुछ अच्छा पढ़ने नहीं है। एचटीटीपीएस एसएसएल स्ट्रिपिंग/एमआईटीएम (बीच में आदमी) के लिए बेहद कमजोर है। एडम लैंग्ले के (गूगल) ब्लॉग शाही बैंगनी उद्धृत करने के लिए: "। HTTPS का कारण करने के लिए लोगों को प्रमाण पत्र सुरक्षा और उसके आसपास पारिस्थितिकी तंत्र मजाक भाषण देते जाता है"

समस्या यह है कि पेज पर सर्व नहीं है HTTPS। ऐसा होना चाहिए था, लेकिन जब कोई उपयोगकर्ता ब्राउज़र में होस्टनाम टाइप करता है, तो डिफ़ॉल्ट योजना HTTP है। सर्वर उपयोगकर्ताओं को HTTPS पर रीडायरेक्ट करने का प्रयास कर सकता है, लेकिन वह रीडायरेक्ट असुरक्षित है: एक एमआईटीएम हमलावर इसे फिर से लिख सकता है और उपयोगकर्ता को HTTP पर रख सकता है, पूरे समय वास्तविक साइट को धोखा दे सकता है। हमलावर अब इस पूरी तरह से अच्छी तरह से कॉन्फ़िगर और सुरक्षित वेबसाइट पर सभी यातायात को रोक सकता है।

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

एसएसएल स्ट्रिपिंग को रोकने के लिए, हमें केवल एक ही प्रोटोकॉल HTTPS बनाना होगा। हम पूरे इंटरनेट के लिए ऐसा नहीं कर सकते हैं, लेकिन हम साइट सिक्योरिटी सिक्योरिटी सिक्योरिटी (एचएसटीएस) के साथ साइट-साइट कर सकते हैं।

एचएसटीएस ब्राउज़र को एचटीटीपीएस साइटों पर एचटीटीपीएस पर हमेशा अनुरोध करने के लिए कहता है। साइटें ब्राउज़र में बनकर या हेडर विज्ञापन करके एचएसटीएस बन जाती हैं:

सख्त-परिवहन-सुरक्षा: अधिकतम आयु = 8640000; includeSubDomains

हेडर दिए गए सेकंड के लिए लागू है और सभी सबडोमेन पर भी लागू हो सकता है।हेडर को एक स्वच्छ HTTPS कनेक्शन पर प्राप्त किया जाना चाहिए।

एक बार ब्राउजर जानता है कि साइट केवल HTTPS है, उपयोगकर्ता टाइपिंग mail.google.com सुरक्षित है: प्रारंभिक अनुरोध HTTPS का उपयोग करता है और हमलावर के लिए शोषण करने के लिए कोई छेद नहीं है।

(mail.google.com और कई अन्य साइटें पहले ही क्रोम में एचएसटीएस साइट्स के रूप में बनाई गई हैं, इसलिए क्रोम के साथ HTTP पर accounts.google.com तक पहुंचना वास्तव में संभव नहीं है - मुझे उस छवि को डॉक्टर करना था! अगर आप क्रोम की अंतर्निहित एचएसटीएस सूची में शामिल होना चाहते हैं, मुझे ईमेल करें।)

एचएसटीएस मूर्खतापूर्ण गलतियों से आपको वेबमास्टर की भी रक्षा कर सकता है। आइए मान लें कि आपने अपनी मां को बताया है कि उसे हमेशा अपनी बैंकिंग साइट पर जाने से पहले https: // टाइप करना चाहिए या शायद आप उसके लिए एक बुकमार्क सेट अप करें। यह हमारे उपयोगकर्ताओं की अपेक्षा से ईमानदारी से अधिक है, या चाहिए। लेकिन मान लीजिए कि हमारे सुपररेगेटरी उपयोगकर्ता ...]

स्टैक ओवरफ्लो पर नए उपयोगकर्ताओं के लिए बाधा/बहुत बेवकूफ लिंक-नियमों के कारण मैं आपको बाकी के एडम के जवाब नहीं दे सकता और आपको एडम लैंगली के ब्लॉग पर खुद को जाना होगा https://www.imperialviolet.org/2012/07/19/hope9talk.html

"एडम लैंगली Google के HTTPS सेवारत बुनियादी ढांचे और Google क्रोम के नेटवर्क स्टैक दोनों पर काम करता है।"

+1

"एचटीपीएस", क्या आपका मतलब "एचएसटीएस" था? वैसे भी "* एचटीटीपीएस एसएसएल स्ट्रिपिंग/एमआईटीएम (बीच में आदमी) के लिए बेहद कमजोर है। *" सच नहीं है। जबकि एचएसटीएस पूरे सिस्टम में स्वागत है, यह अभी भी HTTPS का उपयोग करता है। यह एचटीटीपीएस नहीं है जो एसएसएल स्ट्रिपिंग के लिए कमजोर है, इस प्रकार लोग लिंक का उपयोग करते हैं और समस्या का प्रमाण पत्र जांचते हैं। – Bruno

+0

लिंक के लिए धन्यवाद! वास्तव में एक अच्छा पढ़ा था। – zafar142003

1

HTTPS एक अनुप्रयोग परत प्रोटोकॉल है। यह डिजिटल हस्ताक्षर के माध्यम से व्यक्तिगत अनुरोधों या प्रतिक्रियाओं के अस्वीकार नहीं कर सकता है।

एसएसएल एक निम्न स्तर प्रोटोकॉल है और इसमें यह क्षमता नहीं है। एसएसएल एक परिवहन स्तर एन्क्रिप्शन है।

एचटीटीपीएस एसएसएल की तुलना में अधिक लचीला है: एक एप्लिकेशन इसकी सुरक्षा के स्तर को कॉन्फ़िगर कर सकता है। एसएसएल में कम विकल्प हैं इसलिए सेटअप और प्रशासन करना आसान है।

+1

गैर-अस्वीकृति यह सुनिश्चित करने की क्षमता को संदर्भित करती है कि किसी अनुबंध या संचार के लिए कोई पार्टी किसी दस्तावेज़ पर उनके हस्ताक्षर की प्रामाणिकता या उनके द्वारा उत्पन्न संदेश को भेजने से इनकार नहीं कर सकती है। –

संबंधित मुद्दे