الوحدة الثالثة

الأصفار المتماثلة: تشفير الكتل و DES

Block Ciphers & Data Encryption Standard

رحلة في عالم تشفير الكتل واستكشاف معيار DES التاريخي الذي شكل نقلة نوعية في عالم التشفير المتماثل ومهد الطريق للخوارزميات الحديثة.

6-7 ساعات دراسة 5 أقسام رئيسية 6 أهداف تعليمية
🔐

الأهداف التعليمية للوحدة

فهم بنية عمل تشفير الكتل وآلية معالجة البيانات
تحليل خوارزمية DES ودراسة مكوناتها الأساسية
تقييم قوة DES بناءً على طول المفتاح وعدد الجولات
التعرف على مبادئ تصميم التشفير المتماثل
التمييز بين التشفير المتدفق وتشفير الكتل
فهم مبدأ فايستل وآلية عمل S-boxes

🧱 بنية تشفير الكتل

المفهوم الأساسي

تشفير الكتل يعمل على معالجة البيانات على شكل مجموعات ثابتة الحجم (كتل) بدلاً من معالجة البتات بشكل فردي. كل كتلة تشفر بشكل مستقل أو مرتبط بالكتل السابقة.

الخصائص الرئيسية:
  • حجم كتلة ثابت (64 بت، 128 بت، إلخ)
  • معالجة البيانات بشكل مجمع
  • مناسب لتخزين البيانات والملفات
  • أكثر أماناً من التشفير المتدفق في معظم التطبيقات
بنية تشفير الكتل

رسم توضيحي لمعالجة البيانات في تشفير الكتل

مقارنة: التشفير المتدفق vs تشفير الكتل
المعيار التشفير المتدفق تشفير الكتل
طريقة المعالجة بت واحد في كل مرة مجموعات ثابتة من البيانات
حجم البيانات غير محدد ثابت (64/128/256 بت)
الاستخدام الأمثل الاتصالات اللحظية والوسائط تخزين البيانات والملفات
حساسية الأخطاء عالية - يؤثر على البتات التالية منخفضة - يقتصر على الكتلة الحالية
الأداء أسرع في الأجهزة البسيطة أسرع في الأجهزة المتوازية
أوضاع التشغيل (Modes of Operation)
ECB - Electronic Codebook

كل كتلة تشفر بشكل مستقل - غير آمن للنمط المتكرر

CBC - Cipher Block Chaining

كل كتلة تعتمد على سابقتها - أكثر أماناً

CFB - Cipher Feedback

يحول تشفير الكتل إلى تشفير متدفق

OFB - Output Feedback

يولد تيار مفتاح مستقل عن النص المشفر

ملاحظة هامة

وكالة الأمن القومي NSA توصي بعدم استخدام ECB لأنه يُظهر أنماط البيانات المتكررة!

🔐 معيار تشفير البيانات DES

الخلفية التاريخية

تم تطوير DES بواسطة IBM في السبعينات واعتماده كمعيار فيدرالي أمريكي عام 1977. كان يمثل ثورة في عالم التشفير المتماثل.

1970

IBM تطور خوارزمية Lucifer

1977

اعتماد DES كمعيار فيدرالي

1999

كسر DES في 22 ساعة

2002

اعتماد AES كبديل

المواصفات الفنية
حجم الكتلة

64 بت

حجم المفتاح

56 بت

عدد الجولات

16 جولة

بنية الخوارزمية

فايستل

مكونات DES الأساسية
IP - التبديل الأولي

إعادة ترتيب بتات الكتلة قبل بدء الجولات

S-boxes

8 صناديق استبدال غير خطية للارتباك

P-boxes

جداول النقل لنشر تأثير البتات

مولد المفاتيح

إنشاء 16 مفتاح فرعي من المفتاح الرئيسي

بنية فايستل

تقسيم البيانات إلى L و R لكل جولة

IP⁻¹ - التبديل النهائي

عكس التبديل الأولي للحصول على الناتج

بنية فايستل الشبكية
        L₀ (32-bit)          R₀ (32-bit)
          │                    │
          │                    ├─────────────┐
          │                    │             │
          ▼                    ▼             ▼
         XOR ←────────────── f(R₀, K₁)      K₁
          │                    │             │
          │                    │             │
          ▼                    ▼             │
        L₁ = R₀             R₁ = L₀ ⊕ f(R₀, K₁)
                            

