SHA-256 (सुरक्षित हैश एल्गोरिदम 256-बिट) एक क्रिप्टोग्राफिक हैश फ़ंक्शन है जो एक विभिन्न आकार के इनपुट डेटा से एक निश्चित-साइज़ 256-बिट (32-बाइट) हैश मान उत्पन्न करता है। यहाँ इसके काम करने का एक सरलीकृत विवरण है:
1. इनपुट पैडिंग: इनपुट संदेश को पैड किया जाता है ताकि इसकी लंबाई 512 बिट (64 बाइट) के गुणक हो, जैसा कि एल्गोरिदम द्वारा आवश्यक होता है।
2. प्रारंभीकरण: SHA-256 विशिष्ट स्थिरांकों (के रूप में हैश मान) के लिए आठ 32-बिट चर आरंभ करता है। इन हैश मानों का उपयोग इनपुट संदेश के ब्लॉक्स की प्रोसेसिंग के लिए निष्कर्षण कार्य के लिए किया जाता है।
3. ब्लॉक्स की प्रोसेसिंग: पैडेड संदेश को 512-बिट ब्लॉक्स में विभाजित किया जाता है। प्रत्येक ब्लॉक एक अनुक्रमणिका का हिस्सा होता है, जो एक निश्चित-साइज़ बफर (512 बिट) पर संचालित करने वाले एक दबाव संक्षेपण कार्य का उपयोग करता है और हैश मानों को अद्यतन करता है।
4. संक्षेपण कार्य: प्रत्येक ब्लॉक के लिए, संक्षेपण कार्य कर्रेंट हैश मानों को ब्लॉक डेटा के साथ मिलाता है और कई राउंड के संचालन में। इसमें बिटवाइज़ ऑपरेशन (जैसे कि AND, OR, XOR), जोड़ने में 2^32 अवशिष्टि, और चक्रवृद्धि शामिल है।
5. अंतिम हैश मान:सभी ब्लॉक्स को प्रोसेस करने के बाद, अंतिम हैश मान वह हैश मान से प्राप्त किया गया है जिसे प्रक्रिया के दौरान स्थायी रूप से अद्यतन किया गया है। यह अंतिम हैश मान एक 256-बिट आउटपुट है जो मूल इनपुट संदेश को अद्वितीय रूप से प्रतिष्ठित करता है।
SHA-256 कंप्यूटेशनली दक्ष होने के लिए डिज़ाइन किया गया है जबकि यह समान हैश मान प्राप्त करते हैं जहां दो विभिन्न इनपुट्स से उच्च सुरक्षा प्रदान करता है और प्री-इमेज हमलों (एक निर्दिष्ट आउटपुट के लिए हैशिंग एक इनपुट खोजना)। इसे डिजिटल साक्षात्कार, संदेश प्रमाणीकरण कोड (MACs), और विभिन्न सुरक्षा प्रोटोकॉल्स में व्यापक रूप से उपयोग किया जाता है।