हैश कैलकुलेटर
क्रिप्टोWeb Crypto द्वारा SHA-1/256/384/512 और MD5 की गणना। Hex या Base64 आउटपुट।
इस पृष्ठ पर
हैश क्या है?#
क्रिप्टोग्राफ़िक हैश मनमाने बाइट्स के लिए एक एक-तरफ़ा फ़िंगरप्रिंट है। आप किसी भी लंबाई का संदेश डालते हैं और एक नियत-लंबाई का डाइजेस्ट पाते हैं जो उसी सटीक इनपुट के लिए एक हस्ताक्षर की तरह बर्ताव करता है: एक बिट बदलें और आउटपुट पूरी तरह बदल जाता है। हैशिंग एक साथ दो व्यावहारिक सवालों के जवाब देती है — “क्या इस डेटा में कोई बदलाव आया?” और “क्या मैं इस डेटा को एक छोटे, स्थिर id से संदर्भित कर सकता हूँ?” — यही कारण है कि यह फ़ाइल अखंडता जाँच, कंटेंट एड्रेसिंग, डी-डुप्लिकेशन, और पासवर्ड भंडारण के नीचे बैठता है।
यह पेज पाँच एल्गोरिदम गणना करता है: SHA-2 परिवार (SHA-256, SHA-384, SHA-512), SHA-1, और MD5। चार SHA वेरिएंट ब्राउज़र के नेटिव Web Crypto इंजन (crypto.subtle.digest) से चलते हैं, वही आदिम जो प्रोडक्शन कोड उपयोग करता है — कोई JavaScript पुनः-कार्यान्वयन नहीं। MD5 Web Crypto का हिस्सा नहीं है, इसलिए इसे केवल तभी माँग पर लोड किया जाता है जब आप वास्तव में उसे चुनते हैं, जिससे वह पेज के शुरुआती डाउनलोड से बाहर रहता है।
हैश एन्क्रिप्शन नहीं है। यह अनुत्क्रमणीय है: आप डाइजेस्ट से इनपुट का पुनर्निर्माण नहीं कर सकते। यदि आपको दो पक्षों को एक कुंजीयुक्त डाइजेस्ट साझा करना है तो HMAC उपयोग करें; यदि आपको ऑपरेशन उलटना है तो सिमेट्रिक एन्क्रिप्शन उपयोग करें।
इसका उपयोग कैसे करें#
- अपना इनपुट बाएँ पैनल में चिपकाएँ। कुछ भी टेक्स्चुअल — एक स्ट्रिंग, एक JSON ढेर, एक कॉन्फ़िग स्निपेट। हैशिंग से पहले बाइट्स को UTF-8 के रूप में एन्कोड किया जाता है।
- एल्गोरिदम चुनें:
- SHA-256 — आधुनिक डिफ़ॉल्ट; 256-बिट डाइजेस्ट, TLS से लेकर Git से लेकर ब्लॉकचेन तक हर जगह उपयोग।
- SHA-384 / SHA-512 — उसी परिवार से लंबे डाइजेस्ट; चुनें जब कोई विनिर्देश उनकी माँग करता हो।
- SHA-1 — 160-बिट; लीगेसी, चेकसम के लिए ठीक, collision-resistant हस्ताक्षरों के लिए टूटा हुआ।
- MD5 — 128-बिट; तेज़ और सर्वव्यापी पर क्रिप्टोग्राफ़िक रूप से टूटा हुआ। गैर-सुरक्षा चेकसम और लीगेसी कैश कुंजीयों के लिए उपयोगी।
- आउटपुट एन्कोडिंग चुनें: हेक्स (लोअरकेस, डाइजेस्ट के लिए आम परिपाटी) या बेस64 (अधिक कॉम्पैक्ट, टोकनों में आम)।
- कैनोनिकल टेस्ट स्ट्रिंग लोड करने के लिए नमूना, या फिर से शुरू करने के लिए साफ़ करें पर क्लिक करें। डाइजेस्ट दाएँ पैनल में लाइव अपडेट होता है; कॉपी उसे लेता है।
प्रमुख विशेषताएँ#
- नेटिव Web Crypto। SHA-1/256/384/512 को
crypto.subtle.digestद्वारा गणना करता है — ब्राउज़र का ऑडिट किया गया कार्यान्वयन, कोई तीसरी-पक्ष लाइब्रेरी नहीं। - आलसी MD5। MD5 कार्यान्वयन केवल तभी लाया जाता है जब आप उसे चुनते हैं, इसलिए वह पहले रेंडर को कभी भारी नहीं करता।
- हेक्स या बेस64। दोबारा टाइप किए बिना एक-क्लिक स्विच।
- लाइव स्थिति पट्टी। एल्गोरिदम और डाइजेस्ट बाइट लंबाई की पुष्टि करती है, ताकि कोई कटा हुआ या एक-से-अधिक परिणाम स्पष्ट दिखे।
- ज़ीरो अपलोड। हैशिंग पूरी तरह आपके ब्राउज़र में होती है; इनपुट कभी सर्वर तक नहीं पहुँचता।
कार्य उदाहरण#
कैनोनिकल संदर्भ स्ट्रिंग The quick brown fox jumps over the lazy dog है। एल्गोरिदम SHA-256 और आउटपुट हेक्स पर सेट के साथ, डाइजेस्ट है:
d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592
वही स्ट्रिंग SHA-1 (हेक्स) के तहत:
2fd4e1c67a2d28fced849ee1bb76e7391b93eb12
एक उपयोगी किनारे का मामला खाली स्ट्रिंग है। बिलकुल कुछ नहीं हैश करना भी एक वेल-डिफ़ाइंड, गैर-खाली डाइजेस्ट देता है — SHA-256 के लिए वह e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 है, और MD5 के लिए d41d8cd98f00b204e9800998ecf8427e। ये खाली-इनपुट वेक्टर वही हैं जिनसे इस औज़ार का अपना टेस्ट सूट सही-ढंग सत्यापित करता है — यदि आपका आउटपुट भिन्न है तो पेज के साथ छेड़छाड़ हुई है।
अक्सर पूछे जाने वाले प्रश्न#
SHA-256 या MD5 — मुझे क्या चुनना चाहिए?#
सुरक्षा को छूने वाली हर चीज़ के लिए SHA-256: पासवर्ड साल्टिंग योजनाएँ, साइन्ड URL, अखंडता प्रमाण, कंटेंट ID जिन्हें collision हमलों का विरोध करना हो। MD5 केवल गैर-प्रतिकूल चेकसम (एक त्वरित “क्या इस फ़ाइल में बदलाव आया?” जाँच, एक कैश कुंजी) के लिए स्वीकार्य है जहाँ कोई collision जालसाज़ी करने की कोशिश नहीं कर रहा। यदि आप सुनिश्चित नहीं हैं तो SHA-256 पर टिके रहें।
वही इनपुट हमेशा वही डाइजेस्ट क्यों देता है?#
हैशिंग नियतात्मक है — इस परत पर कोई यादृच्छिक साल्ट शामिल नहीं है (bcrypt के विपरीत)। वही नियतात्मकता कंटेंट एड्रेसिंग का पूरा मतलब है: वही बाइट्स हमेशा वही फ़िंगरप्रिंट दें। इसका उल्टा यह है कि एक ही गुप्त को हैश करने वाले दो लोग वही डाइजेस्ट पाते हैं, यही कारण है कि सादा हैश पासवर्ड संग्रहित करने का भयंकर तरीका है।
क्या मैं हैश से मूल को पुनर्प्राप्त कर सकता हूँ?#
नहीं। क्रिप्टोग्राफ़िक हैश डिज़ाइन द्वारा एक एक-तरफ़ा फलन है; कोई कुंजी नहीं और कोई उलटा ऑपरेशन नहीं। “एक SHA-256 डिक्रिप्ट करना” एक श्रेणी त्रुटि है। एकमात्र हमला ब्रूट फ़ोर्स है (इनपुट तब तक आज़माना जब तक एक मैच न हो), जो ठीक वही है जो कमज़ोर पासवर्ड को बिना साल्ट हैश किए जाने पर भी खतरनाक बनाता है।
मेरा MD5 मेरे आम तौर पर उपयोग किए जाने वाले औज़ार से अलग क्यों है?#
लगभग हमेशा एक बाइट-निरूपण बेमेल: एक अनुगामी न्यूलाइन, अलग लाइन समाप्ति (CRLF बनाम LF), या दूसरा औज़ार UTF-16 निरूपण हैश कर रहा है जबकि यह पेज UTF-8 हैश करता है। स्क्रीन के टेक्स्ट की तुलना में कच्चे बाइट्स की तुलना करें।