قمنا بالتحدث في مقالنا عن هجوم الرجل في المنتصف، أن المهاجم يستطيع استبدال جزء من المحتوى أو المحتوى كاملاً (مثلاً ملف لبرنامج) بملف خبيث أثناء عملية التحميل. للتأكد من أنكم قمتم بتحميل الملف الصحيح والأصلي أنتم بحاجة إلى معرفة المزيد عن “دالة التجزئة” (Hash function) و”سلامة الرسالة” (Message Integrity) وطريقة استعمالهم للتأكد من عدم التلاعب بالمحتوى الذي قمتم بتحميله.

04 - Hash functionفي المقال أدناه سنشرح عن “دالة التجزئة”، بعض تطبيقاتها العمليّة، المعيار المعتمد في اختيار النوع واستعمالات أخرى لها.

1- الشرح النظري:

“دالة التجزئة” هي خوارزمية تحول ملفات أو نَصوص من أيّ حجم أو نوع إلى مجموعة فريدة من الأحرف ذات طولٍ ثابت، تسمّى “خلاصة الرسالة” (Message digest). تتميّز العمليّة الحسابية بكونها باتجاه واحد، أي أنّه من الصعب جدًّا إن كنتم تملكون “خلاصة الرسالة” أن تستطيع هذه العملية كشف الرسالة الأصليّة أي “البيانات المدخلة”. كما يظهر في الصورة التالية، مهما كان حجم “البيانات المدخلة” (1) يبقى حجم “خلاصة الرسالة” هو نفسه لكلّ “البيانات المدخلة” في “دالة التجزئة” هذه. الإختلاف في “خلاصة الرسالة” كبير حتّى لو كان الإختلاف في “البيانات المدخلة” صغيراً كما هو َبَين (2) و(3).

01 - Message digest

2- تطبيقات عمليّة:

أ- برنامج محلّي

بعد أن قمنا بإرسال ملفٍّ ما إلى شخص آخر، يمكن للمتلقي التأكّد من أنّ النسخة التي وصلته هي نفسها المرسلة عبر مقارنة “خلاصة الرسالة” للملف الذي وصله مع “خلاصة الرسالة” الخاصة بالمرسل، والتي يكون قد نشرها للعلن.

للبدء بعملية التحقق في نظام تشغيل “ويندوز”، قوموا بتحميل برنامج MD5 Calculator عبر الرابط التالي، يمكّنكم البرنامج من إنتاج”خلاصة الرسالة” لأنواع “دالة التجزئة” التالية:
MD5-SHA1-SHA256-SHA512

انقروا مرّتين وافتحوا الملف المسمّى “MD5Hash.exe”، ستظهر النافذة التالية:

02 - MD5 Calculator

  • سيكون المربّع المجاور لـ (1) مختاراً بشكل افتراضي؛ يسمح، هذا الإختيار بوضع نسخة من “خلاصة الرسالة” في “لوحة القطع واللصق” (Clipboard)
  • أنقروا على نوع “دالة التجزئة” الذي تريدونه، نحن اخترنا (2) “SHA256”
  • أنقروا على (3) لاختيار ملف “البيانات المدخلة” واختاروه ثم انقروا على “Open”
  • ستفتح نافذة منبثقة تظهر لكم “خلاصة الرسالة” ويمكنكم لصقها (Paste) بسبب وجودها في “لوحة القطع واللصق.

ب- “VirusTotal”

يمكنكم استعمال الرابط التالي ورفع الملف المطلوب لإنتاج حساب “خلاصة الرسالة” الخاصة به على الانترنت، ثمّ النقر على (1) “معلومات إضافية” (Additional information). ولكنّ  الموقع، كما في الصورة التالية، يظهر فقط أنواع “دالة التجزئة” التالية (2):MD5-SHA1-SHA256.
وظيفة “VirusTotal” الأساسيّة هي لمكافحة الفيروسات إمّا عبر رفعها إليه أو إدخال رابط الموقع المراد فحصه. كما نلاحظ في الصورة أنّه لم يرصد الموقع أي برمجية خبيثة عبر برامج مكافحة الفيروسات الـ 52 التي يستعملها.

03 - Virustotal

3- المعيار المعتمد

يضع “المعهد الوطني للمعايير والتكنولوجيا” (NIST) معايير عديدة في الولايات المتّحدة ومنها المتعلّقة بالأمن الرقمي. بالنسبة إلى “دالة التجزئة”، ينصح المعهد حاليًّا باستعمال دالة التجزئة “SHA-256″ للملفّات السرّيّة و”SHA-384” للملفّات السرّيّة للغاية (الرابط).
يجب أخذ العلم بأنّ أكثر أنواع “دالة التجزئة” المستعملة حاليًّا هما “MD5″ و”SHA1” ونحن لا ننصح أحد باستعمالهما بسبب وجود بعض الثغرات فيهما، وقد طلب المعهد في أيلول/ سبتمبر 2012 التوقّف عن استعمال “SHA1”. بسبب بطء اعتماد التكنولوجيا الجديدة، أعطت “مايكروسوفت” مهلة لغاية كانون الثاني/ يناير 2017 للتوقّف عن التعامل بـ “SHA1”. يجب أخذ العلم أنّه تم التوقف عن استعمال “MD5” في شباط/ فبراير 2014 بسبب ثغرة تسمح باستعمال هجوم “الرجل في المنتصف” (MITM – “Man In The Middle”).

4- استعمالات أخرى 

لـ”دالة التجزئة” استعمالات أخرى نذكر منها:

  • لكشف البرمجيات الخبيثة، تقارن برامج مكافحة الفيروسات “خلاصات الرسائل” الخاصة بالملفات المراد فحصها بلائحة من “خلاصات الرسائل” التي تخزنها
  •  تتعرّف بعض مواقع التخزين السحابي على “خلاصات الرسائل” الخاصة بالملفّات الخاضعة لقوانين حقوق النشر وتمنع مشاركتها.
  • تحفظ المواقع “خلاصات الرسائل” الناتجة عن استعمال كلمات السر كـ”بيانات مدخلة”.

يجب أخذ احتياطاتكم من بعض المواقع التي تحفظ كلمة السر الخاصة بكم، عوضًا عمّا هو متعارف في حفظ “خلاصات الرسائل” الخاصة بكلمة السر. هذه المواقع لديها القدرة على خرق حساباتكم الأخرى التي استعملتم فيها كلمة السرّ نفسها. لحماية أنفسكم من هذه المواقع، استعملوا برامج حفظ كلمات المرور وتخزينها كـ”Keepass” واستعملوا كلمة سر مختلفة لكل موقع تتسجّلون به. من الدلائل التي تفضح المواقع التي تسجّل كلمة السرّ أنّها ترسلها إليكم في حال طلبتم إعادة تهيئتها. المواقع التي تقوم بإرسال كلمة السرّ إليكم لا تستعمل “دالة التجزئة”  بل تسجّل كلمة السرّ إما من دون تشفير أو معه، وفي الحالتين يكون أمنكم معرضاً للخطر.
تذكّروا أن تستعملوا البرنامج في الرابط التالي ومقارنة “خلاصة الرسالة” التي تم توليدها مع تلك المنشورة للتأكد من عدم التلاعب بالملفّات. للاستعلام عن آخر معايير الأمن الرقمي، زوروا الرابط التالي.