abox.tools

भाषा: हिन्दी

चेकसम से डाउनलोड कैसे जाँचें

डाउनलोड लिंक के नीचे हेक्स की जो लाइन होती है, वह इसीलिए है कि आप खुद साबित कर सकें कि फ़ाइल सही-सलामत पहुँची। मिलाने में करीब एक मिनट लगता है। उस मिलान की कीमत कितनी है, और कौन सी आदत उसे बेकार कर देती है, यह जानने में इस पेज का बाकी हिस्सा लगता है।

हैश और चेकसम खोलें डाउनलोड की गई फ़ाइल को उस नंबर से मिलाइए जो बनाने वाले ने छापा है, बिना उसे किसी को भेजे।

Markdown के रूप में देखें

छोटा जवाब

हैश और चेकसम खोलिए, डाउनलोड की गई फ़ाइल उस पर छोड़िए, और डाउनलोड पेज का चेकसम नीचे वाले डिब्बे में चिपका दीजिए। पेज लंबाई देखकर पहचान लेता है कि वह नंबर किस एल्गोरिदम का है, और एक वाक्य में जवाब दे देता है।

मिल जाए तो आपकी डिस्क के बाइट वही हैं जो बनाने वाले ने नापे थे। न मिले तो खोलने से पहले फ़ाइल दोबारा डाउनलोड कीजिए। नीचे वह सब है जो यह एक वाक्य छोड़ देता है।

डाउनलोड लिंक के नीचे वाला नंबर है क्या

वह एक हैश फ़ंक्शन का नतीजा है: ऐसा हिसाब जो फ़ाइल का हर बाइट पढ़कर एक छोटा, तय लंबाई वाला जवाब देता है। वही फ़ाइल हमेशा वही जवाब देती है, और सिर्फ़ एक बिट अलग फ़ाइल बिलकुल अलग जवाब देती है। मिलता-जुलता नहीं, कोई बेमेल जवाब। पूरी बात इसी गुण पर टिकी है।

जवाब छोटा है और फ़ाइल छोटी नहीं, इसलिए यह हिसाब जानकारी फेंकता है, और किसी भी एक जवाब पर आने वाली फ़ाइलें ज़रूर बहुत होंगी। उनमें से एक को जानबूझकर ढूँढ निकालना ही मुश्किल हिस्सा है, और यह कितना मुश्किल है, नीचे दिए एल्गोरिदम एक दूसरे से इसी में अलग हैं।

चेकसम में गोपनीय कुछ नहीं है और उसे उलटा भी नहीं किया जा सकता। वह एक निशान है, जो इसलिए छापा जाता है कि दो लोग यह तय कर सकें कि उनके हाथ में एक ही चीज़ है।

आपके सामने कौन सा है

चुनना आपको नहीं है। बनाने वाला पहले ही चुन चुका है, और आपका काम वही निकालना है। पहचान सिर्फ़ लंबाई से हो जाती है:

किन्हीं दो की लंबाई एक जैसी नहीं, इसीलिए बिना बताए भी टूल पहचान लेता है कि चिपकाया गया मान क्या है। 63 अक्षरों वाली कोई चीज़ किसी का चेकसम नहीं होती: वह एक SHA-256 है जिससे क्लिपबोर्ड तक आते-आते एक अक्षर छूट गया।

परिणाम वाला कार्ड: एक ही फ़ाइल के MD5, SHA-1, SHA-256 और SHA-512 डाइजेस्ट, हर एक के साथ कॉपी का बटन।
सब एक साथ, क्योंकि कौन सा इस्तेमाल करना है यह फ़ाइल प्रकाशित करने वाला तय करता है, आप नहीं।

बिना ब्राउज़र के, अपनी ही मशीन पर

हर ऑपरेटिंग सिस्टम के साथ यह काम करने वाला कुछ न कुछ आता है, और कमांड जान लेना तब भी काम का है जब आप इसके लिए कोई पेज इस्तेमाल करते हों। "मुझे कैसे पता कि आपकी साइट ने ईमानदारी से हिसाब लगाया" इस सवाल का इससे बेहतर जवाब नहीं कि वही फ़ाइल अपने कंप्यूटर के साथ आए टूल से गुज़ार दीजिए।

