सबसे पहले, न तो SHA-1 और SHA-2 से संबंधित कुछ भी एक "एन्क्रिप्शन" एल्गोरिदम है। वे हैश फ़ंक्शन हैं। एसएसएल में, हैश फ़ंक्शन अधिकतर अखंडता के लिए उपयोग किए जाते हैं, गोपनीयता नहीं, HMAC निर्माण के माध्यम से। एक हैश फ़ंक्शन मनमानी लंबाई का इनपुट लेता है, और एक निश्चित लंबाई के साथ आउटपुट उत्पन्न करता है, जो इनपुट डेटा का "पाचन" होता है; ऑपरेशन का मतलब उलटा नहीं है।
एक हैश फ़ंक्शन "सार्वजनिक" है: कोई गोपनीय डेटा नहीं है, कोई कुंजी नहीं है; सभी किसी दिए गए इनपुट पर हैश फ़ंक्शन आउटपुट की गणना कर सकते हैं। एक "संदेश प्रमाणीकरण कोड" (मैक) एक प्रकार का "कीड हैश" है: प्रक्रिया में एक गुप्त कुंजी (यानी बिट्स का मनमाने ढंग से गुच्छा) भी इनपुट है, ताकि कुंजी का ज्ञान आवश्यक हो (पुन:) गणना मैक आउटपुट। इसका उपयोग अखंडता जांच के लिए किया जाता है (प्रेषक मैक की गणना करने के लिए कुंजी का उपयोग करता है, रिसीवर मैक को पुन: सम्मिलित करने के लिए कुंजी का उपयोग करता है; यदि मैक मैचों से मेल खाता है, तो डेटा सही है, क्योंकि एक हमलावर, कुंजी को नहीं जानता, हो सकता है डेटा बदल दिया और परिवर्तित डेटा पर एक मान्य मैक गणना की)।
एचएमएसी एक ऐसा निर्माण है जो एक हैश फ़ंक्शन (जैसे SHA-1) को मैक में बदल देता है। टीएलएस (यह एसएसएल का वर्तमान, मानक नाम है) एचएमएसी का उपयोग करता है। एचएमएसी का उत्पादन, जब किसी दिए गए हैश फ़ंक्शन एच के साथ उपयोग किया जाता है, तो एच के आउटपुट की तुलना में समान आकार होता है। उस आउटपुट को पारंपरिक रूप से छोटा कर दिया जा सकता है: एचएमएसी/एसएचए -1 नाममात्र रूप से 160-बिट आउटपुट का उत्पादन करता है, लेकिन कुछ प्रोटोकॉल में, यह केवल 96 बिट्स रखने के लिए प्रथागत है। एसएसएल में इस तरह की छंटनी नहीं होती है।
FIPS 180-3 मानक क्रमश: 160, 224, 256, 384 और 512 बिट्स की आउटपुट लंबाई के साथ SHA-1, SHA-224, SHA-256, SHA-384 और SHA-512 नामक पांच हैश फ़ंक्शंस को परिभाषित करता है। SHA-224, SHA-256, SHA-384 और SHA-512 फ़ंक्शंस को "SHA-2" के रूप में जाना जाता है, इसलिए "SHA-2" एक कार्य नहीं है, लेकिन चार हैश फ़ंक्शन का एक परिवार है।
TLS विनिर्देश सिफर सूट परिभाषित करता है। एक सिफर सूट क्रिप्टोग्राफिक एल्गोरिदम का एक सेट है जो क्लाइंट और सर्वर कनेक्शन के प्रारंभिक चरण ("हैंडशेक") के दौरान सहमत होता है। एल्गोरिदम के बीच डेटा अखंडता सुनिश्चित करने के लिए उपयोग करने के लिए मैक है। कुछ मानक सिफर सुइट्स निर्दिष्ट करते हैं कि मैक "एसएचए -256 के साथ एचएमएसी" होगा, यानी कुछ ऐसा जो SHA-2 कार्यों में से एक का उपयोग करता है।
तो आपके प्रश्न का उत्तर यह है: "केवल ग्राहक और सर्वर को एचएमएसी/एसएचए -256 के साथ सिफर स्वीट्स में से एक का उपयोग करने के लिए कॉन्फ़िगर करें"। यदि आपका एसएसएल कार्यान्वयन ऐसे सिफर सुइट्स का समर्थन नहीं करता है, तो आपको इसे संशोधित करना होगा, जो एसएसएल काम करता है, इस बारे में पूरी तरह से समझ में आता है; पूर्ण आरएफसी 5246 को पढ़ना और समझना आवश्यक होगा।
कौन सा SHA-2 एल्गोरिथ्म आप में रुचि रखते हैं के लिए काम करता है? –
यह वास्तव में तब तक कोई फर्क नहीं पड़ता जब तक यह एक SHA-2 एल्गोरिदम है :) सम्मान – Hellnar
एसएसएल के साथ इसका क्या संबंध है? –