SHA-256 क्या है?
SHA-256, क्रिप्टोग्राफ़िक हैश फ़ंक्शन के SHA-2 परिवार का एक सदस्य है, जिसे NIST द्वारा मानकीकृत किया गया है। यह किसी भी लंबाई का इनपुट संदेश लेता है और एक निश्चित 256-बिट (32-बाइट) डाइजेस्ट बनाता है, जिसे यहाँ 64 हेक्साडेसिमल अक्षरों के रूप में दिखाया जाता है। एक ही इनपुट हमेशा एक ही डाइजेस्ट देता है, जबकि सिर्फ़ एक अक्षर बदलने पर भी पूरी तरह अलग आउटपुट मिलता है (इसे एवलांच इफ़ेक्ट कहते हैं)। SHA-256 का इस्तेमाल TLS सर्टिफ़िकेट, डिजिटल हस्ताक्षर, ब्लॉकचेन (बिटकॉइन) और फ़ाइल-इंटीग्रिटी जाँच में व्यापक रूप से होता है।
इस कैलकुलेटर का उपयोग कैसे करें
इनपुट बॉक्स में कोई भी टेक्स्ट टाइप करें या पेस्ट करें और सबमिट करें। कैलकुलेटर आपके टेक्स्ट को UTF-8 में एनकोड करता है, SHA-256 एल्गोरिदम चलाता है, और हेक्साडेसिमल डाइजेस्ट के साथ-साथ इनपुट की बाइट लंबाई भी लौटाता है। खाली इनपुट भी मान्य है और यह जाना-पहचाना खाली-स्ट्रिंग डाइजेस्ट बनाता है।
फ़ॉर्मूला की व्याख्या
$$\text{Hash} = \operatorname{SHA\text{-}256}\!\left(\text{Input Text}\right)$$
SHA-256 संदेश में पैडिंग जोड़ता है ताकि उसकी लंबाई 512 बिट का गुणक बन जाए, फिर इसे 512-बिट ब्लॉकों में बाँटता है और हर ब्लॉक को 64 राउंड की बिटवाइज़ क्रियाओं (रोटेशन, शिफ़्ट, AND/XOR, मॉड्यूलर जोड़) से गुज़ारता है, जिसमें आठ 32-बिट वर्किंग वैरिएबल मिलाए जाते हैं — ये वैरिएबल अभाज्य संख्याओं के वर्गमूल के दशमलव भागों से शुरू होते हैं। हर ब्लॉक के बाद ये आठ रजिस्टर चलते-फिरते हैश स्टेट में वापस जोड़े जाते हैं; इन्हें जोड़ने पर अंतिम 256-बिट डाइजेस्ट तैयार होता है।
हल किया गया उदाहरण
इनपुट abc (3 बाइट) का डाइजेस्ट ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad होता है। खाली स्ट्रिंग का डाइजेस्ट e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 होता है — यह एक मानक टेस्ट वेक्टर है।
अक्सर पूछे जाने वाले सवाल
क्या SHA-256 को उलटा (रिवर्स) किया जा सकता है? नहीं। यह एक तरफ़ा (वन-वे) फ़ंक्शन है; डाइजेस्ट से मूल इनपुट वापस नहीं निकाला जा सकता।
मेरी बाइट संख्या अक्षरों की संख्या से ज़्यादा क्यों है? गैर-ASCII अक्षर (एक्सेंट, इमोजी, चीनी/जापानी/कोरियाई वर्ण) UTF-8 में कई बाइट लेते हैं, इसलिए बाइट लंबाई अक्षरों की संख्या से ज़्यादा हो सकती है।
क्या SHA-256 आज भी सुरक्षित है? हाँ। आज तक SHA-256 के ख़िलाफ़ कोई व्यावहारिक कोलिज़न या प्रीइमेज हमला नहीं है; यह आम इस्तेमाल के लिए अनुशंसित हैश बना हुआ है।