हैशिंग (Hashing) एक दी गई कुंजी को कोड में व्याख्या करने की प्रक्रिया है। एक हैश फंक्शन का उपयोग डेटा को एक नए बनाए गए हैश कोड के साथ प्रतिस्थापित करने के लिए किया जा सकता है। अधिक स्पष्ट रूप से, हैशिंग एक स्ट्रिंग या इनपुट कुंजी बनाने की प्रथा है, जो कथात्मक जानकारी को बचाने के लिए बनाया गया एक चर है, और इसे एक हैश मान के साथ परिभाषित करता है, जो आमतौर पर एक एल्गोरिदम द्वारा तय किया जाता है और मूल की तुलना में बहुत छोटी स्ट्रिंग का गठन करता है।
हैश टेबल
हैश टेबल एक सूची तैयार करेगा जहां सभी मूल्य जोड़े सहेजे जाते हैं और इसके इंडेक्स के माध्यम से आसानी से एक्सेस किए जाते हैं। परिणाम डेटाबेस टेबल में कुंजी मूल्यों तक प्रभावी तरीके से पहुंचने के दृष्टिकोण के साथ-साथ एन्क्रिप्शन के माध्यम से डेटाबेस की सुरक्षा बढ़ाने की एक विधि है।
हैश एल्गोरिदम
- हैश, MD5 (मैसेज डाइजेस्ट 5) या SHA (सिक्योर हैश एल्गोरिदम) जैसे हैशिंग एल्गोरिदम का आउटपुट हैं।
- ये एल्गोरिदम मूल रूप से किसी भी दी गई जानकारी या संदेश के तत्व के लिए एक अद्वितीय, निश्चित-लंबाई स्ट्रिंग और हैश मान, या मैसेज डाइजेस्ट बनाने का लक्ष्य रखते हैं।
- चूंकि कंप्यूटर पर प्रत्येक फ़ाइल अंततः केवल डेटा है जिसे बाइनरी रूप में परिभाषित किया जा सकता है, एक हैशिंग एल्गोरिदम उस जानकारी को ले सकता है और उस पर एक जटिल गणना चला सकता है और गणना के परिणाम के रूप में एक निश्चित-लंबाई स्ट्रिंग आउटपुट कर सकता है।
- परिणाम दस्तावेज़ हैश मान या मैसेज डाइजेस्ट है।
हैशिंग के लाभ
- हैशिंग एल्गोरिदम का उपयोग करती है जो एक फ़ाइल से सूचना के ब्लॉकों को बहुत छोटे मान या निश्चित लंबाई की कुंजी में बदल देती है जो उन स्ट्रिंग्स को परिभाषित करती हैं।
- परिणामी हैश मान दिए गए फ़ाइल के अंदर प्रत्येक स्ट्रिंग का एक प्रकार का केंद्रित सारांश है, और उस फ़ाइल में जानकारी के एक व्यक्तिगत बाइट के बदलने पर भी बदलने में सक्षम होना चाहिए (एवलांच इफेक्ट)।
- यह डेटा संपीड़न के संदर्भ में हैशिंग में बड़े लाभ प्रदान करता है।
सुरक्षा में भूमिका
- हैशिंग एक क्रिप्टोग्राफिक प्रक्रिया है जिसका उपयोग कई प्रकार के इनपुट की प्रामाणिकता और अखंडता को सत्यापित करने के लिए किया जा सकता है।
- यह प्रमाणीकरण प्रणालियों में डेटाबेस में प्लेनटेक्स्ट पासवर्ड सहेजने से रोकने के लिए व्यापक रूप से उपयोग किया जाता है, लेकिन इसका उपयोग फ़ाइलों, दस्तावेजों और विभिन्न प्रकार के डेटा को सत्यापित करने के लिए भी किया जा सकता है।
- हैशिंग फंक्शन का अनुचित उपयोग गंभीर डेटा उल्लंघनों का कारण बन सकता है, लेकिन संवेदनशील जानकारी को पहली जगह में सुरक्षित करने के लिए हैशिंग का उपयोग नहीं करना और भी बदतर है।
डेटा संरचना में दक्षता
हैशिंग डेटा संरचना सरणियों को कुशलतापूर्वक जानकारी खोजने और संग्रहीत करने की अनुमति देती है, डेटा खोजने और सहेजने के लिए एक कुशल संरचना का समर्थन करती है।
मान लें कि 20,000 संख्याओं की एक सूची है और उस सूची में एक विशेष संख्या देखने के लिए कहा गया है और यह सूची में प्रत्येक संख्या को स्कैन करके देख सकता है कि क्या यह दर्ज की गई संख्या से मेल खाती है।
एल्गोरिदम कार्यप्रणाली
एक हैशिंग एल्गोरिदम विशिष्ट प्रकार और लंबाई के डेटा सरणियों को संख्यात्मक सूत्रों का उपयोग करके निश्चित लंबाई बिट स्ट्रिंग में परिवर्तित करता है। एक एल्गोरिदम जिसे हैशिंग टेबल की आवश्यकता होती है, किसी भी इनपुट को एक विश्वसनीय संदेश में बदल देता है।