Windows, PowerShell में:

Get-FileHash .\disk.iso -Algorithm SHA256

पुरानी मशीनों पर उसकी जगह certutil -hashfile disk.iso SHA256 होता है, जो बड़े अक्षरों में और बीच में स्पेस डालकर छापता है। चेकसम मिलाने में छोटे-बड़े अक्षर से कभी फ़र्क नहीं पड़ता; वे अक्षर शब्द नहीं, अंक हैं।

macOS:

shasum -a 256 disk.iso

Linux:

sha256sum disk.iso

तीनों एक ही फ़ाइल के लिए एक ही स्ट्रिंग छापते हैं, और यह साइट भी। ये छपे हुए टेस्ट वेक्टर वाले सटीक स्पेसिफ़िकेशन हैं; किसी इंप्लीमेंटेशन के पास अपनी राय रखने की गुंजाइश नहीं।

आँखें फोड़े बिना मिलाइए

दो स्क्रीन से चौंसठ अक्षर पढ़कर यह तय मत कीजिए कि वे एक जैसे लगते हैं। लोग पहले चार और आखिरी चार देखकर रुक जाते हैं, और हमलावर ठीक उसी मिलान को पार करने का इंतज़ाम करेगा। ईमानदार गलती भी इसी तरह निकल जाती है।

दोनों को किसी ऐसी चीज़ में चिपकाइए जो आपके लिए मिला दे। कमांड लाइन पर -c इसी के लिए है:

sha256sum -c SHA256SUMS

ब्राउज़र में यह हैश और चेकसम का मिलान वाला डिब्बा है, जो मान उसी रूप में लेता है जिस रूप में बनाने वाले ने लिखा हो: सिर्फ़ हेक्स, sha256sum की एक लाइन, पूरी SHA256SUMS फ़ाइल, SHA256 (disk.iso) = … वाला रूप, या स्क्रिप्ट टैग से उठाया गया integrity="sha384-…"। जवाब एक वाक्य में आता है।

तुलना वाला कार्ड: एक खाने में चिपकाया हुआ चेकसम, और एक निर्णय कि वह फ़ाइल से मेल खाता है।
डाउनलोड पन्ने पर जो लिखा था उसे चिपकाइए और तुलना टूल को करने दीजिए। पर्दे से चौंसठ अक्षर पढ़ना ही वह कदम है जिसे यह हटाता है।

मिल जाने से ठीक-ठीक क्या साबित होता है

यह कि आपकी डिस्क के बाइट वही हैं जो किसी के सामने थे जब उसने वह नंबर लिखा था। यह सचमुच काम की बात है और ज़्यादातर लोग जितना समझते हैं उससे सँकरी है, इसलिए यह गिना देना ठीक रहेगा कि यह किसे ढकती है और किसे नहीं।

मिल जाना इन्हें खारिज करता है:

मिल जाना इन्हें खारिज नहीं करता:

वह गलती जिससे पूरी कसरत बेकार हो जाती है

चेकसम को उसी पेज से, उसी कनेक्शन पर लेना जिससे फ़ाइल आई है।

सोचिए कि आप किससे बच रहे हैं। अगर डर बिगड़े हुए डाउनलोड का है, तो चेकसम कहीं से भी आए, जाँच काम कर जाती है। अगर डर यह है कि किसी ने फ़ाइल से छेड़छाड़ की, तो जो फ़ाइल बदल सकता था वह नीचे छपी हेक्स की लाइन भी बदल सकता था, क्योंकि दोनों एक ही सर्वर से एक ही कनेक्शन पर आए। आप जालसाज़ से ही दस्तखत की पुष्टि माँग रहे होंगे।

चेकसम की कीमत तब सबसे ज़्यादा होती है जब वह उस रास्ते से आए जिससे फ़ाइल नहीं आई:

इनमें से कुछ भी उसी पेज पर छपे चेकसम की जाँच को बेकार नहीं बनाता। वह टूटे हुए डाउनलोड को पकड़ लेती है, और लोगों के साथ सचमुच यही होता है। बस खुद को यह मत समझाइए कि उसने इससे ज़्यादा कुछ पकड़ा है।

