हैशिंग (Hashing)
हैशिंग एक क्रिप्टोग्राफिक प्रक्रिया है जिसका उपयोग कई प्रकार के इनपुट की प्रामाणिकता और अखंडता को सत्यापित करने के लिए किया जा सकता है। यह प्रमाणीकरण प्रणालियों में डेटाबेस में प्लेनटेक्स्ट पासवर्ड संग्रहीत करने से रोकने के लिए व्यापक रूप से उपयोग किया जाता है, लेकिन इसका उपयोग फ़ाइलों, दस्तावेजों और विभिन्न प्रकार के डेटा को सत्यापित करने के लिए भी किया जा सकता है। हैशिंग फंक्शन का अपर्याप्त उपयोग गंभीर डेटा उल्लंघनों का कारण बन सकता है, लेकिन संवेदनशील जानकारी को सुरक्षित करने के लिए पहली जगह में हैशिंग का उपयोग नहीं करना और भी बुरा है।
हैशिंग फंक्शन की विशेषताएं
- नॉन-रिवर्सिबल (Non-reversible): हैशिंग फंक्शन प्रतिवर्ती नहीं हैं।
- फिक्स्ड-लेंथ आउटपुट: हैशिंग फंक्शन का आउटपुट निश्चित-लंबाई का कैरेक्टर स्ट्रिंग होता है जिसे हैश वैल्यू, डाइजेस्ट या सीधे हैश के रूप में जाना जाता है।
- गुप्त रखने की आवश्यकता नहीं: इन्हें आवश्यक रूप से गुप्त रखने के लिए पूर्व-निर्धारित नहीं किया जाता क्योंकि इन्हें उनके मूल मूल्यों में वापस नहीं बदला जा सकता।
- यूनिक आउटपुट: हैशिंग फंक्शन की विशेषता यह है कि जब हैश किया जाता है, तो एक अद्वितीय इनपुट का परिणाम हमेशा समान हैश मान में होना चाहिए।
- कोलिजन (Collision): यदि दो अलग-अलग इनपुट समान हैश मान रख सकते हैं, तो इसे कोलिजन के रूप में जाना जाता है और, इस पर निर्भर करता है कि ऐसी कोलिजन खोजना कम्प्यूटेशनली कितना आसान है, हैश फंक्शन को सुरक्षा दृष्टिकोण से टूटा हुआ माना जा सकता है।
एन्क्रिप्शन (Encryption)
एन्क्रिप्शन सिंपल टेक्स्ट और अन्य डेटा को एन्कोड करने की प्रक्रिया है जिसे एकमात्र अधिकृत इकाई द्वारा एक्सेस किया जा सकता है यदि उसके पास डिक्रिप्शन कुंजी है। यह संवेदनशील जानकारी को साइबर अपराधियों द्वारा एक्सेस किए जाने से बचाएगा।
- यह आधुनिक संचार प्रणालियों में सूचना सुरक्षा प्राप्त करने की सबसे प्रभावी विधि है।
- रिसीवर के लिए एन्क्रिप्टेड संदेश पढ़ने के लिए, उसके पास एक पासवर्ड या सुरक्षा कुंजी होनी चाहिए जिसका उपयोग डिक्रिप्शन में किया जाता है।
- डेटा जिसे एन्क्रिप्ट नहीं किया गया है उसे प्लेन टेक्स्ट (Plain Text) कहा जाता है जबकि एन्क्रिप्टिंग डेटा को सिफर टेक्स्ट (Cipher Text) कहा जाता है।
- एन्क्रिप्शन की मुख्य अवधारणा अनधिकृत व्यक्ति से जानकारी को सुरक्षित करना है जो किसी संदेश से डेटा पढ़ना या प्राप्त करना चाहता है जो उनके लिए नियत नहीं था।
- एन्क्रिप्शन वेब पर या किसी दिए गए नेटवर्क के माध्यम से संदेश भेजते समय सुरक्षा में सुधार करता है।
तुलना: हैशिंग बनाम एन्क्रिप्शन
| हैशिंग | एन्क्रिप्शन |
|---|---|
| हैशिंग एक वन-वे फंक्शन (One-way Function) है जहां एक अद्वितीय मैसेज डाइजेस्ट इनपुट फ़ाइल या टेक्स्ट स्ट्रिंग से उत्पन्न होता है। कोई कुंजी उपयोग नहीं की जाती। | एन्क्रिप्शन एक टू-वे फंक्शन (Two-way Function) है जहां डेटा को एन्क्रिप्शन कुंजी का उपयोग करके स्क्रैम्बल किया जाता है और बाद में डिक्रिप्शन कुंजी का उपयोग करके अनस्क्रैम्बल किया जाता है। |
| हैशिंग का उपयोग सभी संशोधनों की पहचान करके और उसके बाद हैश आउटपुट में परिवर्तनों द्वारा सामग्री की अखंडता को सत्यापित करने के लिए किया जाता है। | एन्क्रिप्शन जानकारी की गोपनीयता और सुरक्षा बनाए रखने के मूल लक्ष्यों के लिए डेटा को एन्कोड करता है। एन्क्रिप्टेड टेक्स्ट को प्लेन टेक्स्ट में प्रतिवर्ती फंक्शन करने के लिए निजी कुंजी की आवश्यकता होती है। |
| हैशिंग में कुंजियों की कोई आवश्यकता नहीं होती। | एन्क्रिप्शन कुंजियों की सहायता से किया जाता है। सममित एन्क्रिप्शन के मामले में, केवल पब्लिक कुंजी उपयोग की जाती है। असममित एन्क्रिप्शन में, पब्लिक और प्राइवेट दोनों कुंजियों का उपयोग किया जाता है। |
| हैशिंग का उपयोग करने का उद्देश्य डेटा को सत्यापित करना है (यानी, सूचना अखंडता की रक्षा करना)। | एन्क्रिप्शन का उद्देश्य डेटा को सुरक्षित रूप से भेजना है (यानी, सूचना गोपनीयता की रक्षा करना)। |