تمثيل مبسط لجولة واحدة في بنية فايستل

🔍 مثال تطبيقي على DES

عملية تشفير DES خطوة بخطوة
الخطوة 1: التبديل الأولي (IP)

إعادة ترتيب البتات الـ 64 وفق جدول IP ثابت:

النص الأصلي: 0123456789ABCDEF (hex)
بعد IP: 14A7D67818CA18AD (مثال)
الخطوة 2: التقسيم إلى L₀ و R₀

تقسيم الكتلة إلى نصفين 32 بت لكل منهما:

L₀
14A7D678
R₀
18CA18AD
الخطوة 3: الجولة الأولى

تطبيق دالة f على R₀ باستخدام المفتاح K₁:

دالة f
توسيع + XOR مع المفتاح + S-boxes + تبديل
المفتاح K₁
133457799BBCDFF1
الخطوة 4: S-boxes (صناديق الاستبدال)

8 صناديق تحويل 6 بت إلى 4 بت:

S₁
S₂
S₃
S₄
S₅
S₆
S₇
S₈
الخطوة 5: التبديل النهائي (IP⁻¹)

بعد 16 جولة، يتم تطبيق التبديل النهائي:

النص المشفر: 85E813540F0AB405 (مثال)
تجربة DES تفاعلية
يمكن تجربة DES كامل عبر: DES Encryption Online Simulator

🛡️ قوة DES وتقييم الأمان

نقاط القوة الأصلية
الارتباك والانتشار

S-boxes توفر ارتباكاً عالياً، وP-boxes توفر انتشاراً جيداً

مقاومة الهجمات المعروفة

صمم لمقاومة التحليل التفاضلي والخطي

البنية القوية

16 جولة توفر أماناً كافياً في زمنه

نقاط الضعف
حجم المفتاح الصغير

56 بت = 2⁵⁶ احتمال ≈ 72 مليون مليون مفتاح

هجوم القوة الغاشمة

يمكن كسره في ساعات بأجهزة حديثة

هجمات متخصصة

هجمات التفاضلية والخطية أصبحت ممكنة

تحليل هجوم القوة الغاشمة
العام الوقت المستغرق التكلفة التقنية
1997 96 يوم مشروع عام أجهزة موزعة
1998 56 ساعة $250,000 جهاز متخصص
1999 22 ساعة $250,000 أجهزة متعددة
2006 9 أيام $10,000 FPGA
2012 ساعات أقل من $1,000 GPU متطور
مقارنة: DES vs AES
العنصر DES AES
سنة الإصدار 1977 2001
بنية الخوارزمية Feistel Substitution–Permutation
حجم الكتلة 64 بت 128 بت
حجم المفتاح 56 بت 128/192/256 بت
عدد الجولات 16 10/12/14
مستوى الأمان منخفض حالياً قوي جداً
الحالة الحالية غير موصى به معيار عالمي

🏗️ مبادئ تصميم تشفير الكتل

بنية فايستل

تقسيم البيانات إلى نصفين وتطبيق دوال غير قابلة للعكس مع إمكانية عكس العملية باستخدام نفس المفاتيح.

الارتباك (Confusion)

إخفاء العلاقة بين المفتاح والنص المشفر باستخدام عمليات غير خطية مثل S-boxes.

الانتشار (Diffusion)

توزيع تأثير بتات النص الأصلي على أكبر عدد ممكن من بتات النص المشفر.

مقاومة الهجمات

التصميم لمقاومة الهجمات التفاضلية والخطية والجبريّة.

تصميم S-Boxes
خصائص S-Boxes الجيدة:
  • غير خطية (لا تتبع نمطاً رياضياً بسيطاً)
  • تكاملية (كل بت إخراج يعتمد على كل بتات الإدخال)
  • مقاومة للهجمات التفاضلية
  • مقاومة للهجمات الخطية
مثال S-Box (مبسط):
الإدخال 000 001 010 011 100 101 110 111
الإخراج 110 010 001 100 011 000 111 101
أنواع الهجمات على تشفير الكتل
الهجوم التفاضلي

دراسة تأثير اختلافات النص الأصلي على النص المشفر

الهجوم الخطي

إيجاد علاقات خطية تقريبية بين النص الأصلي والمشفر

الهجوم الجبري

تمثيل الخوارزمية كنظام معادلات جبرية

هجوم القوة الغاشمة

تجربة جميع المفاتيح الممكنة