عند القيام بتحميل أي ملف من مواقع الإنترنت ربما لاحظت وجود كود طويل مكون من بعض الحروف والأرقام إلي جوار رابط التحميل الخاص بالملف. وبما انه كود صعب القراءة ولا يحمل معني معين لذلك تجاهلته وقمت بتحميل الملف دون ان تهتم. ولكن ربما تساءلت هل القائمين علي هذ الموقع وضعوا هذا الكود بدون اى هدف ؟ الإجابة – لا – إذن ما هو وما الفائدة منه ؟ دعونا نوضحه لكم من خلال هذه المقالة.
هذا الكود يسمي "Checksum Hash" وهو ببساطة عبارة عن ناتج لبعض العمليات الحسابية المعقدة اللتي تم إجراءها علي الملف الذي قمت بتحميله. ويكون لكل ملف كود فريد مختلف تمامًا مثل رقم البطاقة الشخصية أو جواز السفر. فكل شخص له رقم تعريف مختلف عن الاخر ومن المُستحيل ان تجد شخصين بنفس رقم جواز السفر. وكذلك الحال في الـ Checksum Hash فإن كل ملف له الكود الخاص به الذي من المستحيل تكراره واي تغيير طفيف في إسم الملف اوإمتداده أو الحجم الكلي له او مكوناته سينتج كود مختلف تماما.
جدير بالذكر أيضًا أن هناك عدة انواع من اكواد الـ Checksum Hash مثل الـ SHA-1 و MD5 و SHA-256 وهما الأكثر شيوعا إلي جانب أنواع أخري ويكون الإختلاف في المعادلات المستخدمة (Algorithm) وشكل وطول الكود الناتج. وغالبا ما يذكر الموقع نوع الـ Checksum Hash إلي جانب كود الملف الذي قمت بتحميله.
ما الفائدة منه ؟
الغرض الرئيسي من إستخدام الـ Checksum Hash هو التأكد من أن الملف مطابق تماما للنسخة الأصلية المقدمة من الموقع الذي قام بنشر هذا الملف او صاحب حقوقه الاصلية.
علي سبيل المثال، إذا كنت تقوم بتحميل ملفات كبيرة الحجم مثل الألعاب وملفات النظام وخصوصا الملفات القابلة للتنفيد (.exe) من الوارد ان يحدث خطأ خلال عملية نقل البيانات من السيرفر إلي جهاز الكمبيوتر الخاص بك ولذلك بعد انتظار ساعات وربما أيام لتحميل الملف إذا كان الملف كبير الحجم ستجد ان الملف لايعمل رغم ان الحجم الكلي للملف متوافق مع المذكور علي الموقع وربما تضطر لتحميله مرة اخري وإهدار المزيد من سعة الإستخدام الخاصة بالإنترنت لديك (Bandwidth) دون فائدة وانت لا تعرف سبب المشكلة الحقيقي.
كذلك إذا كنت تقوم بتحميل ملف آيزو لنظام تشغيل مثل ويندوز ولكن من مصدر اخر غير موقع مايكروسوفت وتريد التأكد من انه لم يتم تعديل هذه النسخة الأصلية وأنها مطابقة تماما للنسخة الأصلية المقدمة من مايكروسوفت، أو إذا كان الموقع الذي تقوم بالتحميل منه غير آمن بالشكل الكافي من الوارد ان يكون قد تم تعديل الملف او إضافة بعض الملفات الضارة من قبل المخترقين وهذا قد يعرض جهازك للإختراق أو الضرر بشكل عام.
في مثل هذه الحالات تأتي أهمية الـ Checksum Hash عن طريق إجراء إختبار الـ Hash check علي الملف بعد تحميله والتأكد من تطابق كود الملف بعد تحميله مع الكود الموجود علي الموقع.
كيف أستخدمه ؟
سنقوم بإستخدام بعض الأدوات اللتي تسمي (hash Calculators) وهي الأداة اللتي ستقوم بإجراء العمليات الحسابية علي الملف الذي قمت بتحميله وكما ذكرنا مسبقا يجب ان يكون الكود الناتج من هذه العمليات متطابق تماما مع الكود المذكور علي الموقع لنفس الملف. لحسن الحظ، تتوفر هذه الأداة الرائعة اللتي تقوم بفحص ا الـ Checksum Hash سواء كان SHA-1 أو MD5 ومقارنته مع الكود الأصلي فقط سنقوم بتحميل الأداة وهي أداة محمولة لا تحتاج أى تثبيت.
والآن سنقوم باختبار الـ hash check علي ملف بصيغة ايزو لإسطوانة الصيانة الأشهر Hiren’s boot CD بعد تحميلها من الموقع الرسمي (لاحظ تم ذكر نوع الـ Checksum Hash وهو MD5 كما يُلاحظ وجود إختلاف بين كود الملف بإمتداد ISO , وإمتداد الـ ZIP)
والآن قم بإتباع الخطوات التالية في أداة File Checksum Tool:
- في الخطوة الأولي نقوم بفتح الأداة والضغط علي Browse لفتح الملف الذي قمنا بتحميله.
- وفي الجزء الثاني نختار نوع الـ Hash Algorithm وهو في هذه الحالة MD5 كما ذُكر علي الموقع.
- في الجزء الثالث نضغط علي Calculate Hash وستقوم الأداة بإجراء العمليات الحسابية علي الملف ويظهر الناتج في خانة "File Checksum"
- في خانة "Verify With" قم بنسخ ولصق الكود الأصلي المذكور علي موقع Hiren’s boot CD ثم الضغط علي Compare وسوف تقوم الأداة بفحص الكودين والتأكد من تطابقهم تماما.
في حالة تطابق الكودين ستظهر رسالة checksum match وهي للتأكيد علي التطابق, أي أن الملف لم يتم إجراء أي تعديلات عليه وكذلك لم يُفقد اي جزء منه خلال عملية نقل البيانات من سيرفر الموقع إلي جهاز المستخدم أما في حالة ظهور خطأ في المطابقة للأسف سيكون عليك إعادة تحميل الملف مرة أخري ولكن من مصدر اخر.
طريقة أخري بديلة
إذا لم تفلح الطريقة السابقة، يمكنك استخدام هذه الطريقة البديلة والتي نستخدم فيها برنامج ضغط الملفات الشهير 7Zip وبعد تثبيه قم بالنقر بالزر الأيمن للماوس علي الملف الذي قمت بتحميله وتريد القيام بالتحقق من "الهاش" الخاص به. ثم إذهب إلي خيار CRC SHA ثم من القائمة الجانبية ستجد انواع الـ Hash Algorithms ولكن قم بالضغط علي الخيار الأخير (*)
وسيقوم البرنامج بالتحميل لمدة معينة حسب حجم الملف ثم يقوم بعرض جميع الـ Checksum Hashes للملف.ولكن من عيوب هذه الطريقة أنها لا توفر خاصية المطابقة اوتوماتيكيا ولذلك ستضطر للمقارنة بين الأكواد بالنظر فقط كما أنها لاتدعم الأكواد من نوعية MD5.