MD5, SHA-256 और अन्य हैश कैसे उत्पन्न करें

· 4 मिनट पढ़ने का समय

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

हैशिंग कैसे काम करती है

एक हैश फ़ंक्शन किसी भी आकार का इनपुट लेता है और एक निश्चित आकार का आउटपुट उत्पन्न करता है:

इनपुट SHA-256 हैश (पहले 16 वर्ण)
hello 2cf24dba5fb0a30e...
Hello 185f8db32271fe25...
hello! ce06092fb948d9ff...

ध्यान दें कि एक भी वर्ण बदलने (लोअरकेस h से अपरकेस H) या जोड़ने से हैश पूरी तरह से बदल जाता है। इसे avalanche effect कहते हैं।

सामान्य हैश एल्गोरिदम

एल्गोरिदम लंबाई स्थिति के लिए उपयोग
MD5 32 वर्ण टूटा हुआ (असुरक्षित) विरासत चेकसम, गैर-सुरक्षित उपयोग
SHA-1 40 वर्ण टूटा हुआ (असुरक्षित) केवल विरासत सिस्टम
SHA-256 64 वर्ण सुरक्षित फ़ाइल अखंडता, डिजिटल हस्ताक्षर
SHA-512 128 वर्ण सुरक्षित उच्च-सुरक्षा अनुप्रयोग

SHA-256 अधिकांश उपयोगों के लिए वर्तमान मानक है। MD5 और SHA-1 का उपयोग केवल विरासत सिस्टम के साथ बातचीत करने के लिए किया जाना चाहिए जिन्हें उनकी आवश्यकता है।

हैश कैसे उत्पन्न करें

  1. अपना एल्गोरिदम चुनें — MD5, SHA-1, SHA-256, SHA-384 या SHA-512 चुनें। विशिष्ट कारण के बिना SHA-256 का उपयोग करें।
  2. टेक्स्ट दर्ज करें या एक फ़ाइल आयात करें — टेक्स्ट टाइप या पेस्ट करें, या हैश करने के लिए एक फ़ाइल चुनें।
  3. हैश कॉपी करें — परिणाम एक हेक्साडेसिमल स्ट्रिंग है जिसका उपयोग सत्यापन, संग्रहण या तुलना के लिए किया जा सकता है।

व्यावहारिक उपयोग

फ़ाइल अखंडता सत्यापन — एक फ़ाइल डाउनलोड करें और आधिकारिक रूप से प्रकाशित हैश से इसके हैश की तुलना करें। यदि वे मेल खाते हैं, तो फ़ाइल प्रामाणिक है और भ्रष्ट नहीं है।

पासवर्ड संग्रहण — एप्लिकेशन पासवर्ड हैश संग्रहीत करते हैं, पासवर्ड स्वयं नहीं। जब आप लॉगिन करते हैं, तो आपका इनपुट हैश किया जाता है और संग्रहीत हैश से तुलना की जाती है।

डेटा डिडुप्लिकेशन — बाइट-दर-बाइट तुलना के बिना यह जल्दी से निर्धारित करने के लिए बड़ी फ़ाइलों को हैश करें कि वे समान हैं या नहीं।

API सुरक्षा के लिए HMAC — API अनुरोधों पर हस्ताक्षर करने और यह सुनिश्चित करने के लिए HMAC (एक गुप्त कुंजी के साथ हैश) का उपयोग करें कि वे ट्रांज़िट में बदले नहीं गए हैं।

सुझाव

अक्सर पूछे जाने वाले प्रश्न

MD5, SHA-1 और SHA-256 में क्या अंतर है?

MD5 एक 128-बिट हैश (32 हेक्स वर्ण) उत्पन्न करता है, SHA-1 160 बिट (40 वर्ण) उत्पन्न करता है और SHA-256 256 बिट (64 वर्ण) उत्पन्न करता है। MD5 और SHA-1 क्रिप्टोग्राफ़िक रूप से टूटे हुए माने जाते हैं। SHA-256 वर्तमान में सुरक्षित है और अखंडता सत्यापन और सुरक्षा के लिए अनुशंसित है।

क्या मूल डेटा प्राप्त करने के लिए हैश को उलटा जा सकता है?

नहीं। हैश फ़ंक्शन डिज़ाइन द्वारा एकतरफ़ा हैं। आप गणितीय रूप से हैश को उसके इनपुट पर वापस नहीं कर सकते। हालाँकि, सामान्य पासवर्ड प्री-कैलकुलेटेड टेबल (रेनबो टेबल) में पाए जा सकते हैं, यही वजह है कि हैशिंग से पहले पासवर्ड को सॉल्ट करना महत्वपूर्ण है।

HMAC क्या है?

HMAC (Hash-based Message Authentication Code) एक हैश फ़ंक्शन को एक गुप्त कुंजी के साथ जोड़ता है। यह डेटा की अखंडता और प्रामाणिकता दोनों को सत्यापित करता है — यह प्रमाणित करते हुए कि वे बदले नहीं गए हैं और गुप्त कुंजी जानने वाले किसी व्यक्ति द्वारा उत्पादित किए गए हैं।

क्या मेरा डेटा किसी सर्वर पर भेजा जाता है?

नहीं। सारा हैशिंग Web Crypto API के साथ आपके ब्राउज़र में चलता है। आपके टेक्स्ट और फ़ाइलें कभी आपके डिवाइस से बाहर नहीं जाते।