डबल SHA-256 (SHA-256d) हैश जनरेटर
डबल SHA-256 (SHA-256d), यानी Bitcoin का हैश, निकालें: बाइनरी SHA-256 डाइजेस्ट का SHA-256। हेक्स इनपुट, उलटे बाइट क्रम का विकल्प, ब्राउज़र में चलता है।
पूरी तरह आपके ब्राउज़र में चलता है। आपका डेटा कभी अपलोड नहीं होता।
डबल SHA-256 (SHA-256d) क्या है?
डबल SHA-256, जिसे SHA-256d भी लिखा जाता है, इनपुट को SHA-256 से हैश करता है और फिर नतीजे में मिले 32-बाइट बाइनरी डाइजेस्ट को दोबारा SHA-256 से हैश करता है। Bitcoin इसे ब्लॉक हेडर, ट्रांज़ैक्शन ID, Merkle ट्री और Base58Check चेकसम के लिए इस्तेमाल करता है। यह टूल नतीजे को उलटे बाइट क्रम में भी दिखा सकता है, जिस तरह ब्लॉक एक्सप्लोरर हैश दिखाते हैं।
डबल SHA-256 (SHA-256d) का उपयोग कैसे करें
- डेटा हैश करने के लिए टेक्स्ट में दर्ज करें; Bitcoin संरचनाओं के लिए इनपुट एन्कोडिंग में हेक्स बाइट्स चुनें और सीरियलाइज़ किया हेडर या ट्रांज़ैक्शन पेस्ट करें।
- सादी स्ट्रिंग हैश करनी हो तो एन्कोडिंग को टेक्स्ट (UTF-8) पर ही रहने दें।
- ब्लॉक एक्सप्लोरर और Bitcoin Core (txid / ब्लॉक हैश) जैसा मान पाने के लिए बाइट क्रम उलटें पर टिक करें।
- आउटपुट फ़ॉर्मैट चुनें और कॉपी करें दबाएँ।
उदाहरण
Bitcoin genesis block header (Hex bytes): 0100000000000000000000000000000000000000000000000000000000000000000000003ba3edfd7a7b12b27ac72c3e67768f617fc81bc3888a51323a9fb8aa4b1e5e4a29ab5f49ffff001d1dac2b7c, Reverse byte order on
000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
यह प्रसिद्ध जेनेसिस ब्लॉक हैश है। बाइट उलटे बिना आउटपुट 6fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d6190000000000 होता है।
डबल SHA-256 (SHA-256d) का उपयोग कब करें
Bitcoin ब्लॉक हेडर या ट्रांज़ैक्शन ID हाथ से जाँचने, Base58Check चेकसम (SHA-256d के पहले 4 बाइट) निकालने, या दूसरे प्रोटोकॉल के SHA-256d मान दोहराने के लिए इसका उपयोग करें। इसे पासवर्ड के लिए इस्तेमाल न करें, और अगर स्पेसिफ़िकेशन सादा SHA-256 माँगे तो भी न करें; नतीजे अलग होते हैं। डाइजेस्ट के हेक्स टेक्स्ट को दूसरी बार हैश करना भी SHA-256d नहीं है।
डबल SHA-256 (SHA-256d) कैसे काम करता है
टूल SHA-256(SHA-256(data)) निकालता है। अहम बात यह है कि दूसरा SHA-256 पहले डाइजेस्ट के 32 रॉ बाइट पर चलता है, उसकी 64-अक्षर वाली हेक्स स्ट्रिंग पर नहीं; कई ऑनलाइन टूल इसे गलत करते हैं। Bitcoin 32-बाइट नतीजे को लिटिल-एंडियन संख्या मानता है, इसलिए शुरुआत में शून्य वाला जाना-पहचाना ब्लॉक हैश, बाइट उलटे हुए डाइजेस्ट के बराबर होता है; बाइट क्रम उलटें विकल्प ठीक यही करता है।
सामान्य उपयोग मामले
- 80-बाइट हेडर से Bitcoin ब्लॉक हैश जाँचें
- रॉ सीरियलाइज़्ड ट्रांज़ैक्शन से ट्रांज़ैक्शन ID (txid) निकालें
- Base58Check पते या WIF कुंजी का 4-बाइट चेकसम निकालें
- डेवलपमेंट के दौरान किसी माइनिंग या वॉलेट इम्प्लीमेंटेशन की क्रॉस-जाँच करें
सुरक्षा नोट
SHA-256d उतना ही कॉलिज़न-प्रतिरोधी है जितना SHA-256। यह पासवर्ड हैश नहीं है; पासवर्ड के लिए Argon2, scrypt या bcrypt इस्तेमाल करें। सारी हैशिंग आपके ब्राउज़र में स्थानीय रूप से होती है।
अक्सर पूछे जाने वाले प्रश्न
Bitcoin दो बार हैश क्यों करता है?
Satoshi ने SHA-256d इस्तेमाल किया, संभवतः एकल Merkle–Damgård हैश पर लेंथ-एक्सटेंशन हमलों से बचाव के तौर पर। यह कॉलिज़न खोजना SHA-256 से ज़्यादा कठिन नहीं बनाता, लेकिन अब यह प्रोटोकॉल में स्थिर हो चुका है।
मेरा नतीजा ब्लॉक एक्सप्लोरर से मेल क्यों नहीं खाता?
तीन आम कारण: हेडर हेक्स बाइट्स की जगह टेक्स्ट के रूप में दर्ज हुआ, दूसरा हैश रॉ डाइजेस्ट की जगह हेक्स स्ट्रिंग पर लिया गया, या बाइट क्रम उलटा नहीं गया। एक्सप्लोरर जैसे हैश के लिए बाइट क्रम उलटें पर टिक करें।
"abc" का डबल SHA-256 क्या है?
UTF-8 इनपुट और सामान्य बाइट क्रम के साथ यह 4f8b42c22dd3729b519ba6f68d2da7cc5b2d606d05daed5ad5128cc03e6c6358 है।