MD5, SHA-1, SHA-256 और SHA-512 हैश निकालें
एक ही बार में फाइल या टेक्स्ट के सारे चेकसम पाएं। अपेक्षित वैल्यू पेस्ट करें और एक नजर में देखें कि वह मेल खाती है या नहीं।
फाइलें यहां छोड़ें
· 300 MB तक
और सेटिंगकम सेटिंग
कैसे हैश निकालें
- 1
फाइल डालें या टेक्स्ट पेस्ट करें
एक साथ पचास फाइलें तक, या सीधे टाइप किया गया टेक्स्ट। बड़ी फाइलें टुकड़ों में पढ़ी जाती हैं, ताकि मेमोरी का इस्तेमाल न बढ़े।
- 2
चुनें कि कौन-से एल्गोरिदम दिखाने हैं
डिफॉल्ट रूप से चारों। कम चुनने पर कम हैशर बनते हैं, और कई गीगाबाइट की फाइल पर यह साफ तौर पर तेज होता है।
- 3
परिणाम मिलाएं या कॉपी करें
अपेक्षित चेकसम पेस्ट करें। उसकी लंबाई से एल्गोरिदम पहचाना जाता है और मिलान अपने आप जांचा जाता है।
डेटा पर एक ही बार, चार बार नहीं
चार चेकसम बनाने का सीधा-सादा तरीका है फाइल को चार बार पढ़ना। यहां फाइल एक ही बार, सोलह मेगाबाइट के टुकड़ों में पढ़ी जाती है, और अगला टुकड़ा पढ़ने से पहले हर टुकड़ा हर चुने गए हैशर को दिया जाता है। इसलिए दूसरा एल्गोरिदम जोड़ने की कीमत प्रोसेसर का समय है, डिस्क पर एक और पूरा चक्कर नहीं। मेमोरी की सीमा के लिए भी टुकड़ों वाला तरीका इसीलिए अहम है: दो गीगाबाइट की फाइल कभी पूरी की पूरी मेमोरी में नहीं रहती, एक समय में उसका सिर्फ सोलह मेगाबाइट हिस्सा रहता है। इसी वजह से ब्राउजर टैब में बड़ी ISO या वीडियो फाइल का हैश निकालना मुमकिन होता है।
कौन-सा एल्गोरिदम किस काम के लिए
यह जांचने के लिए कि डाउनलोड सही-सलामत पहुंचा, चारों में से कोई भी चलेगा, क्योंकि गलती से हुई खराबी टकराव (कोलिजन) नहीं बनाती। इसलिए वही इस्तेमाल करें, जो पब्लिशर ने दिया है। जहां कोई जानबूझकर मेल खाती फाइल बना सकता है, वहां MD5 और SHA-1 दोनों टूट चुके हैं: MD5 के लिए व्यावहारिक टकराव मौजूद हैं, और SHA-1 के लिए 2017 से हैं। इसलिए MD5 का मेल खाना अब यह साबित नहीं करता कि दो फाइलें एक जैसी हैं। जिस जांच को जानबूझकर किए गए हमले के सामने भी टिकना हो, उसके लिए SHA-256 समझदारी भरा डिफॉल्ट है। SHA-512 व्यवहार में ज्यादा सुरक्षित नहीं है, पर 64-बिट हार्डवेयर पर अक्सर तेज होता है। पासवर्ड सेव करने के लिए इनमें से कोई भी नहीं है: उसके लिए जानबूझकर धीमा फंक्शन चाहिए, जैसे Argon2 या bcrypt।
टेक्स्ट का हैश एन्कोडिंग पर निर्भर है
हैश बाइट पर निकलता है, और टेक्स्ट तब तक बाइट नहीं बनता, जब तक कोई एन्कोडिंग उसे बाइट में न बदले। शब्द “Привет” UTF-8 में एक SHA-256 देता है और UTF-16LE में बिल्कुल अलग, और दोनों में से कोई गलत नहीं है: ये अलग-अलग बाइट क्रमों के हैश हैं। इसीलिए कैरेक्टर सेट मानकर नहीं चला जाता, उसे साफ तौर पर चुना जाता है। और इसीलिए कहीं और निकाला गया हैश यहां तब तक मेल नहीं खा सकता, जब तक एन्कोडिंग एक न हो। डिफॉल्ट UTF-8 है, क्योंकि लगभग हर आधुनिक सिस्टम टेक्स्ट से यही समझता है।
फाइल कभी अपलोड नहीं होती
हैश निकालने का सारा काम इसी ब्राउजर टैब में होता है। चेकसम जांचने का मकसद ही यह है कि भरोसा फाइल पर हो, किसी सर्विस पर नहीं; हैश के लिए फाइल सर्वर को भेजना पूरी कवायद को बेकार कर देता। आपके डिवाइस से कुछ भी बाहर नहीं जाता।
अक्सर पूछे जाने वाले सवाल
डाउनलोड जांचने के लिए कौन-सा एल्गोरिदम इस्तेमाल करें?
वही, जो पब्लिशर ने दिया है। गलती से हुई खराबी के लिए चारों में से कोई भी काफी है। अगर डर जानबूझकर की गई छेड़छाड़ का है, तो SHA-256 या SHA-512 इस्तेमाल करें, क्योंकि MD5 और SHA-1 दोनों पर व्यावहारिक कोलिजन हमले मौजूद हैं।
MD5 पासवर्ड के लिए सही क्यों नहीं है?
क्योंकि वह तेज है, और पासवर्ड का अंदाजा लगाने वाले हमलावर को ठीक यही रफ्तार चाहिए। पासवर्ड सेव करने के लिए जानबूझकर धीमा, सॉल्ट वाला फंक्शन चाहिए, जैसे Argon2 या bcrypt; किसी भी रफ्तार का सादा हैश इस काम के लिए गलत टूल है।
एन्कोडिंग बदलने पर टेक्स्ट का हैश क्यों बदल जाता है?
क्योंकि हैश अक्षरों पर नहीं, बाइट पर निकलता है, और UTF-8 और UTF-16LE एक ही टेक्स्ट को अलग-अलग बाइट में बदलते हैं। वही एन्कोडिंग चुनें, जिससे वह वैल्यू बनी थी, जिससे आप मिलान कर रहे हैं।
क्या बहुत बड़ी फाइल का हैश निकाल सकते हैं?
हां। फाइल सोलह मेगाबाइट के टुकड़ों में पढ़ी जाती है और कभी पूरी की पूरी मेमोरी में नहीं रखी जाती। इसलिए कई गीगाबाइट की फाइल भी सौ मेगाबाइट से काफी कम मेमोरी में चल जाती है।
मेल न खाने का क्या मतलब है?
यह कि बाइट वैसे नहीं हैं, जैसे पब्लिशर ने हैश किए थे। आम तौर पर डाउनलोड अधूरा रहा या खराब हुआ, इसलिए मूल स्रोत से फिर से डाउनलोड करें। अगर फिर भी मेल न खाए, तो फाइल को भरोसे लायक न मानें।
मिलान को कैसे पता चलता है कि किस एल्गोरिदम का हैश पेस्ट किया गया?
लंबाई से। 32, 40, 64 या 128 कैरेक्टर का hex चेकसम क्रमशः MD5, SHA-1, SHA-256 या SHA-512 है। इसके अलावा कुछ भी हो, तो उसे गलत वैल्यू से मिलाने के बजाय बताया जाता है कि वह पहचाना नहीं गया।
क्या जांच के लिए मेरी फाइल अपलोड होती है?
नहीं। सब कुछ आपके ब्राउजर में ही, WebAssembly हैशिंग लाइब्रेरी से निकाला जाता है। किसी भी चरण में कोई सर्वर शामिल नहीं होता।