Cryptology Academy · درس

اللقاء في المنتصف ومفاضلات الزمن والذاكرة

هاجم double-DES باستخدام MITM وادرس جداول Hellman

الدرس 4 من 413 خطوة

اللقاء في المنتصف ومفاضلات الزمن والذاكرة درس مجاني في Cryptology Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cryptology Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cryptology Academy 4 دروس في المجموع.

هجوم الالتقاء في المنتصف (MITM)

تقسم هجمات MITM الشيفرة إلى نصفين وتهاجم كل نصف على حدة. ينشئ المهاجم جدولًا من أحد الطرفين، ثم يبحث من الطرف الآخر عن تطابق. ويؤدي ذلك إلى خفض تعقيد الهجوم من O(2^{2n}) إلى O(2^n)، مقابل استخدام ذاكرة مقدارها O(2^n).

كسر Double-DES

يطبق Double-DES خوارزمية DES مرتين: C = DES_{K2}(DES_{K1}(P)). مساحة المفاتيح: 2^{112}. هجوم MITM: بالنسبة إلى جميع قيم K1 البالغ عددها 2^{56}، احسب DES_{K1}(P) وخزّن الناتج. وبالنسبة إلى جميع قيم K2 البالغ عددها 2^{56}، احسب DES_{K2}^{-1}(C) وابحث عن الناتج في الجدول. التطابق → مرشح (K1, K2). لا يتطلب الأمر إجمالًا سوى 2^{57} من العمل.

خوارزمية MITM

الخطوة 1: شفّر النص الصريح P باستخدام جميع قيم K1 الممكنة → الجدول T[DES_{K1}(P)] = K1. الخطوة 2: لكل K2، فك تشفير النص المشفر C: v = DES^{-1}_{K2}(C). تحقق مما إذا كان v ∈ T. إذا كانت T[v] = K1 موجودة، فتحقق من (K1, K2) باستخدام زوج ثانٍ من النص الصريح والنص المشفر. من المتوقع وجود تطابق أو تطابقين زائفين؛ فتخلّص منهما.

مقاومة Triple-DES

يستخدم Triple-DES ‏(3DES) ثلاثة مفاتيح K1 وK2 وK3: C = DES_{K3}(DES^{-1}_{K2}(DES_{K1}(P))). يظل MITM قابلًا للتطبيق، ولكن بفاعلية أقل: إذ يخفض 3DES ذو المفتاحين (K3=K1) العمل إلى 2^{112}. أما 3DES ذو المفاتيح الثلاثة، فتوجد له هجمة MITM تتطلب 2^{112} من العمل، وهو ما يفسر لماذا يوفر 3DES أمانًا فعليًا يبلغ نحو 112 بتًا فقط رغم أن مفتاحه يبلغ 168 بتًا.

المقايضة بين الزمن والذاكرة لدى Hellman

اقترح Hellman (عام 1980) إجراء حساب مسبق لجدول من سلاسل (start_point, end_point) لتسريع البحث غير المتصل عن المفاتيح. عند إعطائك تجزئة مستهدفة أو نصًا مشفرًا، ابحث في جدول Hellman عن سلسلة تحتوي عليه. المقايضة: P = N (حاصل ضرب الزمن في الذاكرة = ثابت المساحة). وتشكل هذه الطريقة أساس جداول قوس قزح.

جداول قوس قزح

تحسن جداول قوس قزح (Oechslin، عام 2003) جداول Hellman باستخدام دوال اختزال مختلفة في كل موضع من السلسلة، مما يلغي الإنذارات الكاذبة (السلاسل المندمجة). وهي فعالة لكسر تجزئات كلمات المرور غير المملحة. ويستغرق البحث O(table_size/chain_length) من الزمن.

إحباط جداول قوس قزح باستخدام قيمة ملح

قيمة الملح هي قيمة عشوائية تُضاف إلى بداية كلمة المرور قبل تجزئتها: H(salt||password). وتنتج قيم الملح المختلفة قيم تجزئة مختلفة لكلمة المرور نفسها؛ لذلك تصبح جداول قوس قزح الخاصة بـ "password" عديمة الفائدة إذا استُخدمت قيمة ملح مختلفة. ويجب تخزين قيم الملح إلى جانب قيمة التجزئة.