MD5 और SHA-1 टूट चुके हैं। फिर भी कभी-कभी इस्तेमाल कीजिए

दोनों उस सबसे मज़बूत मायने में टूटे हैं जो यहाँ अहम है: टकराव जानबूझकर बनाए जा सकते हैं। एक ही MD5 वाली दो अलग फ़ाइलें 2004 से आम हार्डवेयर पर बनाई जा सकती हैं, और 2017 में एक टीम ने एक ही SHA-1 वाली दो अलग PDF बनाकर दिखा दीं। 2020 तक उसी हमले का वह रूप, जिसमें शुरुआत अपनी मर्ज़ी से चुनी जा सकती है, किराए पर ली गई गणना शक्ति के कुछ दसियों हज़ार डॉलर तक उतर आया।

व्यवहार में इसका मतलब यह है: मिल गया MD5 अब यह नहीं बताता कि फ़ाइल से किसी ने छेड़छाड़ नहीं की, क्योंकि जो चाहता वह उसी नंबर वाली दूसरी फ़ाइल बना सकता था। यह अब भी बताता है कि डाउनलोड कटा या बिगड़ा नहीं, क्योंकि कोई इत्तेफ़ाकिया गड़बड़ी टकराव पर नहीं जा गिरेगी। ऐसी संभावना किसी हादसे के हिस्से कभी नहीं आई।

तो अगर बनाने वाले ने सिर्फ़ MD5 छापा है, उसे जाँचिए। न जाँचने से यह बेहतर है। और अगर छापने वाले आप हैं, तो SHA-256 छापिए।

नहीं मिला। अब क्या?

  1. दोबारा डाउनलोड कीजिए, उसी जगह से। बीच में टूटा या दोबारा जोड़ा गया ट्रांसफ़र सबसे आम वजह है, और दूसरी कॉपी से बात अक्सर वहीं खत्म हो जाती है।
  2. देखिए कि लाइन सही है या नहीं। रिलीज़ पेज पर कई फ़ाइलें होती हैं: इंस्टॉलर का चेकसम कभी ज़िप वाले से नहीं मिलेगा, और ARM वाला x86 से नहीं।
  3. वर्शन देखिए। बुकमार्क किया हुआ चेकसम पेज उस दिन पुराना हो जाता है जिस दिन कोई छोटी रिलीज़ आती है।
  4. कोई और मिरर आज़माइए और दोनों फ़ाइलों के चेकसम आपस में मिलाइए। दो मिरर आपस में मिल रहे हों पर छपे नंबर से न मिलें, यह उस बात से अलग समस्या है जहाँ एक मिरर बाकी दोनों से अलग हो।
  5. तब तक फ़ाइल मत खोलिए। जो फ़ाइल अपना चेकसम नहीं निभा पाती, वह अच्छे से अच्छे हाल में खराब है और बुरे हाल में वह फ़ाइल ही नहीं जो आपने माँगी थी।

यह काम ब्राउज़र में क्यों

क्योंकि ज़्यादातर लोग कमांड लाइन पर नहीं बैठते, और क्योंकि जो साफ़ विकल्प दिखता है, यानी ऐसी वेबसाइट जो फ़ाइल अपलोड करने को कहे, वह उस इंस्टॉलर के साथ करने के लिए अजीब चीज़ है जिस पर आपको पहले ही शक है। यह पता करने के लिए कि रास्ते में फ़ाइल से छेड़छाड़ हुई या नहीं, उसे कहीं और भेज देना एक और जगह जोड़ देता है जहाँ छेड़छाड़ हो सकती है।

हैश और चेकसम फ़ाइल को आपके अपने डिवाइस पर चार-चार मेगाबाइट में पढ़ता है, इसलिए न अपलोड है, न साइज़ की हद, और पेज के अलावा भरोसा करने को कुछ है भी नहीं; वह पेज आप पढ़ सकते हैं और नेटवर्क निकालने पर भी चलता रहता है। अगर आप अपने ऑपरेटिंग सिस्टम पर ज़्यादा भरोसा करते हैं, तो ऊपर वाले हिस्से की कमांड चलाइए और दोनों जवाब मिला लीजिए। वे एक जैसे होंगे।