MD4 हैश जनरेटर
अपने ब्राउज़र में किसी भी टेक्स्ट का MD4 हैश तुरंत बनाएँ। UTF-8, हेक्स या Base64 इनपुट; हेक्स या Base64 आउटपुट। मुफ़्त, निजी, बिना अपलोड।
पूरी तरह आपके ब्राउज़र में चलता है। आपका डेटा कभी अपलोड नहीं होता।
MD4 हैश जनरेटर क्या है?
MD4, Ron Rivest का 128-बिट हैश फ़ंक्शन है (RFC 1320, 1990) और MD5, SHA-1 तथा RIPEMD का सीधा पूर्वज है। यह टूल टाइप करते ही टेक्स्ट या रॉ बाइट (हेक्स या Base64) का 128-बिट MD4 डाइजेस्ट निकालता है और उसे 32 हेक्स अक्षरों या Base64 में दिखाता है।
MD4 हैश जनरेटर का उपयोग कैसे करें
- अपना इनपुट हैश करने के लिए टेक्स्ट में टाइप या पेस्ट करें; डाइजेस्ट टाइप करते ही अपडेट होता है (खाली बॉक्स खाली इनपुट का हैश दिखाता है)।
- इनपुट एन्कोडिंग चुनें: टेक्स्ट (UTF-8) अक्षरों को UTF-8 मानकर हैश करता है, हेक्स बाइट्स या Base64 डिकोड किए गए रॉ बाइट हैश करते हैं।
- आउटपुट फ़ॉर्मैट चुनें (हेक्स छोटे अक्षर, हेक्स बड़े अक्षर या Base64) और कॉपी करें दबाएँ।
उदाहरण
abc
a448017aaf21d8525fc10ae87aa6729d
3 ASCII बाइट "abc" का MD4 (UTF-8, हेक्स छोटे अक्षर आउटपुट), मानक टेस्ट वेक्टर।
MD4 हैश जनरेटर का उपयोग कब करें
स्ट्रिंग हैश करने के लिए MD4 टेक्स्ट टूल का उपयोग करें: दस्तावेज़ या कोड से कोई मान दोहराना, टेस्ट वेक्टर बनाना, API सिग्नेचर का इनपुट मिलाना, या यह देखना कि प्रोग्राम को क्या आउटपुट देना चाहिए। हमलावरों से किसी चीज़ की सुरक्षा के लिए इसका उपयोग न करें; यह क्रिप्टोग्राफ़िक रूप से टूट चुका है। डाउनलोड की गई फ़ाइल जाँचने के लिए इसका उपयोग न करें: फ़ाइल की सामग्री टेक्स्ट बॉक्स में कॉपी करने से लाइन एंडिंग और एन्कोडिंग बदल जाती हैं, इसलिए MD4 फ़ाइल चेकसम टूल का उपयोग करें। नए इंटीग्रिटी चेक के लिए SHA-256 इस्तेमाल करें।
MD4 हैश जनरेटर कैसे काम करता है
MD4 संदेश में 1 बिट, शून्य और 64-बिट लिटिल-एंडियन लंबाई जोड़कर उसे 512 बिट के गुणज तक पैड करता है, फिर हर 512-बिट ब्लॉक को अरैखिक फ़ंक्शन F, G, H, जोड़ और बाएँ रोटेशन से चार 32-बिट शब्दों पर तीन राउंड में, हर राउंड में 16 ऑपरेशन के साथ चलाता है। चार अंतिम शब्द, लिटिल-एंडियन में लिखे जाने पर, 128-बिट डाइजेस्ट बनाते हैं। टेक्स्ट को पहले बाइट में बदला जाता है (डिफ़ॉल्ट UTF-8), इसलिए वही अक्षर हमेशा वही हैश देते हैं।
सामान्य उपयोग मामले
- यूनिट टेस्ट या फ़िक्स्चर में किसी स्ट्रिंग का अपेक्षित MD4 जाँचें
- डीबगर, पैकेट कैप्चर या प्रोटोकॉल स्पेक से कॉपी किए हेक्स बाइट हैश करें
- दो प्रोग्रामिंग भाषाओं में अलग आ रहे MD4 आउटपुट की तुलना करें
- टेक्स्ट से निश्चित (डिटरमिनिस्टिक) आइडेंटिफ़ायर या कैश की बनाएँ
- किसी पुराने सिस्टम में सहेजे गए पुराने MD4 मान दोहराएँ
सुरक्षा नोट
MD4 पूरी तरह टूट चुका है। कॉलिज़न हाथ से हो सकने लायक गणना में मिल जाते हैं, और यह अब भी NTLM पासवर्ड हैश का मूल है, इसीलिए NTLM हैश इतनी आसानी से क्रैक हो जाते हैं। इसे केवल संगतता के लिए इस्तेमाल करें (जैसे eDonkey/ed2k लिंक, NTLM रिसर्च); सुरक्षा के लिए कभी नहीं। सादे हैश पासवर्ड स्टोर करने के लिए भी उपयुक्त नहीं हैं: इसके लिए Argon2, scrypt या bcrypt जैसा धीमा, सॉल्ट वाला पासवर्ड हैश इस्तेमाल करें। सब कुछ आपके ब्राउज़र में ही स्थानीय रूप से निकलता है; आप जो टाइप करते हैं वह कहीं नहीं भेजा जाता।
अक्सर पूछे जाने वाले प्रश्न
MD4 अब भी कहाँ इस्तेमाल होता है?
Windows NT/NTLM पासवर्ड हैश, UTF-16LE पासवर्ड पर निकाला गया MD4 है, और ed2k (eDonkey) फ़ाइल लिंक फ़ाइल के टुकड़ों के MD4 हैश से बनते हैं। यह टूल सादा MD4 निकालता है; NTLM, UTF-16LE बाइट का MD4 है, इसलिए आपको पासवर्ड UTF-16LE में हेक्स के रूप में दर्ज करना होगा।
मेरा सिस्टम MD4 सपोर्ट क्यों नहीं करता?
OpenSSL 3 ने MD4 को legacy प्रोवाइडर में डाल दिया, इसलिए openssl md4 या Node.js crypto.createHash("md4") डिफ़ॉल्ट रूप से फ़ेल हो सकते हैं। यह टूल MD4 को ब्राउज़र (hash-wasm) में लागू करता है, इसलिए यह हर हाल में चलता है।
एक अक्षर बदलने पर हैश पूरी तरह क्यों बदल जाता है?
यह एवलांच इफ़ेक्ट है, जिसके लिए हर क्रिप्टोग्राफ़िक हैश बनाया जाता है: इनपुट का एक बिट पलटने से आउटपुट के लगभग आधे 128 बिट बदल जाते हैं, इसलिए मिलते-जुलते इनपुट के डाइजेस्ट आपस में असंबंधित होते हैं।
क्या अंत में स्पेस या नई लाइन से फ़र्क पड़ता है?
हाँ। हाँ। हैश हर बाइट को शामिल करता है, इसलिए abc और उसके बाद नई लाइन वाला abc अलग MD4 मान देते हैं। पक्का करें कि इनपुट में ठीक वही बाइट हों जिन्हें आप हैश करना चाहते हैं।