هجمات MITM على جدول مفاتيح AES

تقسم هجمات MITM على AES-128 (10 جولات) الخوارزمية عند الجولة 5 — إذ تُشفّر الجولات الخمس الأولى إلى الأمام، وتُفك الجولات الخمس الأخيرة إلى الخلف، ثم يحدث الالتقاء في المنتصف. أفضل هجوم معروف هو هجوم biclique، الذي يخفض التعقيد من 2^{128} إلى 2^{126.1}؛ وهو غير عملي، لكنه يوضح أن AES لا يملك هامش أمان في مواجهة الأساليب الشبيهة بـ MITM.

هجوم MITM على الصورة السابقة للتجزئة

بالنسبة إلى تجزئات Merkle-Damgard، يستطيع MITM العثور على صور سابقة أسرع من القوة الغاشمة في بعض البنى. ينشئ الهجوم جدولًا من كتل الرسائل بدءًا من IV، ثم يبحث إلى الخلف انطلاقًا من قيمة التجزئة المستهدفة. أما في مواجهة SHA-256 بجولاته الكاملة، فلا يزال التعقيد نحو 2^{255}، أي لا يوجد تحسن مقارنةً بالقوة الغاشمة.

هجوم التفكيك

يعمم هجوم التفكيك هجوم MITM ليشمل التقسيم إلى r أجزاء. في تقسيم الشيفرة إلى ثلاثة أجزاء، تُشفّر الثلث الأول من الجولات إلى الأمام، ويحدث الالتقاء في منتصف السلسلة، ثم تُفك الشيفرة إلى الخلف في الثلث الأخير. ويتطلب ذلك زمنًا قدره O(2^{n*2/3}) وذاكرة قدرها O(2^{n/3})، وهي مقايضة أكثر توازنًا.

اشتقاق المفاتيح يمنع MITM

يمكن منع هجمات MITM في البروتوكولات من خلال: استخدام مفاتيح طويلة مشتقة بواسطة KDF من كلمات مرور عالية الإنتروبيا (مما يقلل مساحة المفاتيح التي يمكن تعدادها)، أو استخدام رموز مادية (FIDO2) لا يغادر فيها المفتاح الجهاز، أو استخدام المصادقة بالمفتاح العام (إذ لا يوجد سر مشترك يمكن تعداده).

تحقق سريع

ما مستوى الأمان الفعلي لـ Double-DES ‏(مرتان من DES، ومفتاح مدمج بطول 112 بتًا) في مواجهة هجوم MITM؟

مراجعة

تقسم هجمات MITM الشيفرات إلى أنصاف، فتخفض الزمن من 2^{2n} إلى 2^n باستخدام ذاكرة قدرها 2^n. وهي تكسر Double-DES، بينما يخفف 3DES من أثرها لكنه يوفر أمانًا فعليًا قدره 112 بتًا. وتستخدم جداول قوس قزح منطق MITM لكسر كلمات المرور، ويمكن إحباطها باستخدام قيمة ملح. التالي: هجمات التوقيت وهجمات القنوات الجانبية.

البدء مجانًا

تعلم Cryptology Academy مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
67
الدروس
261

الأسئلة الشائعة

هل درس «اللقاء في المنتصف ومفاضلات الزمن والذاكرة» مجاني؟

نعم — نص درس «اللقاء في المنتصف ومفاضلات الزمن والذاكرة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cryptology Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Cryptology Academy 4 دروس في المجموع.

ماذا ستتعلم في «اللقاء في المنتصف ومفاضلات الزمن والذاكرة»؟

هاجم double-DES باستخدام MITM وادرس جداول Hellman تتمرن على Cryptology Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Cryptology Academy؟

لا تُشترط خبرة سابقة. Cryptology Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «اللقاء في المنتصف ومفاضلات الزمن والذاكرة»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Cryptology Academy هذا؟

نعم. كل درس في Cryptology Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. أساسيات التحليل التشفيري التفاضلي
  2. التحليل التشفيري الخطي وجداول التقريب
  3. هجمات أعياد الميلاد والتصادم
  4. اللقاء في المنتصف ومفاضلات الزمن والذاكرة
← العودة إلى Cryptology Academy